運用管理ツール「Hinemos」によるサーバー死活監視

 サーバーの運用環境において、トラブルがいつ発生するのかを予測することは難しい。そのため、サーバーやそのサーバー上で動作するソフトウェアに問題が発生した際に迅速にそれを知ることができるよう、ツールなどを使ってサーバーを監視するのが一般的だ。このようなツールの1つにNTTデータが開発するオープンソースの運用管理ツール「Hinemos」がある。今回はHinemos 4.0を使ってサーバーの死活監視を行う方法について解説する。

無料で利用できるオープンソースの運用管理ツール「Hinemos」

 複数台のサーバーマシンを運用している場合、運用を容易にするためになんらかの監視ツールを使用することが一般的だ。監視ツールは一定の間隔でマシンの状態をチェックし、問題が発生していれば管理者にそれを通知する。これにより、管理者は迅速にトラブルの発生を知ることができる。

 監視ツールにはシンプルなものから多機能なものまで多くのものあり、その提供方法もさまざまだ。今回紹介するHinemosはNTTデータが2005年より公開している運用管理ツールで、無償で利用可能なオープンソースソフトウェアながら商用製品と比べても遜色ない豊富な機能を備えているのが特徴である。

Hinemosが備える機能

 Hinemosは単なる監視ツールではなく、複数台のマシンをより効率良く管理することを目的とした「運用管理ツール」と呼ばれるソフトウェアだ。Hinemosが持つ機能は大きく分けて次の5つに分類できる。

  • 複数のマシンの情報を一元管理するリポジトリ情報管理機能
  • 複数のマシンやソフトウェアの稼働状況、イベントログなどを管理する監視管理機能
  • CPUやメモリ、ストレージ、ネットワークといったハードウェアリソースの使用状況をリアルタイムで収集・表示する性能管理機能
  • 複数のマシンに対しジョブを一括管理するジョブ管理機能
  • 複数のマシンに対しバッチの実行や起動/停止/再起動、アップデートなどをまとめて実行する一括制御機能

 本記事ではこのうち、サーバーの監視を行うための「監視管理機能」と「性能管理機能」の使い方について紹介していく。

Hinemosの構成と動作環境

 Hinemosは「マネージャ」と「クライアント」、「エージェント」の3つから構成されている(図1)。

図1 Hinemosの構成図
図1 Hinemosの構成図

 マネージャは実際に各種監視を実行するソフトウェアで、監視対象に対し各種アクションを行ってそのステータスを取得するとともに、データベースにそれらを蓄積する。クライアントは管理者のPC上で実行するソフトウェアで、マネージャと通信して取得した情報を表示したり、マネージャの動作設定を行う機能を持つ。エージェントは監視対象とするサーバーにインストールする監視用のソフトウェアだ。マネージャは監視対象にインストールされたエージェントと連携することで、より詳細な情報を取得したり、またバッチや各種管理処理を実行させることができる。

 公式にアナウンスされているマネージャおよびエージェント、クライアントの動作OSは以下のとおりだ(表1)。

表1 Hinemos各コンポーネントの動作OS
コンポーネント動作OS
マネージャRed Hat Enterprise Linux 6およびOracle Linux 6
エージェントRed Hat Enterprise Linux 4/5/6、Windows Server 2003/2003 R2/2008/2008 R2/2012
クライアントWindows Server 2008およびWindows 7

 CentOSなどのRed Hat Enterprise Linuxの互換OSは正式な動作OSとしては検証されていないが、問題無く動作するようだ。本記事では、Cent OS 6.3での動作検証を行っている。

 ちなみにHinemosはpingやHTTP/SQLクライアント、SNMPクライアントなどの機能も備えており、マシンの死活監視やサービスの監視を行うだけであればエージェントは不要である。エージェントについて詳しくはHinemosのドキュメントなどを参照していただきたい。