级别: 中级 Mu Hyun Kim (kimmh@kr.ibm.com), 高级信息工程师, IBM
2007 年 6 月 19 日 利用分区负载管理器 (Partition Load Manager) 完成服务器资源虚拟化。由于分区负载管理器基于分区负载在各分区之间动态地分配资源,因此传统的资源监控和分析工具变得没有用处。那么,开发人员该如何应对?您可以让分区负载管理器与按需监控系统(On-demand Monitoring System,OMS)工具一起使用。OMS 作为集成组件,提供实时及历史使用率和分配数据。
引言
按需监控系统 (OMS) 工具是一个 Web 应用程序,该程序将 CPU 分配、CPU 使用率以及 CPU 负载数据定时存储到数据库中,从而提供实时及历史数据(包括天、周、月、季和年)。OMS 工具管理多个分区负载管理器组的方式与分区负载管理器服务器的管理方式相同,并且它使用 xlpstat 这一分区负载管理器状态检索命令。
 |
分区负载管理器
对于支持动态逻辑分区 (DLPAR) 的服务器,分区负载管理器可以帮助其最大化 CPU 和内存资源的使用率。IBM 虚拟 I/O 服务器(VIO 服务器)和分区负载管理器是高级 POWER™ 虚拟化硬件特性的组成部分。
|
|
您可以从本文下载此工具。OMS 的功能包括:
- 用于存储 CPU 分配、使用率和负载数据的数据库
- 有关 CPU 分配、使用率和负载的实时数据
- 有关CPU 分配、使用率和负载的历史数据
- 针对某个物理服务器的经过整合的 CPU 使用率数据
优点
OMS 工具和分区负载管理器提供实时及历史资源分配和使用率数据。历史趋势数据为评估投资回报 (ROI)、总体拥有成本 (TCO) 以及下一年的 IT 资源投资计划提供基础信息。
还可以通过检查分配状态来识别不完善或配置错误的分区负载管理器策略。OMS 工具通过提供有关资源分配和使用率的实时及历史图形和平均值、最大值及最小值来实现这一功能。同时提供基于 Web 的界面以利于使用。
工作方式
OMS 工具包括用于存储资源状态的数据库、资源状态更新脚本以及支持用户界面的 Web 应用程序。正如下面的图 1 所示,OMS 工具使用分区负载管理器提供的快照命令 xlpstat 检索分区的资源状态数据。该数据存储在一个轮循数据库(round-robin database,RRD)数据文件中,支持历史资源状态检索。实时及历史数据由 Web 应用程序提供,即运行在 IBM HTTP Server 上的一组 Perl-CGI 脚本。
图 1. OMS 工具
用到以下开放源代码软件:
- 数据库使用 RRD
- Web 服务器和 Web 应用程序分别使用 IBM HTTP Server 和 Perl
下面的图 2 显示托管系统当前的 CPU 状态图形和数据。
图 2. 当前 CPU
所选分区的 CPU 使用率和负载的历史图形在图 3 中显示。
图 3. 所选分区的 CPU 使用率和负载的历史图形
必需的 APAR
由于套接字文件累积问题,在运行 OMS 之前需要应用 APAR IY95155。如果不安装此 APAR,您可能遭遇 RSCT 授权失败,而 PLM 依赖于 RSCT。
安装 OMS
OMS 应该安装在已运行了分区负载管理器服务器的服务器上。
OMS 需要以下软件:
安装 RRDtool
要安装 RRDtool,必须先安装 Libart、Freetype2、Libpng 和 Zlib 库。使用以下命令进行安装:
# rpm -ivh libart_lgpl-2.3.16-1.aix4.3.ppc.rpm
# rpm -ivh freetype2-2.1.7-2.aix5.1.ppc.rpm
# rpm -ivh libpng-1.2.1-6.aix5.1.ppc.rpm
# rpm -ivh zlib-1.2.2-4.aix5.1.ppc.rpm
# rpm -ivh rrdtool-1.2.13-1.perl58.aix5.2.ppc.rpm
|
测试 RRDtool
安装 RRDtool 之后,您需要进行测试以确保它可以正常工作。首先,通过执行以下命令来创建一个 RRD 数据库:
# rrdtool create test.rrd \
--start 920804400 \
DS:speed:COUNTER:600:U:U \
RRA:AVERAGE:0.5:1:24 \
RRA:AVERAGE:0.5:6:10
|
接下来,使用以下命令向 RRD 数据库中添加数据:
# rrdtool update test.rrd 920804700:12345 920805000:12357 920805300:12363
# rrdtool update test.rrd 920805600:12363 920805900:12363 920806200:12373
# rrdtool update test.rrd 920806500:12383 920806800:12393 920807100:12399
# rrdtool update test.rrd 920807400:12405 920807700:12411 920808000:12415
# rrdtool update test.rrd 920808300:12420 920808600:12422 920808900:12423
|
最后,按如下所示检索 RRD 数据库中的数据:
# rrdtool fetch test.rrd AVERAGE --start 920804400 --end 920809200
speed
920804700: nan
920805000: 4.0000000000e-02
920805300: 2.0000000000e-02
920805600: 0.0000000000e+00
920805900: 0.0000000000e+00
920806200: 3.3333333333e-02
920806500: 3.3333333333e-02
920806800: 3.3333333333e-02
920807100: 2.0000000000e-02
920807400: 2.0000000000e-02
920807700: 2.0000000000e-02
920808000: 1.3333333333e-02
920808300: 1.6666666667e-02
920808600: 6.6666666667e-03
920808900: 3.3333333333e-03
920809200: nan
|
安装 IBM HTTP Server
要安装 IBM HTTP Server,必须已安装 Java™ 软件。如果没有安装 Java 软件,请先安装 IBM Java 软件。
# java -jar setup.jar -silent
|
IBM HTTP Server 应该安装在 /usr/HTTPServer 下。
更改 IBM HTTP Server 配置
在更改 IBM HTTP Server 配置之前,必须先创建一个用户帐户。建议使用 oms 作为用户 ID,oms 作为组 ID。然后,按照以下所示修改 /usr/HTTPServer/conf/httpd.conf 中的值:
User oms
Group nobody
DocumentRoot "/usr/local/plm/htdocs"
<Directory "/usr/local/plm/htdocs">
Options Indexes FollowSymLinks MultiViews ExecCGI Includes
</Directory>
AddHandler cgi-script .cgi .pl
AddHandler server-parsed .html
|
准备运行 OMS
需要复制 OMS 文件集。要把 OMS 文件放在 /usr/local/plm 目录中。这些文件用于 OMS 数据库管理、OMS Web 应用程序以及 OMS 配置。应该以 oms 用户帐户运行以下命令。
# cd /usr/local
# tar xvf plm-monitoring-tool.tar
|
提取的目录和文件的所有者和组应该是 oms。如果不是,则使用 chown 命令更改所有权。
确保为这些文件设置适当的权限,如下所示:
- *.html 至少为 644
- *.pl 至少为 755
- 目录至少为 755
配置 OMS
要运行 OMS,OMS 配置文件 (/usr/local/plm/conf/grouplist.cfg) 应该包含每个分区负载管理器组的组名、分区负载管理器策略文件名、CPU 总数以及总内存数 (MB)。
例如,OMS 配置文件类似于下面所示内容:
Group_svr3 policy.test 16 131072
|
创建 RRD 数据库文件
首先,此操作需要根权限。创建 RRD 文件之后,将 RRD 文件的所有者和组更改为 oms。
# /usr/local/plm/bin/oms-create-rrd.pl
|
更改徽标和 OMS 标题
使用您公司的徽标图像文件替换 /usr/local/plm/htdocs/images/client-logo.gif,建议尺寸为 100x35。可以在 /usr/local/plm/htdocs/header.html 中修改抬头标题。
将 OMS 更新脚本注册到根的 cron 表中
应该使用 crontab -e 命令将 OMS 更新脚本添加到根的 cron 表中,如下所示:
####### OMS (PLM Monitoring System) data feeding every minute
0,5,10,15,20,25,30,35,40,45,50,55 * * * * * /usr/local/plm/bin/oms-update.pl 2>/dev/null
|
启动和停止 OMS
要启动 OMS,只需要启动 IBM HTTP Server。启动 IBM HTTP Server 之后,可以使用 Web 浏览器访问 OMS, 如下所示:
# /usr/HTTPServer/bin/apachectl start
|
要停止 OMS,需要停止 IBM HTTP Server,如下所示:
# /usr/HTTPServer/bin/apachectl stop
|
如果想停止使用 OMS 更新脚本,那么注释掉 cron 条目。
局限性
不支持增加或删除分区。增加或删除分区的唯一方法是使用 oms-create-rrd.pl 脚本重新创建 OMS 数据库,但是所有的数据将会丢失。
下载 | 描述 | 名字 | 大小 | 下载方法 |
|---|
| OMS tool | plm-monitoring-tool.tar | 14KB | HTTP |
|---|
参考资料 学习
获得产品和技术
-
IBM 试用软件:使用 IBM 试用软件开发您的下一个项目,可直接从 developerWorks 下载这些试用软件。
讨论
关于作者  | |  | Mu Hyun Kim 是 IBM Korea 的高级信息工程师。Mu Hyun 为现场工程师提供 AIX 和 Java 问题支持。在加入 IBM 之前,Mu Hyun 担任安全顾问,从事 IT 审核、渗透测试和事故调查方面的工作,并且有四年的安全策略开发经验。您可以通过 kimmh@kr.ibm.com 与Mu Hyun 联系。 |
对本文的评价
|