分类: LINUX
2008-10-09 22:16:39
优秀的技术架构是产品的灵魂和核心,也是产品具有良好的可扩展性的基础,摩卡软件重视架构设计,邀请了一批具有国际设计水平的架构师,他们曾在美国硅谷等任职,具有丰富的产品架构设计经验。
产品架构概述
Mocha BSM的技术架构拥有以下几个特性:
基于Java 2 Enterprise Edition(J2EE)开发,符合现在受欢迎的主流技术。Mocha BSM可以在不同的Java容器上运行,包括Tomcat,Weblogic或者WebSphere。
由于Java能轻易支持跨平台,Mocha BSM可以在很多不同平台运行,这包括:
Windows 2003 Server
AIX 5.2、5.3
Solaris 9、10
Red Hat Enterprise Linux AS 4、CentOS 4
采用标准Java Database Connectivity (JDBC), 所以支持广大的数据库:
MySQL 5
Oracle 9i、10g
MS SQL 2005
对标准协议的支持:
HTTP、HTTPS
JMX
SNMP
JDBC
Telnet、SSH、WMI架构设计原则
摩卡产品的设计初衷都是绕着3P的原则。
这“3P”’即是
1.1 Personal 人性化
产品的界面设计必须人性化,达到“傻瓜式”用法,用户可以不经过培训就能会用。在这方面我们花了很多心思与精力,关键界面的设计都历经了数月才能最终定稿,并在后续版本不停地改进。我们在人性化方面具有以下特点:
提供可视化管理,“化繁为简”,使IT管理员快速掌握主机和应用的管理工作
‘一键式’基于经验值的策略配置
自动关联事件,避免海底捞针式的查找
图与表结合,清晰的指标展现
使用上表(指标)下图方式
1.2 Product 产品化
一个好的IT运维管理产品必须满足以下条件:
产品架构可扩展,能支持更多的资源
产品架构健壮,不轻易宕机
产品可配置性强,不需要开发
产品模块化,模块之间存在松耦合的关系
产品重视安全
产品容易安装、部署
除了满足了以上对产品严格的要求以外,Mocha BSM特别重视以下的‘三高’
高可扩展
Mocha BSM产品的初衷设计就是支持几千台至上万台的被管理资源。为了达到高可扩展的目的,我们从几方面入手:
可扩展模块
当一个Mocha BSM Server在数量上遇到瓶颈后,能够通过增加一个Distributed Monitor Server(DMS)来突破数量和网络方面的限制。
Portal响应时间
当监控数量大量增加以后,必须处理和展现的数据也大量增加,对Portal的压力也更加大。所以我们Portal的应用代码都必须经过压力测试,在数千个监控资源,我们给Portal定的响应时间是5-8秒。
数据采集与处理
当监控数量大量增加以后,需要采集的数据也大量增加。往往在这种情况地下,会出现以下情况:
图表展现断点,数据采集不上来
数据延迟,该在某时间点采集的数据被延迟了
由于采集的数据量很大,导致内存溢出
在这方面,我们在架构设计以及优化上做了很多工作,包括以下:
把数据采集的引擎分为数个,而不是单靠一个,所以一旦发生某些特殊问题,一个数据引擎的宕机不会影响其他引擎,导致服务器不可用。
代码进行大量优化,提高采集数据的性能。
进行数个月的持久性测试,确保产品即使在大的采集数据底下,也能无误运行数个月
高可配置
监控软件经常需要对新的或者新版本的被监控应用提供支持,所以支持的响应速度很重要。产品的设计初衷是通过配置来达到快速开发的要求(新应用支持、二次开发):
通过XML配置来描述需要采集的性能、可用性、配置指标
配置取值方式
配置需要的页面和Javascript
自动生成页面和部署资源模型
以前3个月的新应用支持开发变成今天的3天。