TOP調査レポート> はじめに
オープンソースをこう使った! 〜 運用管理ツールHinemosの秘密
オープンソースをこう使った! 〜 運用管理ツールHinemosの秘密

第4回:EJBにて実装した各運用機能について

著者:NTTデータ  宮本 洋輔   2006/9/14
1   2  3  4  次のページ
はじめに

   今回はクライアントからのリクエスト応答や設定に従って運用を実行するマネージャに関して、そのコントロールにEJBを採用したメリットや活用方法について説明していきます。

運用管理とHinemosの機能について

   最初に運用管理がどのようなことを行うのかを整理すると、一般的に運用管理には大きく分けて2つの業務があります。1つはシステムが正常に動作しているかを監視する業務で、もう1つはシステムの一部としてバッチ処理の実行制御を行ったりオペレータの操作を支援したりするシステムを制御する業務になります。

   また、Hinemosにおいて、監視業務を実現する機能は監視管理機能と性能管理機能であり、制御業務を実現する機能はジョブ管理機能と一括制御機能です。

   これら4つの機能の詳細ををまとめたのが表1です。

監視管理機能
PING監視/プロセス監視/ログ監視/ジョブエージェント監視/SQL監視/SNMP監視の6種の監視を行い、ステータスやイベントを集中監視することができます。
性能管理機能
CPU使用率/ロードアベレージ/メモリ使用率/Disk I/O/ネットワークインターフェースのI/Oなどのリソース情報を、リアルタイムグラフ表示や収集保存・閾値監視することができます。
ジョブ管理機能
時刻の条件と前後関係を持つバッチ処理(ジョブ)を実行することができます。前後関係は複数のノード/スコープにまたがって設定することも可能です。
一括制御機能
複数ノードへの同一オペレーションを1度のGUI操作で実行することができます。ユーザ管理やファイルのコピー/パッチの適用/マシンの停止・再起動が可能です。

表1:機能一覧

   監視業務では、定期的に問い合わせを行うポーリング処理と異常時に生成されるログやSNMPトラップなどのイベント処理という2つの性質の異なる処理があります。制御業務では、ジョブ実行のように実行時刻や先行ジョブの終了状態など複数の条件判断を行う処理と管理対象ノードとの実行指示や実行結果の取得といった通信が必要となります。まとめると、運用管理マネージャを実装する上では以下の動作要件が必要となります。

  • PING監視などの定期的に監視を実行することが可能
  • ログ監視などのノードから送信されてくるメッセージを処理することが可能
  • ジョブ実行などで不整合なく複雑な条件判断を行うことが可能
  • オペレーションの実行指示や実行結果などをノードと確実に通信することが可能

表2:運用管理マネージャの動作要件

   さらに、複数のクライアントからの接続が考えられる運用管理のマネージャでは、マネージャ・クライアント接続の管理も考慮しなければなりません。

   監視業務と制御業務を実現するために、Hinemosでは複数のOSSで構成されています(図1)。このなかでJBoss Application Server(以下、JBoss)は、上記の要件を実現するマネージャの中核OSSです。Hinemosの運用管理機能は、JBossにEJBの形で実装されています。

Hinemosの構成
図1:Hinemosの構成(再掲)
(画像をクリックすると別ウィンドウに拡大図を表示します)

1   2  3  4  次のページ


NTTデータ  宮本 洋輔
著者プロフィール
株式会社NTTデータ   宮本 洋輔
基盤システム事業本部 オープンソース開発センタ
2003年、株式会社NTTデータに入社。入社以来セキュリティや運用管理などのシステム管理OSSに関する研究開発に従事。現在はHinemosの開発とコミュニティ作りに活動している。

INDEX
第4回:EJBにて実装した各運用機能について
はじめに
  Hinemosの処理とEJB
  ジョブ管理機能を例にした実装方式の説明
  ジョブの自動実行(結果処理部)