使用 IBM Tivoli Monitoring 监控 IBM SmartCloud Enterprise 虚拟机

为您的 SmartCloud Enterprise 虚拟机基础架构设置一项监控服务

为您的 IBM® SmartCloud® Enterprise 虚拟机基础架构设置一项监控服务。可以使用 IBM Tivoli® Monitoring 监控虚拟机资源并根据结果触发各种自动化操作,比如发送警报消息或配置虚拟机。作者将使用一个示例场景分步介绍设置过程。

Rémy Tiffon, 高级 IT 架构师, IBM

Rémy Tiffon 是位于法国波尔多的一名高级 IT 架构师。他从波尔多大学的组件集成实验室获得了微电子硕士学位。他为 IBM 效力长达 28 年,其中 8 年一直从事芯片与内存的设计和测试方面的工作。他擅长的领域包括 Web 应用程序基础架构、面向服务的基础架构设计和开发,以及门户和协作解决方案。过去的三年里,Rémy 一直是 IBM 客户私有云项目的架构师。



2013 年 7 月 29 日

所需的 SSH 客户端

要完成本文介绍的步骤,您必须在自己的工作站上安装一个诸如 PuTTY 之类的 SSH 客户端(建议采用本文使用的适用于 Windows® 的客户端)。目前,如果您没有这些工具,只需从 PuTTY 下载页面下载 PuTTY 和 PuTTYgen 密钥生成工具即可(参阅 参考资料)。稍后在本文中,您将配置 PuTTY,以便连接到您的 SmartCloud Enterprise 实例。

在高度动态的云环境中,比如 IBM SmartCloud Enterprise,必须根据需要配给用来处理关键工作负载的虚拟机。虚拟机监控是满足这一需求的关键要素。本文将展示如何为使用 IBM Tivoli Monitoring 为 SmartCloud Enterprise 制定一个虚拟机监控解决方案。例如,本文将会带您遍历监控 IBM WebSphere® Application Server 虚拟机实例的步骤。

您可以利用本文中掌握的步骤来自动扩展您的基础架构,使之满足工作负载要求。Tivoli Monitoring 检测到的事件会触发一些操作,例如,在达到磁盘阈值限制时向网络操作中心发送警报消息;在 CPU 超载时提供一个新虚拟机;或者在一定数量的客户端连接到 Web 前端时提供一个新的虚拟机。

创建您的第一个业务虚拟机实例

要遵循本文中使用的步骤,首先需要创建一个虚拟机实例进行监控。

  1. 首先使用您的用户名和密码登录到 SmartCloud Enterprise 仪表板,如图 1 中所示。
    图 1. SmartCloud Enterprise 仪表板登录
    SmartCloud Enterprise 仪表板登录页面的屏幕截图
  2. 在 SmartCloud Enterprise 中,需要生成一个安全密钥对,并至少请求获得两个 IP 地址。有关的操作说明,请选择 Support 选项卡并单击 Demo #3 - Working with IP, Storage & Keys。(或者您可以在 YouTube 上直接访问同一个演示;参阅 参考资料。)
  3. 从图 2 所示的 Account 选项卡中选中 Security Key Pairs 表,以验证您已经生成一个新的安全密钥。
    图 2. Account 选项卡
    SCE Account 选项卡的屏幕截图
  4. 选择 Control panel 选项卡并单击 Add instance,打开一系列 Add 实例对话框页面的第一项。用这些页面生成一个新的实例需要执行 4 个步骤:
    1. 选择一个数据中心并选中一个镜像。
    2. 配置该镜像。
    3. 验证配置。
    4. 接受服务协议。

步骤 1:选择一个数据中心并选中一个镜像

  1. 从图 3 所示的数据中心列表中选择一个数据中心。
    图 3. Select Data Center 列表
    SCE Add 实例页面的 Select Data Center 列表的屏幕截图
  2. 从可用镜像中选择 IBM WebSphere Application Server v7.0 - PAYG,如图 4 所示,然后单击 Next
    图 4. 创建一个 WebSphere Application Server 实例(步骤 1,共 4 步)
    SCE Add 实例对话框的步骤 1(共 4 步)页面的屏幕截图

步骤 2:配置镜像

  1. 在步骤 2 中:配置镜像页面中,如图 5 所示,输入请求名称和数量,从 Server 配置列表中选择一个服务器配置,然后从 Key 列表中选择您的安全密钥。
  2. 单击 Next
    图 5. 创建一个 WebSphere Application Server 实例(步骤 2,共 4 步)
    SCE Add 实例对话框的步骤 2(共 4 步)页面的屏幕截图
  3. 在步骤 2b 中:配置其他参数页面中,如图 6 所示,输入 WebSphere 管理员 ID 和密码,为 Configure IHS 服务器选择 yes,对于 Select a configuration profile,选择 Default single server profile,对于 Select feature packs to enable,选择 None
    图 6. 创建一个 WebSphere Application Server 实例(步骤 2b,共 4 步)
    SCE Add 实例对话框的步骤 2b(共 4 步)页面的屏幕截图

步骤 3:验证配置

在步骤 3 中:验证配置页面中,如图 7 所示,验证您在步骤 2 完成的配置并单击 Next

图 7. 创建一个 WebSphere Application Server 实例(步骤 3,共 4 步)
SCE Add 实例对话框的步骤 3(共 4 步)页面的屏幕截图

步骤 4:接受服务协议

  1. 在步骤 4 中:服务协议页面中,如图 8 所示,单击 I agree,然后单击 Submit
    图 8. 创建一个 WebSphere Application Server 实例(步骤 4,共 4 步)
    SCE Add 实例对话框的步骤 4(共 4 步)页面的屏幕截图
  2. 等待实例创建时,您将看到图 9 所示的 "Submitting..." 状态消息。
    图 9. 实例创建请求提交后显示的消息
    提交消息的屏幕截图,在等待实例创建时,该消息出现在 SCE Add 实例对话框
  3. 看到请求成功提交后,如图 10 所示,单击 Return to control panel
    图 10. 成功的请求提交
    展示了创建新实例请求成功提交的 SCE 屏幕截图
  4. 在图 11 所示的控制面板上,My instances 表中的 Status 栏最初显示为 "Requesting" 状态。
    图 11. 显示为 Requesting 状态的控制面板
    状态为 Requesting 的 SCE 控制面板的屏幕截图
  5. 该状态然后变为 "Provisioning",最后变为 "Active",如图 12 所示。
    图 12. 显示为 Active 状态的控制面板
    状态为 Active 的 SCE 控制面板的屏幕截图

    从 Requesting 状态转变为 Active 状态大约需要 10 分钟。


创建您的虚拟机监控实例

现在您将创建一个基于 IBM Tivoli Monitoring 软件镜像的监控实例。

  1. 在步骤 1 中(共 4 步):选择镜像页面中,如图 13 所示,从可用镜像中选择 IBM Tivoli Monitoring 6.2.2.1 Pre-Release,并单击 Next
    图 13. 创建一个 IBM Tivoli Monitoring 实例(步骤 1)
    在 Add instance 对话框中创建一个 IBM Tivoli Monitoring 实例的屏幕截图(步骤 1)
  2. 通过填充步骤 2(共 4 步)中的字段来配置镜像:Configure image 页面,如图 14 所示的。输入请求名称和数量,从 Server 配置列表中选择一个服务器配置,然后从 Key 列表选择安全密钥。单击 Next
    图 14. 创建一个 IBM Tivoli Monitoring 实例,步骤 2(共 4 步)
    在 Add 实例对话框中创建一个 IBM Tivoli Monitoring 实例的屏幕截图,步骤 2(共 4 步)
  3. 在步骤 2b(共 4 步)中配置其他参数:Configuration additional parameters 页面,如图 15 所示。输入 CTIRA 主机名称和一个 sysadmin 密码,并选择 Normal 作为启动选项。单击 Next
    图 15. 创建一个 IBM Tivoli Monitoring 实例,步骤 2b(共 4 步)
    在 Add 实例对话框中创建一个 IBM Tivoli Monitoring 实例的屏幕截图,步骤 2b(共 4 步)
  4. 在步骤 3 的界面(未显示)中验证配置,接受图 16 所示的服务协议,然后单击 Submit
    图 16. 创建一个IBM Tivoli Monitoring 实例,步骤 4(共 4 步)
    在 Add 实例对话框中创建一个 IBM Tivoli Monitoring 实例的屏幕截图,步骤 4(共 4 步)
  5. 如图 17 所示,在看到请求成功提交后,单击 Return to control panel
    图 17. 成功的请求提交
    展示创建新实例请求成功提交的 SCE 的屏幕截图
  6. 如图 18 所示,在控制面板的 My instances 表中,添加的监控镜像 Status 列最初为 "Requesting" 。
    图 18. 显示为 Requesting 状态的控制面板
    显示为 Requesting 状态的 SCE 控制面板的屏幕截图
  7. 大约 10 分钟后,状态从 "Provisioning" 转变为 "Active",如图 19 所示。
    图 19. 显示为 Active 状态的控制面板
    显示为 Active 状态的 SCE 控制面板的屏幕截图

连接到 Tivoli Monitoring 实例并验证 Tivoli Monitoring 正在运行

  1. 如图 20 所示,设置 PuTTY SSH 客户端,以便连接到您刚刚创建的 Tivoli Monitoring 虚拟机实例。设置连接到 SmartCloud 实例的 PuTTY 指令可从两个地方获得。在 SmartCloud Enterprise 中,打开 Support 选项卡并单击 Demo #2 Connecting to an instance using an SSH Client。或者您可以从 YouTube 直接访问相同的演示(参阅 参考资料)。
    图 20. 通过 PuTTY 连接到 Tivoli Monitoring 虚拟机实例
    通过 PuTTY 连接到 Tivoli Monitoring 虚拟机实例的屏幕截图
  2. 看到图 21 所示的安全警报后,单击 Yes 接受密钥。
    图 21. PuTTY 安全警报
    Putty 安全警报的屏幕截图
  3. 在 PuTTY 会话中,以 idcuser 身份登录到 SmartCloud Enterprise,如图 22 所示。
    图 22. 以 idcuser 身份进行登录
    以 idcuser 身份从 Putty 登录到 SCE 的屏幕截图
  4. 要验证 Tivoli Monitoring 服务器进程正在运行,请运行 ps -aef |grep ITM 命令并确保 klzagentkdsmainkr4agentkcawd 进程正在运行,如图 23 所示。
    图 23. 验证 Tivoli Monitoring 服务器正在运行
    验证 Tivoli Monitoring 服务器正在运行的屏幕截图
  5. 如果 Tivoli Monitoring 尚未运行,请手动启动该进程。启动 Tivoli Monitoring 服务器的命令是:
    /etc/rc.d/rc2.d/S11ITMAgents1 start

    停止 Tivoli Monitoring 服务器的命令是:

    /etc/rc.d/rc2.d/S11ITMAgents1 stop

连接到 IBM Tivoli Enterprise Portal

  1. 运行图 24 所示的 sudo bash 命令,使 idcuser 成为 root 级用户。
    图 24. 切换到 root 级用户
    从 PuTTY 提示符执行 sudo bash 命令的屏幕截图
  2. 运行 vi /etc/hosts 命令打开 /etc/hosts 文件,如图 25 所示,这样您就可以轻松地检索到 Tivoli Monitoring 服务器的 IP 地址和主机名称。
    图 25. 用 vi 打开 /etc/hosts
    用 vi 打开 /etc/hosts 的 Putty 屏幕截图
  3. 查看相同的 IP 地址和主机名称在您工作站主机文件中是否出现在一行中(很可能是 C:\Windows\System32\drivers\etc\hosts,如果您使用的是 Microsoft Windows 操作系统)。例如:
    129.35.214.147 	vhost1677.site2.compute.ihost.com	vhost1677
  4. 如果该行未出现在您工作站的主机文件中,请添加一个包含刚刚检索到的 IP 地址和主机名称的行。
  5. 启动 Web 浏览器并转到下面 URL,其中的 ITM_hostname 是您之前创建的 ITM 实例的主机名称:
    http://ITM_hostname:1920///cnp/kdh/lib/cnp.html

    必须 使用主机名称,而不是 主机的 IP 地址。

  6. 配置您的浏览器,以便使用受支持的 IBM Java™ 运行时版本。图 26 显示在 Windows Internet Explorer 9 Options 窗口已经选中了 Java 1.5(撰写本文时的受支持版本)。
    图 26. 选择 Java 版本
    浏览器支持的 Java 运行时版本的屏幕截图
  7. 看到图 27 所示的警报消息时,单击 Do not show this message again 旁的复选框,然后单击 Continue
    图 27. 关闭 Java 警报消息
    Java 警报消息的屏幕截图,显示为 Java 插件组件指定的设置不同于 Tivoli Enterprise Portal 推荐的组件
  8. 出现如图 28 所示的 Tivoli Enterprise Portal 认证窗口。以 sysadmin 身份使用您在创建 Tivoli Monitoring 实例时设置的密码进行登录。
    图 28. Tivoli Enterprise Portal 认证窗口
    Tivoli Enterprise Portal 认证窗口的屏幕截图
  9. 如图 29 所示,通过选择 Accept this certificate temporarily for this session only 接受安全证书,并单击 OK
    图 29. 接受安全证书
    接受 Tivoli Enterprise Portal 的安全证书
  10. Tivoli Enterprise Portal 控制台显示了默认监控窗口,如图 30 所示。
    图 30. 默认监控窗口
    默认 Tivoli Enterprise Portal 的默认监控窗口的屏幕截图

将您的节点注册到 IBM Tivoli Monitoring

现在将您的节点注册到 IBM Tivoli Monitoring,这样您就可以从 Tivoli Enterprise Portal 对它进行监控。

  1. 从您的工作站设置 PuTTY,以便连接到您之前创建的 WebSphere Application Server 虚拟机实例,如图 31 所示。
    图 31. 通过设置 PuTTY 连接到 WebSphere Application Server 虚拟机实例
    通过设置 PuTTY 连接到 WebSphere Application Server 虚拟机实例的屏幕截图
  2. 在要监控的虚拟机上打开一个 PuTTY 会话,在此示例中,使用的虚拟机是带有 vhost1409 主机名的 WebSphere Application Server 虚拟机。在提示窗口,以 idcuser 身份登录到 SmartCloud Enterprise,如图 32 所示。(您必须使用该用户名。)
    图 32. 登录到 SmartCloud Enterprise
    以用户名 idcuser 从 Putty 登录到 SmartCloud Enterprise 的屏幕截图
  3. 运行 sudo bash 命令,使 idcuser 成为 root 级用户,然后运行 passwd 命令为该 root 用户设置密码,如图 33 所示。
    图 33. 切换到 root 级并设置一个 root 密码
    输入 sudo bash 使 idcuser 成为 root 级用户并运行 passwd 命令来设置 root 密码的屏幕截图
  4. 编辑 /etc/ssh/sshd_config 文件,以便修改以下三行代码:
    PermitRootLogin yes
    PasswordAuthentication yes
    AllowUsers idcuser root
  5. 保存文件。
  6. 运行 service sshd restart 命令重启 SSHD 服务。
  7. 编辑 /etc/passwd 文件,将 root:x:0:0:root:/root:/sbin/nologin 行更改为 root:x:0:0:root:/root:/bin/bash
  8. 以 idcuser 身份打开 Tivoli Monitoring 虚拟机上的一个 PuTTY 会话(或者,如果之前打开的会话未关闭,那么也可以使用现有的会话。)
  9. 运行 sudo bash 切换到 root 用户,并运行 ssh 命令与目标服务器交换密钥,如图 34 所示。使用下列远程 ssh 命令,其中的 target_hostname 是您想要监控的目标服务器主机的名称:
    ssh target_hostname ls /tmp
    图 34. 运行 sudo bashssh 命令
    运行 sudo bash 和 ssh 命令的屏幕截图
  10. 切换到 /opt/IBM/ITM/bin 目录,并运行 ./tacmd login -s localhost 命令在 Tivoli Monitoring 中打开一个会话,如图 35 所示。使用 sysadmin 作为用户名,并使用您在创建 Tivoli Monitoring 实例 步骤 2b 中设置的相同密码。
    图 35. 登录到 Tivoli Monitoring 会话
    登录到 Tivoli Monitoring 会话的屏幕截图
  11. 登录后,通过运行下面命令(其中,hostname_to_monitor 是要监控的虚拟机主机名称,path to install 是要部署 Tivoli Monitoring 代理的路径)在目标系统(该示例中是 WebSphere Application Server 虚拟机)上创建一个节点: ./tacmd createNode -h ssh://hostname_to_monitor) -d path_to_install -p PROTOCOL=IP.PIPE PORT=1918

    在下一步中会使用从该命令返回的事务 ID,所以要确保它随时可用。

    注意:出现提示时,必须使用 root 用户名和密码,图 36 所示,因为代理必须以 root 用户身份进行安装。

    图 36. 在目标系统上创建一个节点并以 root 用户身份进行登录
    在目标系统上部署节点并以 root 用户身份进行登录的屏幕截图
  12. 运行下列命令来监控代理和节点创建的部署状态,如图 37 所示:
    ./tacmd getdeploystatus -g your_transaction_ID
    图 37. 监控代理的部署状态
    运行监控代理部署状态命令的屏幕截图
  13. 您可能会看到一条请求正在处理的消息。如果看到这条消息,则需要再次运行该命令(大约 5 分钟后)来验证获得了一个成功状态,如图 38 所示。
    图 38. 节点创建成功
    表示节点创建成功的消息的屏幕截图
  14. 退出 Tivoli Monitoring 命令会话,图 39 所示。
    图 39. 退出 Tivoli Monitoring 命令会话
    退出 Tivoli Monitoring 命令会话的屏幕截图

检查执行

  1. 在您想要监控的虚拟机上打开一个 PuTTY 会话(在该示例中,WebSphere Application Server 虚拟机的主机名称为 vhost1409),并验证 /opt/IBM/ITM 目录存在且包含 Tivoli Monitoring 代理,如图 40 所示。
    图 40. 验证 /opt/IBM/ITM 目录存在且包含代理
    验证 /opt/IBM/ITM 目录存在且包含代理的屏幕截图
  2. 要验证代理已启动且正在运行,请执行图 41 所示的 ps -aef |grep ITM 命令,并确保 klzagentkcawd 进程正在运行。
    图 41. 验证 ITM 代理进程正在运行
    验证 ITM 代理进程正在运行的屏幕截图
  3. 刷新您的 web 浏览器,并验证您刚刚创建的节点出现在 Tivoli Enterprise Portal 导航窗口,如图 42 所示。
    图 42. 验证新节点出现在门户中
    验证您刚刚创建的节点出现在 Tivoli Enterprise Portal 导航窗口的屏幕截图

您可以使用监控窗口的首选项来配置 Tivoli Enterprise Portal。为此,参阅 Tivoli Monitoring 文档(参阅 参考资料)。


结束语

按照本文中的步骤为您的 IBM SmartCloud 基础架构制定一个监控解决方案,您可以:

  • 将新的虚拟机添加到环境时,对比当时生成的报告和之前的报告。
  • 删除虚拟机时,确保不会收到错误警报。
  • 全面监控应用程序资源。
  • 自动识别所有未监控的资源。
  • 与 IBM Tivoli Monitoring 相集成,以便自动配置代理(在上下文中启动它们)。
  • 更快地执行闭环故障排除。
  • 识别所有的基础架构变更(使用 Tivoli Application Dependency Discovery Manager Change Event 模块)。
  • 将基础架构健康状况与变更相关联,以减少平均恢复时间。
  • 通过 Tivoli Monitoring 代理执行发现 (discovery)。
  • 消除证书问题。
  • 向近实时的发现靠近。
  • 当客户操作系统处于离线状态时发出警报。
  • 将变更控制过程或自我服务目录相关联,了解客户操作系统何时处于离线状态。
  • 查看性能、可用性和容量规划报告,即使您的资源仍在不断变化。
  • 了解有多少快照在耗费磁盘空间。
  • 设置快照的数量限制并对快照进行监控。
  • 监控虚拟机,查看它们是否正在使用已分配的所有资源。

参阅 参考资料,获取演示弹性供应 的视频的链接,了解在 SmartCloud Enterprise 中根据 Tivoli Monitoring 检测到的事件自动配置新实例的能力。

参考资料

学习

获得产品和技术

讨论

  • 加入 developerWorks 中文社区。查看开发人员推动的博客、论坛、组和维基,并与其他 developerWorks 用户交流。

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Cloud computing, Tivoli
ArticleID=938881
ArticleTitle=使用 IBM Tivoli Monitoring 监控 IBM SmartCloud Enterprise 虚拟机
publish-date=07292013