使用 IBM Systems Director 6.1 实现 AIX 系统资源的远程集中管理
http://www.ibm.com/developerworks/cn/aix/library/0903_zhoupeng_systemdirector/
|
级别: 初级
周 鹏 (pzhou2005@hotmail.com ), 软件工程师, IBM
李 永超 (liyongc@cn.ibm.com ), 软件工程师, IBM
2009 年 3 月 26 日
本文介绍了如何使用 IBM Systems Director 6.1 来远程集中式的监视和管理 AIX 系统资源。通过这篇文章,读者可以了解如何使用 "IBM Systems Director" 来实现 AIX 的系统管理,如何使用监控器 (Monitors) 和阀值 (Thresholds) 来监视 AIX 系统资源状态,以及如何使用自动化计划 (Automation Plans) 来实现异常状态的自动响应。<!-- START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --> <!-- END RESERVED FOR FUTURE USE INCLUDE FILES-->
IBM System Director 6.1 是 IBM 在 2008 年 10 月 7 号发布的一款平台管理软件。它有着很大的平台覆盖率,不仅支持对包括 AIX、Linux、Windows、Vmware 等多种主流操作系统的管理,还支持对 IBM 以及某些非 IBM 硬件平台的管理。但是平台覆盖率的扩大也带来了使用复杂度的上升。尽管 Director 6.1 提供的基于 Web 的、接口一致化的图形界面简化了系统管理员许多的日常工作,但是对于初学者而言,如何在繁多的选项中快速定位所需的功能,仍然是比较困难的工作。本文通过 一些简单的实例,介绍了如何使用 Director 监视和管理操作系统资源。由于篇幅限制,文章只讨论 IBM AIX 系统。
IBM System Director 6.1 的结构如下图所示分为三个部分:Management Server、Managed System 和 Web Interface。Management Server,也就是安装了 Director Server 的服务器是整个系统的核心:一方面,Management Server 管理着的所有 Managed System;另一方面,它以 Web Service 的方式,提供给系统管理员 Web 方式的管理界面。为了充分开发 Management Server 的功能,需要在 Managed System 上安装 Director Agent。
|
Director 6.1 的部署包括 Director Server 的安装和 Director Agent 的安装。Director Agent 是支持自动化批量安装的,但本文只介绍手工安装的方法。Director Agent 和 Director Server 的安装程序包都可以从 IBM 官方网站免费 下载 。 在 AIX 系统上安装这两个程序包都非常简单。首先,在 Management Server 端解压 "IBM Systems Director 6.1 Management Servers",然后执行解压目录下的安装脚本 "dirinstall.server"。接着,在 Managed System 端解压 "IBM Systems Director 6.1 Agents for Manual Deployment",然后执行解压目录下的脚本 "dir6.1.0.0_commonagent_aix.sh"。安装完成后,日志保存在 "/var/log/dirinst.log",用户可以检查该日志来对安装中出现的错误做基本的诊断。
Director Server 安装完成后会提示用户用脚本 "configAgtMgr.sh" 来对 Agent Manager 进行配置。Agent Manager 是 Director Server 用来管理 Director Agent 的组件。脚本 "configAgtMgr.sh" 可以创建 Agent Manager 所用的账号以及密码。但这些设置和本文关系不大,用户可以使用 Management Server 的 root 账号和密码即可完成设置。例如,下面的例子用的就是 root 账号以及其密码 "abcdefg"。
-bash-3.00# /opt/ibm/director/bin/configAgtMgr.sh -user root \ -agtmgrpass abcdefg \ -regpass abcdefg |
配置完毕后,用户就可以使用脚本 "smstart" 启动 Director Server 了。启动过程中,用户可以使用 'smstatus' 来检查当前的状态。Director Agent 安装完成后会自行配置启动,因此无需另述。
-bash-3.00# /opt/ibm/director/bin/smstart The starting process may take a while. Please use smstatus ... -bash-3.00# /opt/ibm/director/bin/smstatus -r Inactive Starting Active |
Management Server 要管理 Managed System,除了要完成前面的安装工作以外,还必须获得 Director Agent 的访问授权。具体分为两个步骤:Managed System 的发现 (System Discovery) 以及访问授权 (Request Access)。下面是具体的操作步骤,假设 Management Server 的 IP 地址是 "9.125.53.92",Managed System 的 IP 地址是 "9.125.53.98"。首先,系统管理员使用 Management Server 的 root 账号登陆到管理界面 "https://9.125.53.92:8422/ibm/console"。如下图所示,选择 [Inventory > System Discovery],通过 IP 地址搜索到 Managed System。搜索完成后,Managed System 处于 "No access" 状态。
搜索到 Managed System 后,点击 "No access" 标签,进入页面 "Request Access",输入 Managed System 的 root 账号和密码,点击按钮 "Request Access",若干秒钟后,就可以完成操作。从下图,用户可以观察到 Managed System 的状态变化成 "OK"。授权完成后,用户就可以方便地配置和管理 Managed System,如文件传输、远程命令和资源管理等等,而无需再记忆 Managed System 的密码,这种 "single sign-on capability" 的设计对同时管理数十台甚至更多机器的管理员来说,无疑是十分有意义的。
使用 "IBM Systems Director Console for AIX"
为了帮助用户更方便的远程管理 AIX,Director 包含有一个 "IBM Systems Director Console for AIX"。借助这个 Web Console,用户可以执行用户账号管理、设备管理等任务 (Task),或是直接使用熟悉的 SMIT 工具。下面介绍如何进入这个 Web Console。假设用户已经完成了上述的 "Director 的部署 "。 用户通过 [Navigate Resources > Groups > All Operating Systems] 找到 Managed System "9.125.53.98"。如下图所示,在表格中用右键选取该系统,在弹出菜单中选择 [AIX Management > System Management Interface Tool(SMIT)] 就可以进入到 "IBM Systems Director Console for AIX"。需要补充的是,使用 "IBM Systems Director Console for AIX",并不需要在 Managed System 上安装 Director Agent。
图 5. IBM Systems Director Console for AIX - 1
下图就是 Director 提供的 SMIT 界面。该界面与 AIX 自带的 SMIT 是一致的,所以就不再细述。
图 6. IBM Systems Director Console for AIX - 2
|
|
监视 AIX 系统资源
Director 6.1 的资源管理和自动化响应是需要在 Managed System 上安装 Director Agent 的。对于不同的操作系统,尽管被管理的资源不尽相同,但是都包括以下几种组件:
- Monitor: Monitor 是被用来监视某项特定资源并且采集状态信息的工具,包括 Process Monitor、Common Monitor 和 CIM Common Monitor 等。Process Monitor 可以用来监视指定进程的启停、超时以及异常退出。Common Monitor 可以监视常见的系统资源如内存、虚存、页面空间、TCP 连接、CPU 占用率等。
- Threshold: Threshold 被用来与 Monitor 采集的状态信息进行比较。每个 Monitor 对应四个 Thresholds:High Critical、High Warning、Low Warning、Low Critical。阀值 High Critical 表示当状态信息高于该阀值时,产生一个严重等级 (Severity) 为 Critical 的 Event。阀值 High Warning 应该比 High Critical 要低,表示当状态信息高于它时,产生一个严重等级为 Warning 的 Event。Low Warning 和 Low Critical 正好相反。当状态信息低于它们时,分别产生严重等级为 Warning 和 Critical 的 Event。
- Event Filter: Event Filter 被用来对所有的 Event,包括 Monitor 产生的 Event,进行分流。从而使系统管理员可以制定自动响应策略,对不同类型的 Event 做相应的处理。Event Filter 支持的过滤条件包括事件的类型 (Event Type)、严重等级、发生时间 (Day and Time)、事件的发送者 (Sender Name) 等。
- Event Action: Event Action 定义了一个响应动作。动作即可以是发送 email、写入 log,也可以是在产生事件的系统上执行任意的程序等等。
- Automation Plan: Automation Plan 对 Event Filter 和 Event Action 起到一个结合的作用。系统管理员通过 Automation Plan 将某个 Event Filter 与一个或多个 Event Actions 关联。系统管理员还可以在 Automation Plan 里指定 Automation Plan 影响的系统 (Target) 以及有效的时间 (Time Range)。这两个条件与 Event Filter 的发生时间 (Day and Time)、事件的发送者 (Sender Name) 有重合的部分。但是将这两个条件放在 Automation Plan 可以提高 Event Filter 的可复用性。
为了加深用户对 Director 6.1 资源管理和自动化计划的理解。下面通过一个实例,来解释如何使用 Monitor、Threshold 以及 Auotmation Plan 来实现对 Managed System '9.125.53.91' 上进程 "MYPROCESS" 和页面空间 (Paging Space) 的监视,并在 "MYPROCESS" 停止时或是页面空间使用率大于 40% 时,调用在 Managed System '9.125.53.91' 上 "/home/test" 目录下的用户自定义的脚本程序 "MyMaint.sh"。
首先,系统管理员可以需要打开 'Process Monitor' 窗口。用户可以在 [Navigate Resources > Groups > All Operating Systems] 找到 Managed System '9.125.53.91',右键选中后,在弹出菜单里选择 'Process Monitors'。
窗口 "Process Monitor" 打开后,为了监视进程 "MYPROCESS" 的停止动作,用户需要在窗口菜单里选择 [Edit > New Row] 创建一个新的进程监视器。然后在文本域 "Program Name" 里填入程序名 "MYPROCESS",并在选中复选框 'Stop' 来监视该进程的停止事件。保存退出就完成了该操作。
Director 6.1 对系统资源(内存使用率,硬盘使用率,CPU 使用率等等)提供了常用监视器(Common Monitor),以方便用户对资源的监控,所以这里不需要手工创建 Moniotor。用户有两种方式来选择对特定系统资源 "Paging Space Used" 的监控,方法一:在 [Navigate Resources > Groups > All Operating Systems] 找到 Managed System "9.125.53.91",右键选中后,在弹出菜单里选择 "Monitors" 以跳转到 "Monitor View" 视图。方法二:在 [System Status and Health >Monitors] 视图中点击 Browser 选择 Managed System "9.125.53.91",然后选中(Common Monitor)并点击“Show Monitors”按钮,同样会跳转到 "Monitor View" 视图。
图 10. Common Monitor - 1
然后,系统管理员在 Common Monitors 里就可以找到 "Paging Space Used" 了。用户可以在该 Monitor 的属性页面查到该 Monitor 的程序路径 (Program Path) 为 [Director Agent > UNIXSystem > UNIXPagingSpace > PagingSpaceUsedPercent]。程序路径将在后面设置 Event Filter 时被用到。
图 11. Common Monitor - 2
设置 Threshold
因为 Process Monitor 收集的状态信息并不需要阀值,所以这里只需要设置 Common Monitor 的阀值。紧接着 上一步操作 , 当用户在窗口 [System Status and Health > Monitors > Common Monitors] 找到该进程的 Monitor 后,右键选中后在弹出菜单里选择 "Active Threshold" 就进入到 Threshold 编辑窗口了。选中复选框 'Warning',并在文字框中输入 "40.0",表示当页面空间的占有率高于 40%,将产生一个严重等级为 "Warning" 的事件。点击按钮 'OK' 完成这项操作。
为了创建 Event Filter,首先可以在 [Automation > Event Filter] 窗口中点击按钮 'Create',在弹出窗口会看到有四种不同类型的 Event Filter 单选框。这四种不同类型的 Event Filter 具有不同的作用,使用在不同的场合。其中最常用的是 Simple Event Filter, 它能够满足用户的基本需求,绝大多数 Automation Plan 都会用到这种 Event filter。其他三种属于高级的 Event Filter,除了包含 Simple Event Filter 的基本参数外,还有额外的参数可以选择。例如,Exclusion Event Filter 可以使用户从被监控的 Event 集合中排除指定的 Event;Duplication Event Filter 可以使用户在指定的时间间隔内忽略冗余 Event;Threshold Event Filter 可以使用户以间隔的方式过滤指定的 Event。具体如何使用这些高级 Event Filter,可以参考 "IBM Systems Director 6.1 红皮书 " 和 "IBM Systems Director 6.1 信息中心 "。
在本实例中,最基本的 "Simple Event Filter" 即可满足对上述进程和系统资源的监控事件的 Filter,在弹出窗口 "Create Filter" 中选择选项 "Simple Event Filter",并点击 OK。
在弹出的窗口 "Simple Event Filter Builder:New" 里,用户可以在选项卡 "Event Type" 里选择相关的 Event。其中,Process Monitor 产生的 Event 在程序路径 [Director Agent > Process Monitors >Process Alert] 下可以找到。Common Monitor 产生的 Event,如前所述,在 [Director Agent > UNIXSystem > UNIXPagingSpace > PagingSpaceUsedPercent]。选择完成后,就可以保存退出,设置 Event Filter 的名字为 MyFilter。创建成功后,可以在 Event Filter 窗口找到 "MyFilter"。
Event Action 的创建并不复杂。首先可以在 [Automation > Event Actions] 窗口中点击按钮 'Create'。在弹出窗口 "Create Action" 里选择单选框 "Start a program on the system that generated the event"。在这个实例里,产生这个 Event 的系统就是 Managed System "9.125.53.91"。这样,当 Event 发生以后,用户自定义的程序就会在产生这个 Event 的系统上被执行。
下面的窗口主要是定义被执行的脚本程序。根据需求,被执行的脚本为 "MyMaint.sh",工作目录就是 "MyMaint.sh" 所在目录,"/home/test"。Action 的名称设置为 "MyAction"。点击按钮 'OK' 保存退出,用户可以在视图 "Event Actions" 里看到创建的 "MyAction" 了。为了方便用户检查 Action 是否在系统异常状态下被正确调用,请不要忘记激活 Action History, 可以通过选择 "MyAction" 右键菜单点击 "Activate History" 来激活它。这样每当 Action 被触发时,会有相应的历史记录在 Action History 窗口中。
当 Event Action 和 Event Filter 准备就绪后,就可以利用 Director 6.1 提供的自动化计划向导程序创建 'Automation Plan' 了。首先可以在 [Automation > Automation Plan] 里点击按钮 'Create' 来调用 Wizard。
首先向导程序会转到“Name and Description" 页,输入 "Automation Plan" 的名称 "MyPlan", 并在 Description 中填入简单说明,像 " 系统页面空间和进程停止时启动我的程序”诸如此类,之后点击 Next。
在 Targets 页,选择该 'Automation Plan' 应用到的 Managed System,这里当然是选择 '9.125.53.91',点击 Next。
在 Event 页,这里有两类不同的 Event Filter 你可以进行选择,”Common“会列举出 Director 6.1 预定义的常用的 Event Filter,而 Advanced Event Filters 既有预定义的一些 Events,又有用户利用 Event Filter 向导创建的不同种类的 Filters。从 Advanced Event Filters 下拉菜单可以看到刚才创建的”MyFilter“列在其中,选择它并点击 Next。
在 Event Action 页,选择刚才创建的 MyAction。后面配置完全采用默认值即可。创建完成后,用户就可以在视图里 'Automation Plan' 里看到刚才创建的 'MyPlan' 了。
|
|
验证 Automation Plan
下面介绍如何用 "Event Log" 来验证新创建的 "MyFilter" 是否正确。首先,用户可以在 "9.125.53.91" 试着启停进程 "MYPROCESS",如前所述,这将产生一个类型为 [Director Agent > Process Monitors >Process Alert] 的 Event,并将显示在 Director 的 Event Log 列表里,用户可以打开 [System Status and Health > Event Log],设置 Event Filter 为 "MyFilter",从下图中的表格可以看到,从 "9.125.53.91" 产生了一条 "MYPROCESS" 停止的 Event。
接下来,用户可以检查对应的 Event Action 是否被调用。为此,用户可以打开视图 [Automation > Event Actions],选择 "MyAction" 的属性视图,然后切换到 "History" 页面。从下图可以看到,"MyAction" 被成功调用。
|
|
Director 6.1 提供了简洁而又直观的 Web 界面,AIX 系统管理员可以轻松方便地管理和配置机器,监视和统计操作系统的各项资源使用情况(包括 CPU 利用率,内存使用率,硬盘使用率,网络 TCP/IP 连接数,系统进程等等),制定异常情况的相应自动化策略。实际上,除此之外,Director 6.1 还提供了其他一系列基本功能可以让系统管理员很容易地实现对操作系统账户的管理,网络管理,软件和固件自动更新,以及远程诊断功能。同 时,Director 6.1 也提供了对被管理机器的硬件进行监控和配置,即时给出被管理机器的硬件健康概况图,并且通过查看问题和事件日志提供给管理员方便的途径来识别问题并确定故 障根源。总的来说,Director 6.1 对 IBM AIX 服务器、虚拟化资源提供了完善的硬件和系统配置管理功能,其良好的兼容性和可维护性,很适合中小型网络系统管理人员的需求。
周鹏,CSTL 软件工程师,长期从事 Mainframe 上自动化系统测试软件的开发与维护,目前负责 Director6.1 for AIX & pLinux 部分 Domain 的测试工作以及测试环境的维护工作。 |
李永超,CSTL 软件工程师 , 长期从事 Director 测试工作,目前主要负责 Director6.1 的 Automation Manager 和 Base Management Server 功能测试和系统测试工作。 |
end