クラウドでのイベントの管理を自動化する

Flex System Manager の自動化マネージャー機能を利用して、システムの完全性を維持する支援を行う

この記事では、IBM PureFlex System の管理者を対象に、Flex System Manager の自動化マネージャー機能を使用してクラウド・システムの一般的なイベントへの応答を自動化する方法を説明します。自動化マネージャーの機能について学ぶとともに、GUI ウィザードでイベント自動化プランを作成する方法や、既存の自動化イベント・プランを再利用してプログラムで変更する方法についても学んでください。

Ashish Billore, Cloud Systems Software Developer, IBM

Author photoAshish Billore は、IBM India Labs に務める IBM Cloud OS 開発マネージャーです。彼は IBM Systems Director VMControl 開発チームを管理し、クラウド・インフラストラクチャーを構築するために再利用可能なコンポーネントの開発担当として、Java、Eclipse、OSGi、Web サービスなどの技術を使用したアプリケーションの設計、開発を行っています。Eclipse オープンソース・プラットフォームのパッチに貢献し、IBM technology と QSE コンファレンスで記事を発表したこともあります。彼は電子通信エンジニアリングの学士号を取得し、大学院で情報技術を学びました。



Ansuman Padhy, Senior Staff Software Engineer, IBM

Ansuman Padhy photoAnsuman Padhy は、ソフトウェア・エンジニアリングでの経験が 8 年あり、彼の主な関心事は、Java、Eclipse RCP、Android、その他さまざまなオープンソース・プラットフォームなどの技術を用いて、アプリケーションの開発や、アイデアの概念実証を行うことにあります。現在は、Python と OpenStack によるクラウド・プラットフォームを扱っています。



Piyush Jain, Staff Software Engineer, IBM  

Author photoPiyush Jain は、IBM のスタッフ SE であり、現在は IBM Systems Director の VMControl に携わっています。彼は 6 年の業務経験があり、インドのラージャスターン州にある Alwar Institute of Engineering and Technology (IET) で情報技術工学の学位を取得しています。


developerWorks 貢献著者レベル

2013年 11月 07日

IBM PureFlex System

IBM PureFlex System は、計算、ストレージ、ネットワーキング、視覚化の機能を統一管理コンソールの下にまとめたもので、リソースのニーズを予測することを得意としています。IBM Flex System はブレードの枠を超えて、容易に統合できる高性能のコンポーネントを提供します。

システム管理環境において、「イベント」とはタスクやシステムにとって重要性を持つ事象の発生を意味します。イベントはさらに、「アラート」(問題が発生したこと) または「解決」(問題が解決されたこと) のいずれかに分類することができます。問題の関連性と重要性によっては、データ・センターの最適なリソース使用状況を維持するためのアクションが必要な場合があります。その場合、必要なステップを実行する旨が管理者に必ず通知されるようにするか、あるいは実行すべきアクションを管理者があらかじめ定義しておくこともできます。

IBM PureFlex System 環境内でアクションが必要になると、IBM PureFlex System Manager の自動化マネージャー・インフラストラクチャーでは、管理者に通知するか、あらかじめ定義されたタスクを開始することにより、問題の解決を促します。事前に構成および統合された IBM PureFlex System インフラストラクチャーの管理ソリューションとなるのは、IBM Flex System Manager です。Flex System Manager は反復作業を自動化することによって、通常の管理タスクに必要となる手動ステップの数を減らします。この記事では、Flex System Manager の自動化マネージャー機能を紹介するとともに、この機能を使用してデータ・センターの一般的なイベントに対する応答を自動化する方法を説明します。特定のアラートに対する応答の中で、あらかじめ定義されたタスクを実行するために Flex System Manager の自動化マネージャーを使用する、イベント自動化プランの作成方法について、2 つのサンプル・シナリオを参考に学んでください。

イベント自動化プランとその動作

IBM PureFlex System 環境の管理者は、イベント自動化プランを作成して、それを特定のシステムまたはシステム・グループに適用することができます。イベント自動化プランでは、タスクおよび一般的なクラウド操作を管理対象の環境で発生した状況に応じて自動化することができます。

Flex System Manager イベント自動化プランは、以下の 3 つの基本コンポーネントで構成されます。

  1. ターゲット・リスト: 管理対象の環境に含まれる 1 つ以上のシステムまたはシステム・グループを指定します。
  2. フィルター: 処理するイベントのタイプを指定します。
  3. アクション: イベントに対する応答を指定します。イベントの発生時に開始するアクションは、1 つ以上指定することができます。

図 1 に、管理者が「Event Automation Plan (イベント自動化プラン)」ウィザードで作成中のイベント自動化プランを示します。このウィザードには、Flex System Manager コンソールからアクセスすることができます。

図 1. イベント・フィルターおよびイベント・アクションに対する Flex System Manager のデフォルト・サポート
「Event Automation Plan (イベント自動化プラン)」ウィザードで作成中のイベント自動化プランのスクリーン・キャプチャー

デフォルトで管理者は、ウィザードの「Event Filters (イベント・フィルター)」画面 (図 1 の背面に示されている画面) に示されるすべての選択可能なイベントの中から選択することができます。「Create Action (アクションの作成)」画面 (図 1 の前面に示されている画面) には、イベントに対して選択できる一般的なアクションのリストが表示されます。イベント自動化プランの準備ができると、特定のイベントが発生するたびに、そのイベントに対して指定されたアクションが実行されます。

図 2 に、イベント自動化プランのセットアップと実行の概要を示します。

図 2. イベント自動化プランのセットアップと実行の概要
イベント自動化プランのセットアップと実行を説明する図

図 2 に示されているシーケンスの各ステップの詳細は以下のとおりです。

  1. 管理者がイベント自動化プランを作成して、特定のシステムまたはシステム・グループ (サーバー・ファームなど) に適用します。
  2. イベント自動化プランでは、管理者はフィルターを使用して処理対象のイベント・タイプを指定し、これらのイベントごとにイベント・アクション (e-メール通知の送信など) を指定します。
  3. イベント自動化プランに関連付けられたシステムでイベントが発生します。
  4. 発生したイベントのタイプを指定するフィルターがイベント自動化プランに含まれている場合、イベント自動化プランはそのフィルターに対して指定されているアクションがあるかどうかを調べます。
  5. アクション (e-メール通知の送信など) が指定されている場合、そのアクションが実行されます。

Flex System Manager の自動化マネージャーとイベント自動化プランの機能についての基礎知識が得られたところで、ここからは、アクションを自動化する上でイベント自動化プランがどのように役立つかを、データ・センターにおける一般的な 2 つのシナリオで見ていきます。


シナリオ 1: VMware クラスターのレジリエンス・ポリシーを構成する

IBM PureFlex System には、障害予知アラート (PFA: Predictive Failure Alert) をあげるためのインテリジェンスが備わっています。「ハードウェア PFA」とは、サービス・プロセッサーや管理モジュールがハードウェア関連の何らかの障害が起こりつつあることを検出したときに発生するイベントであり、障害前アラートの一種です。例えば、システム内の DIMM (Dual Inline Memory Module) に障害が起こりそうになると、ハードウェア PFA が発生します。

図 3 に、Flex System Manager が応答できる一般的なハードウェア PFA イベントが示されています。

図 3. 一般的なハードウェア PFA イベント・タイプ
ハードウェア障害予知アラート・イベントのフィルターを示す Flex System Manager イベント自動化プランのスクリーン・キャプチャー

高可用サーバー・ファームを有効にする

システム管理環境における「レジリエンス」とは、リソース (サーバー、ネットワーク、ストレージ・デバイスなど) が障害またはサービス中断の発生後に直ちに回復して動作を継続する能力のことです (この能力は、「高可用性」とも呼ばれます)。Flex System Manager で、VMware サーバー・クラスター (別名、VMControl ファーム) からあげられるハードウェア PFA に対するレジリエンス・ポリシーを有効にすると、モニター対象とする具体的なイベントを把握する必要がなくなります。その代わりに、VMware 保守モード機能をトリガーするイベント自動化プランを作成して実行します。すると、アラートがあげられた場合、そのイベント自動化プランによってソース・ホスト上のすべての仮想サーバーが同じクラスター内の適切なターゲット・ホストへと自動的に再配置されます。この方法は、ファンやディスクの障害などといったハードウェア問題を早い段階で明らかにすることができるため、仮想サーバーにダウンタイムが生じるのを回避できるようになります。

PureFlex System では、プラットフォーム・マネージャーが 1 つ以上のホスト・システムと、これらのホスト・システムに関連する仮想サーバーおよびオペレーティング・システムを管理します。Flex System Manager はディスカバリー・プロセス中に、VMware vCenter Server をプラットフォーム・マネージャーとして実行しているシステム (VMControl ファーム) を識別します。図 4 に、vCenter Server が複数の VMware ESXi ホストのプラットフォーム・マネージャーとなっているシステムでのハードウェア PFA イベント管理プロセスを示します。

図 4. ハードウェア PFA イベント管理
ハードウェア PFA イベントの管理フローを示す図

図 4 の ESXi ホストは vCenter Server によって管理され、vCenter Serverは Flex System Manager によって管理されます。ハードウェア障害が発生すると、ESXi ホストの統合管理モジュール (IMM) がイベントを Flex System Manager に送信します。すると、構成済みのイベント自動化プランに従って、対応するアクションが実行されます。

ハードウェア PFA 発生時の仮想サーバーのライブ再配置を自動化するレジリエンス・ポリシーを構成する上で最低限必要なセットアップ手順は、以下のとおりです。

  1. vCenter Server 上に DataCenter を作成します。
  2. DataCenter 内に、高可用 (有効化されていて対応可能) で DRS 対応のクラスターを作成します。可用性の制約に違反する仮想マシン電源投入操作を許可する設定は、無効にする必要があります。
  3. ESXi ホストをクラスターに追加します。すべての ESXi ホストに、仮想サーバーを作成するための共有ストレージがあることを確認してください
  4. Flex System Manager から、vCenter Server に対するインベントリー収集を実行します。このインベントリーが、DataCenter とクラスターの両方を IBM Systems Director 内のファームとしてディスカバーします。
  5. DRS 対応のクラスターに追加したすべてのホストに対して VMware vSphere vMotion を有効にします。

イベント自動化プランを構成するには、図 5 に示すイベント自動化ウィザードを使用することができます。

図 5. レジリエンス・ポリシーを実装するイベント自動化プランを構成するためのウィザードのページ
レジリエンス・ポリシーの構成を示す「Event Automation Plan (イベント自動化プラン)」ウィザードのスクリーン・キャプチャー

クリックして大きなイメージを見る

図 5. レジリエンス・ポリシーを実装するイベント自動化プランを構成するためのウィザードのページ

レジリエンス・ポリシーの構成を示す「Event Automation Plan (イベント自動化プラン)」ウィザードのスクリーン・キャプチャー

図 5 では、管理者がイベント・フィルターとして「Hardware Predictive Failure Alert (ハードウェア障害予知アラート)」を選択し、イベント・アクションとして「Enter Maintenance Mode (保守モードの開始)」を選択しています。

レジリエンス・ポリシーをテストする

レジリエンス・ポリシーをテストするには、genevent コマンドを使用してイベントをシミュレートします。genevent は、人為的イベントをシミュレートする組み込みユーティリティーです。例えば、以下のコンソール・セッションに示されているコマンドは、シミュレートされたハードウェア PFA を生成します (ここで、13466 はハードウェア・イベントがシミュレートされたホストの ID です)。

[root@z1-9-5-124-234 ~]# smcli genevent /text:"Advance_Hardware_Predictive_Failure" /compcat:
"ManagedElement.ManagedSystemElement.PhysicalElement.PhysicalComponent.Chip.PhysicalMemory" 
/comptype:"" /sev:1 /condtype:"OperationalCondition" /condvalue:"PFA" /MEID:13466

すると、ESXi ホストは自動的に保守モードに入ります (図 6 を参照)。

図 6. 保守モードのホストが表示された Flex System Manager
保守モードのホストが表示された Flex System Manager

シナリオ 2: イベント・アクションとして管理者に問題の詳細を送信する e-メール・サービスを構成する

イベントが発生すると、管理者に詳細な e-メール通知を送信するように、自動化マネージャーを構成することができます。問題の発生と同時に通知を受け取ることができれば、その問題への対処方法を短時間で決定するのに役立ちます。

図 7 では、管理者が CPU 使用率イベントを e-メール・イベント・アクションとして構成しています。

図 7. e-メール・イベント・アクションを構成するウィザードのページ
「Event Automation Plan (イベント自動化プラン)」ウィザードで e-メール・イベント・アクションを構成するページのスクリーン・キャプチャー

図 7 の背面にあるスクリーン・キャプチャーは、「Event Automation Plan (イベント自動化プラン)」ウィザードで e-メール・イベント・アクションを構成するページを示しています。このページは、e-メール ID、SMTP アドレス、e-メール・ポートなどの入力を取ってイベント・アクションを構成します。このアクションは、CPU 使用率がしきい値のレベルに達すると、管理者に e-メールで通知します。図 7 の前面にあるスクリーン・キャプチャーは、問題の条件をシミュレートしてアクションをテストした後に管理者が受け取る e-メール通知を示しています。


イベント自動化プランの再利用

既存のイベント自動化プランは、Flex System Manager がサポートしているフォーマット (XML など) でエクスポートすることができます。後で (ウィザードを使って新しいイベント自動化プランを作成する代わりに) そのエクスポートしたファイルをインポートすることによって、イベント自動化プランを作成することができます。ある Flex System Manager マシンで XML ファイルを生成し、別の Flex System Manager マシンでその同じ XML を使用して自動化プランを作成することもできます。任意で、XML を編集して、プランの作成ステップをプログラムで変更することもできます。

リスト 1 のコンソール・セッションに、Flex System Manager 環境から既存のイベント自動化プランを XML ファイルとして取得する方法が示されています。

リスト 1. イベント自動化プランを XML ファイルにエクスポートする
[root@z1-9-5-124-234 tmp]# smcli mkevtautopln /tmp/test1.xml
Warning Number: 1
DNZEAP2059W: (Run-time warning) The event filter named 
'Hardware Predictive Failure Alert events' has the same name 
and definition as an existing filter in the system. The filter 
will be not be created again.
Filter name: Hardware Predictive Failure Alert events
Total number of warnings: 1
DNZEAP2064I: (Informational) Created event action 'Test12'.
DNZEAP2066I: (Informational) Created event automation plan 'test2'.
       DNZEAP2067I: (Informational) Targets 'IBM 8853L6U KQBGTT4', applied to event
       automation plan 'test2'.

リスト 2 に記載する XML ファイルでは、リソースに保守モードを開始させるイベント・アクションを構成しています。

リスト 2. イベント・アクションを作成する XML ファイル (Actions.xml)
<?xml version="1.0" encoding="UTF-8"?>
<EventActions
    xmlns="http://www.ibm.com/director/automation/event/action/6.3"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=
    "http://www.ibm.com/director/automation/event/action/6.3 EventAction6.3.xsd">
    <EventAction id="38">
        <Name>EventAction</Name>
        <Description/>
        <StartTaskOnSystemThatGeneratesEventActionType 
        className="com.tivoli.twg.alertmgr.TaskLauncher">
            <StartTaskOnSystemThatGeneratesEventParameters>
            <Task>Enter Maintenance Mode</Task>
            <TaskID>com.ibm.director.vsm.services.tasks.VSMEnterMaintenanceMode</TaskID>
            </StartTaskOnSystemThatGeneratesEventParameters>
        </StartTaskOnSystemThatGeneratesEventActionType>
        <History>Not saved</History>
    </EventAction>
</EventActions>

AutomateHWEvents.sh は、イベント自動化プランの作成を自動化するサンプル・シェル・スクリプトです。このスクリプトは、リスト 2 の Actions.xml ファイルを使用して新規イベント自動化プランを作成します (このスクリプトと Actions.xml を入手するには、「ダウンロード」を参照してください)。このスクリプトには入力として、イベント自動化プランの名前、説明、イベント・フィルター、およびターゲット名を指定する必要があります。

リスト 3 のコンソール・セッションに、Flex System Manager 環境で実行中の AutomateHWEvents.sh スクリプトが示されています。

リスト 3. 実行中の AutomateHWEvents.sh スクリプト
[root@z3-9-5-127-172 piyush]# ./AutomateHWEvents.sh
WELCOME TO CREATE EVENT AUTOMATION WIZARD
=========================================
=============
| PLAN NAME |
=============
Please enter event automation plan name: EAP1

Checking Event Automation Plan with name EAP1, already exist or not...

Event Automation Plan with name EAP1 exists, so removing...
====================
| PLAN DESCRIPTION |
====================
Please enter event description for event automation plan: plan
================
| EVENT ACTION |
================
Checking Event Action with name 'EventAction', already exist or not...

Event Action with name 'EventAction' exists, so removing...

Creating a new Event Action with name 'EventAction'...

DNZEAP2064I: (Informational) Created event action 'EventAction'.
Event Action with name 'EventAction' is created successfully.

=================
| EVENT FILTERS |
=================
All Events, 0x10
Audit Events, 0x24
Common Agent offline, 0x1e
Critical Events, 0x12
Disk use, 0x17
Electronic Service Requests, 0x18
Electronic Service and Support Events, 0x1c
Environmental sensor events, 0x19
Fatal Events, 0x11
Hardware Predictive Failure Alert events, 0x22
Informational Events, 0x15
Management server security events, 0x1d
Memory use, 0x23
Minor Events, 0x13
Physical hardware security events, 0x20
Processor use, 0x1b
Service and Support Manager processing error events, 0x1f
Service and Support Manager serviceable events, 0x21
Storage events, 0x1a
Unknown Events, 0x16
Warning Events, 0x14

Please enter event filter name or oid from the above list of filters:
Hardware Predictive Failure Alert events

==================
| TARGET SYSTEMS |
==================
IBM 8233E8B 065836R 46
z3-9-5-127-172.rch.nimbus.kstart.ibm.com

Please enter the target systems, separated by a comma from the above list of systems:
z3-9-5-127-172.rch.nimbus.kstart.ibm.com

==================================
| EVENT AUTOMATION PLAN CREATION |
==================================
Creating a Event Automation Plan...

Executing the following command to create a Event Automation Plan:
/opt/ibm/director/bin/smcli mkevtautopln -e "Hardware Predictive Failure Alert events" -x 
"EventAction" -i "z3-9-5-127-172.rch.nimbus.kstart.ibm.com" -D "plan" "EAP1"

Event Automation Plan with name EAP1 is created successfully.
Details for new Event Automation Plan are given below:

Name: EAP1
Description: plan
Status: Active
Event Filter: Hardware Predictive Failure Alert events
Time Ranges:
    All the time (24x7)
Actions:
    EventAction
Targets:
    System Name: z3-9-5-127-172.rch.nimbus.kstart.ibm.com
    System Name: IBM 8233E8B 065836R 46
===========================================================

管理者は、例えば Flex System Manager 環境内にある各種のシステムやイベント・フィルターに対してイベント自動化プランを構成するなど、必要に応じてイベント自動化プランのさまざまな部分をプログラミングすることができます。さらに、元の (エクスポートした) XML ファイルを変更して、さまざまなイベント・アクションを提供することも可能です。


まとめ

この記事で取り上げた 2 つのシナリオは、単なる例にすぎません。Flex System Manager の自動化マネージャーは、IBM PureFlex System でイベントとアラートをモニターして応答する方法を自動化するための強力な汎用インフラストラクチャーを提供します。


ダウンロード

内容ファイル名サイズ
Sample script and XML filescripts.zip1.47KB

参考文献

学ぶために

議論するために

  • developerWorks コミュニティーに参加してください。ここでは他の developerWorks ユーザーとのつながりを持てる他、開発者によるブログ、フォーラム、グループ、Wiki を調べることができます。

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Cloud computing
ArticleID=951684
ArticleTitle=クラウドでのイベントの管理を自動化する
publish-date=11072013