存档

‘主机管理’ 分类的存档

几个系统监控和商业智能方面的小新闻

2009年4月2日 1 条评论

先播报一则新闻:

开源系统监控的四小厂商GroundWork 最近有两个动作,一个是发布的5.3 版本,其中有一个新功能是集成了birt , 另一个是与开源BI 厂商Pentaho 合作推出新的Enterprise 版,从而使groundwork 是第二个具有商业智能监控和分析能力的系统监控系统. 这个是面向数据中心解决方案最重要的一步.

 

GroundWork 的产品本身很杂,集成了各种开源系统监控的产品,nagios, cacti ,Ganglia  ,rrdtool , 不知道到底其核心语言是什么,管理控制台我猜是php 的(没用过), 看得出来他集成birt 就是为了扩展其分析数据的能力,rrdtool 只适合画跟时间有关的线性图或区域图 , 而且rrdtool 产生的原因就是php 下面没有一个推的上台面的报表产品.

Actuate 在09 年2 月宣布birt 已经可以成功集成在php 环境下了,现在历数一下各个事件 (又重新废话一遍占字数)

管理软件的IBM Tivoli 很早就开始集成了birt 的分析功能,这个在birt 社区上一直都作为一个成功案例,IBM 另外的重量级产品Rational 家族的多款产品也都集成了birt. 像是需求分析的Maximo , 建模的Rational 家族的多款产品. 毕竟birt 核心开发也一直都有IBM 的贡献.

Cisco 在09 年2月份也宣布其安全访问控制服务器Web 界面使用birt 来做报表分析,虽然这个产品不是主机系统监控的,但是性质是一样的. (我blog 以前也提到过了http://actuatechina.com/news_cisco.php)

现在Groundwork 也宣布其集成了birt 就是为了加强在数据分析上的能力,10几台主机就别谈什么数据分析了,这个主要还是面向数据中心的大规模分析和预测. 尤其是他跟开源领导厂商pentaho 合作推enterprise 版,这个估计还是多多少少受到了09 年2月份hyperic 跟jaspersoft 合作enterprise 版,他们也是主打面向数据中心的.( 开源BI 就两个领导, 其他都不能面向生产环境使用的).

另外一个groundwork 值得注意的小细节是他集成了WMI (Windows Management Instrumentation) , 这个在监控系统中非常之少见,我唯一听到过的一个案例是myspace 用wmi , myspace 有4500 台windows IIS + 1200 windows cache server + 500 sql server , 他们是自己开发的C# 监控系统,查询语言就是使用的类似的sql 语法的(c# 里面的).

Hyperic 使用的是jaspersoft 的jasperreport 作为其分析报表, 我个人倒是很高兴看到两个开源厂商跟另外两个开源厂商掐着脖子, 有竞争,有应用市场才能发展壮大. Go Tigerrrrrr!!!

另外一个不得不提的是hyperic 在一开始设计的时候其架构就是面向数据中心的(其他都不是,别听厂商乱忽悠), 由于其使用的是java 技术,这比Groundwork 这种混合技术的厂商还是具有先天优势的. 我之前也写过一篇关于hyerpic mysql scaling 的案例将它的数据库层面应用,你就可以看出他的设计是真正的面向数据中心监控的海量监控数据.

Ganglia 虽然在很多面向集群的管理系统中使用( 或者使用网上的说法叫高端grid ) , 但面向数据中心或者说大规模主机方面系统监控还是有很多重要的特性Ganglia 不可能一个人搞定. 而引入商业智能分析则已经不能算是技术上的噱头了,实际上是白菜级选择,尤其面对很重要的性能管理,问题归档,预测 方面已经不是靠单打独斗或高超的运维技巧能搞定的了.

 

小道消息:

今天淘宝停机1小时,又让江枫同学血压提高了不少,希望淘宝的同学不建议我提到这个小道消息,国内的团队要加油了,随便推荐一个运维的站点 http://www.linuxtone.org/html/bbs.html  (也是twitter 上别人推荐的)

 

另一小道消息:

昨天愚人节汇报: 在各处散播谣言,具体有没有人被骗不知道,最后infoq 发表quickshort 算法有安全漏洞被骗,不过那个url 给的挺假,随便看了郭德纲的愚人节笑话(好老了), 之后跑到 http://linuxtoy.org/ 散布谣言centos 5.3因为oracle 收购red hat 可能成为其最后一个版本,骗到了几个.

 

最后一则小道消息:

期待了很久的钢之炼金术士4月要开播了,秀逗魔导士4也是很精彩的,喜欢两部动画片的同学不要错过了,偶尔看一下放松一下,免得过劳死,当白领炮灰团.

数据中心主机管理和商业智能

2009年3月14日 没有评论

上篇文章中主要讨论了大型数据中心的系统监控问题, 主要是在OEM,grid control 和报表展现需求方面, 这一篇则讨论另外一个问题:数据中心主机管理和商业智能.

两个开源的商业智能厂商jaspersoft 和hyperic 已经推出一种新的合作产品Hyperic IQ , 除去传统的Hyperic 可以监视的各种设备和程序以外,Hyperic IQ 主要强调的是在收集到监控数据之后,利用jaspersoft 的分析能力,对主机的各种状态进行分析,比如像是:

用图表显示多台主机的JVM 内存状态,包括使用内存,空闲内存等.

用图表显示多台主机的可用性状态,并按照可用性从低到高排序.

列出目前最繁忙的主机,以CPU和内存为度量.

列出目前数据库最繁忙或JVM 最繁忙的主机.

分析出所有主机的历史磁盘增长情况. 所有主机的

报警次数最多的主机或是最紧急报警次数最多的主机,

它对每一个报表的分析度量都是可以定制的(使用UI 界面控制或是修改jasperreport 报表模板), 并且你可以添加任意的过滤条件或度量,甚至你可以使用ad-hoc query 完全的按照自己的分析需求来从零构建分析报表.并且还有各种Dashboard 可以一次性监控多台主机的多个设备或程序. 它的插件则可以扩展到监控任意设备和程序.

 

iq-screenshot1-large

jvm 的内存报告

 

dba-dashboard

dba 的dashboard

 

iq-screenshot2-large

可用性的报告

 

problem-resources

快速查看出问题的设备或程序,右边有红点的就是有问题的设备或程序

 

report-center

任意定制的报表

 

官方上的原介绍:

Report on any metrics, any resources, any data center. Hyperic IQ
provides comprehensive and exible access to HQ data. Any data in the
HQ database is available, for presentation in whatever way meets your
needs or those of the business. Create tabular or crosstab reports. Analyze
and communicate using powerful visualization. Hyperic IQ supports a
variety of chart types, including gauges, multi-metric line charts, bar
graphs, and stacked charts. Deliver any report in the format that makes the
data most useable, whether PDF, Excel, Rich Text Format, comma-separated
values, or Flash.

Report on compliance to service level commitments. Use Hyperic IQ
to analyze and report on metrics that measure results against service level
objectives, so you can make decisions and set priorities in the context of
planned and actual service levels. Availability gauges for resource groups
make service level issues blindingly obvious; from there you can drill-down
to uptime/downtime reports for problem resources.

 

Spend your time producing results instead of reporting them.
Spend less time reporting on what you do and more time managing your
infrastructure. Hyperic IQ gives the business easy access to performance
and service level data, so the operations team can concentrate on
management and monitoring. Hyperic IQ’s built-in reports provide
immediate value out-of-the-box. For unique reporting needs, the Ad Hoc
Query Editor allows any user to build reports from scratch with a friendly
drag and drop interface that hides database complexity.

 

Expose and deliver systems intelligence that’s easy to access and
use. With Hyperic IQ, you can keep stake-holders inside and outside of IT
informed, and up-to-date. Hyperic IQ considers the convenience of the
information consumer: a user doesn’t have to take the scenic route to
accomplish a goal.
An IT manager can run favorite reports directly from the HQ
Dashboard.
A business manager can run reports and queries from the Hyperic IQ
user interface, and drill-down to HQ indicator and monitoring pages,
as appropriate.
An executive checking email on a BlackBerry will see the latest weekly,
monthly, or quarterly roll-up reports delivered right on schedule.

 

 

 

参考资料

http://www.hyperic.com/products/enterprise-systems-monitoring.html

hyperic 企业版的介绍

 

http://www.hyperic.com/products/application-performance-intelligence.html

hyperic IQ 版的介绍

 

http://www.hyperic.com/products/mysql-monitoring.html

hyperic mysql 插件的详细功能

 

http://www.hyperic.com/products/oracle-monitoring.html

hyperic oracle 插件的详细功能

 

http://www.hyperic.com/support/systems-monitoring-resources.html

http://www.hyperic.com/demo/monitoring-webinars.html

观看hyperic 的flash demo 是最快了解hyperic 的方法.

 

http://www.jaspersoft.com/jaspersoft_and_hyperic_provide.html?type=email&media=newsletter&campaign=Q1-09_Corporate_Newsletter&mtcCampaign=7571

hyperic 和jaspersoft 的合作声明

分类: 主机管理 标签:

主机管理和报表应用

2009年3月11日 没有评论

oracle 从10g 开始已经在OEM 上下了很大功夫,使得管理员可以从web 界面上非常容易的就了解到系统运行的各种参数,cpu ,内存,磁盘, 再加上awr 和ash 报告的, 使得管理员不用在一台一台主机的运行statspack 报告,然后解读. 而它的grid control 则不仅支持了解oracle database 的运行情况,更加可以了解各种运行程序和多主机的信息, 比如Weblogic 的运行情况,e-business suite 的运行情况,OBIEE 的运行情况, 或是另外一台或多台主机的运行情况 , 能够从一个WEB界面上了解这些信息可以很大程度上帮助管理员提高工作效率.

    普通的服务器监控软件比如开源的hyperic , nagios 都可以对操作系统的相关信息进行收集,cpu,内存,进程,文件系统,网络信息. 另外就是对某些服务进行监控,对weblogic , tomcat , smtp , apache ,database 进行检查其服务有没有掉线,如果掉线了就赶紧发邮件或短信, 但是对于服务的内部参数并不了解, weblogic 的java 虚拟机大小,连接池状态,环境变量等, oracle的内部报告awr 等。 而在这方面当然还是要由专业厂商来开发,oracle 的grid control , mysql enterprise monitor 都是可以针对自家产品生产出详细的报告.

    一台服务器这样很好,两台也很好,但是随着服务器管理数量上升,尤其是达到了上千台甚至上万台,这时候在web 管理界面上就需要更好的操作方式,能够在一个页面上展示多台主机的各方面信息才能真正的帮助到管理员. 这个时候就需要定制.

oem2

Grid Control 的页面

上图就是grid control 在一个页面上显示的ash 信息, 但是管理员往往希望在这个界面上做更多的定制,比如一个界面上只显示CPU,System IO , 或是将多个主机的信息放在一个页面里面,或者将不同主机,不同时间段的ASH 的信息通过一个图表展示出来用来做对比.

OEM 可以通过WEB界面管理oracle 数据库,但是并不是每一个数据库都需要安装OEM , 那会耗费更多的cpu,内存,磁盘, 而Grid Control 最大的特色就是通过一个界面可以管理无限多的主机,无论是oracle, OBIEE, SAP , E-Business Suite , Weblogic , Tomcat 等等. 而它管理oracle 并不需要每一台主机上都运行J2EE容器来显示数据库信息, 只需要安装一个grid control agent 就够了,需要的信息agent 发送到中央的grid control 就可以了.

oem_architecture

grid control 工作示意图

 

而报表应用是主机管理一个最重要最重要的方面, 制作报表的功能强弱,交互性的强弱,展示方式的强弱,定制性的强弱,都可以决定主机管理方式的好坏和管理员的工作负载, 不少的主机管理软件都是以perl,python 等语言来收集底层的信息, 管理台的界面则是以cgi, php 等语言来做, 但是php,cgi ,python 等语言并没有一个强力的可以展示报表的框架,很多都是很底层的语言API 来做,这在很大程度上限制了展示方式的强弱和功能的定制化,可以说并没有给管理员一个杀手级的应用.

而在主机管理里面的报表应用我则推荐使用BIRT 来做.

暂且省略在google 上可以搜索到的关于birt 的各种优势,为什么选择BIRT , 不妨先看另一则新闻:


思科公司Cisco计划在其网络设备的安全访问控制服务器(ACS)的Web界面中集成安讯开源产品BIRT。


   ACS是一项标志性的网络技术,它能将认证授权、用户与管理员访问以及策略控制结合在一起,从而有效简化用户管理。


   安讯公司Actuate于日前公布消息称,其旗下的Eclipse基金会项目BIRT将被用于Cisco安全访问控制服务器(Secure Access Control Server)的Web界面中,为网络监控与规划提供带有丰富交互性的数据。此外,该产品还被IT人员用作即席查询与报表设计工具。


   Cisco ACS采用BIRT的一大优势就是可以让用户可以轻松获取网络访问与设备管理的事务级系统活动的汇总信息。其功能还包括:网络监控与规划;获取问题检测与解决的信息;在对异常操作或趋势的早期侦测方面,用户还可基于阀值来设定警告并为授权/认证动作设置触发器。


   “直接嵌入到ACS中的安讯报表技术,使网络管理员可以监控并分析什么人、什么时候访问了网络,”Cisco工程部经理Neil Mehta在本周发布的一次声明中称,“以前,用户如果想要监控网络访问信息的话,是必须先从ACS中获取原始数据,并且自己制作报表的。” 

Cisco 是在网络设备制造上最大的公司了,其选择BIRT 作为WEB管理控制台的报表应用我想应该很能说明问题了,以Cisco 需要管理的设备数之巨大,数据量之巨大,管理复杂度之巨大,相信已经是毋庸置疑的,而其管理网络设备的应用方式跟主机管理基本上都是面对一样的问题.

我在之前的 从php 调用birt (http://www.gemini5201314.net/?p=1131) 的文章已经提到如果主机管理的管理控制台是使用php,python 之类的语言已经可以使用birt 来做报表应用了, 应该对不少管理软件的报表应用加强了不少. 而使用java 开发的管理软件像是grid control , hyperic 则在这方面早已拥有天生优势了.

 

收集数据

如何收集主机管理数据,能够收集到哪些数据,收集数据的方式,数据储存的方式则是另一个摆在大集群主机管理管理员面前的难题. 使用grid control 或是hyperic 的工作方式, 在每台服务器上部署agent , agent 定时收集需要收集的数据,然后发送给中央管理控制台,中央管理控制台把这些数据储存在数据库中,中央控制台随时都可以按照管理员要求的方式来读取这些数据以了解服务器实时的信息.

像是普通的cpu,io,磁盘的各种信息自然都不在话下,而grid control 对于展示ash , awr, top session 等oracle DBA 最关心的信息使用图表的方式对于DBA  快速理解这些信息提供了不少的方便,另外像是每个tablespace 使用率,library cache hit ratio 等各种信息都可以在grid control 里面方便的找到.

而hyperic agent 的sigar api 和oracle 插件也可以收集到很多oracle 相关的信息. 象是Physical Reads/Writes , Logical Reads/Writes , User Commits , CPU Total Time , CPU Time Parse , Cache Hit Ratio , Redo Size Generated, Sorts Rows , Disk Space Used 等许多oracle 重要的信息, 有了这些信息你同样可以制造出自己的ash , awr 统计信息.

 

展现方式

使用一个页面展现有限的信息已经不能满足主机数量急剧上升的管理需要, 能在一个页面上展现每台主机更多的信息,或者一个页面上展现多台主机的信息才是管理员真正需要的.

SpotlightOnUnix

Quest 的Spotlight on Unix

上图很漂亮不是吗,能通过非常简单快速的方式展示多台主机的这种信息则会更快的帮助管理员了解系统.

而在成功收集了数据之后,就会有一些新的问题更容易解决了:

列出目前所有主机中工作负载最高的10个, 显示其ash. 然后你在下转到top session. top sql.

显示过去3个月中,physical reads/writes , logical reads/writes 最高的10 台主机.

把不同的主机不同时间段的工作负载进行对比.

显示过去3个月中,磁盘增长率最高的机组,或是目前磁盘使用率达到70%以上的主机,

而这些信息如果没法收集到一个数据库中,就没有办法得出这些报表. 而得到了这些报表之后,管理方式上就会产生一些差异. 比如你能了解下午3点是一个用户高峰,那你统计了工作负载信息最高的主机之后,你自然知道了你的程序在那些应用上繁忙,针对那些繁忙的程序,繁忙的数据库进行优化就行了. 那些经常性使用率不高的主机则可以多一些应用,对主机资源上也更好优化.

再比如磁盘使用上,你能够快速的得到所有的磁盘使用率,使用增长率,你就自然知道了那些磁盘可能会空间不够,并且你知道磁盘历史的使用增长率,你可以预测到什么时间差不多该给哪些磁盘加容量了, 可以从一定程度上避免被动的等到监控软件发现磁盘到达阈值而报警. 主动预测和被动报警在管理上则是完全不一样的.

 

Grid Control 虽然已经在大规模主机管理上已经走在领导位置,但是各个管理员,各个公司的环境,每个人的使用习惯都是不一样的,在主机管理上是需要越来越多的定制和开发,尤其是报表的分析型需求会越来越多, 展现方式会越来越动态. 相信oracle以后会让开发人员如何在其平台上定制方面下功夫,至少这是一个方向,其他各个服务器监控软件开发商无论是商业的还是开源的都会在展现需求上下功夫,尤其是如何让客户进行定制化的自己开发作为发展方向.

 

本文图片都不是自己截的,spotlight on unix 来自eygle.com , grid control 来自dba story

 

参考资料:

http://www.eygle.com/archives/2008/12/dba20_oem_grid_control.html

eygle 谈dba 2.0 和grid control 的使用

 

http://www.dbform.com/html/2008/547.html

kamus 谈oem 在税务的应用

 

http://www.ixdba.com/html/y2008/m12/297-oracle-9i-after-performance.html

dba story 谈grid control

 

http://www.rittmanmead.com/2008/11/28/thoughts-on-obiee-performance-optimization-diagnostics/

mark rittman 谈grid control 管理OBIEE

 

http://www.actuatechina.com/news_cisco.php

http://www.intelligententerprise.com/channels/performance_management/showArticle.jhtml?articleID=213403848

Cisco 将birt 加入其管理控制台以满足报表数据分析需求

 

http://www.hyperic.com/products/sigar.html

http://www.hyperic.com/products/oracle-monitoring.html

hyperic 的sigar api和 oracle 插件的功能