はじめに
Hinemos(ヒネモス)は、独立行政法人情報処理推進機構(IPA)のOSS活用基盤事業として2004年にNTTデータが開発した純国産のサーバー監視システムであり、GPLライセンスでソフトウエアが配布されています。今回は、Hinemosを用いた監視システムの構築方法を前編、後編の2回に分けて解説します。前編では、監視サーバーおよび、管理クライアントの構築方法と、基本的な監視設定について解説します。
Hinemosの構成
Hinemosは、ZabbixやNagiosなどの他の監視システムは異なる構成で、サーバー監視を行います。
Hinemosを構成する要素と役割は、以下のとおりです。
要素 | 役割 |
---|---|
監視サーバー | 監視を実行するサーバー |
管理クライアント | 管理サーバーの監視設定を行うクライアント |
監視ノード | 監視サーバーによって監視されるサーバー |
前提条件
構築に必要なサーバー要件および、導入パッケージは下記のとおりです。
- サーバー要件
サーバー要件は、次のとおりです。
監視サーバー ホスト名 hinemos-server IPアドレス 192.168.0.50 OS CentOS 6.5 i386 Apache 2.2.15 監視ノード ホスト名 hinemos-client IPアドレス 192.168.0.20 OS CentOS 6.5 i386 管理クライアント ホスト名 PAPA IPアドレス 192.168.0.253 OS Windows 7 Ultimate 32bit ハードウェア要件については、Hinemosの動作環境を参照して下さい。
- 導入するパッケージ
導入するパッケージは、次のとおりです。
機器 パッケージ名 バージョン 監視サーバー java-1.7.0-openjdk 1.7.0.51 Hinemos Manager 4.1.1 監視ノード java-1.7.0-openjdk 1.7.0.51 net-snmp 5.5 net-snmp-utils 5.5 Hinemos Agent 4.1.1 管理クライアント Hinemos Client 4.1.1
監視サーバーの構築
下記の手順で構築します。
- OpenJDKのインストール
$ sudo yum -y install java-1.7.0-openjdk
[vagrant@hinemos-server ~]$ sudo yum -y install java-1.7.0-openjdk Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Including mirror: ftp.jaist.ac.jp Including mirror: ftp.tsukuba.wide.ad.jp Including mirror: ftp.riken.jp Including mirror: ftp.nara.wide.ad.jp Including mirror: ftp.iij.ad.jp Including mirror: www.ftp.ne.jp Including mirror: mirror.fairway.ne.jp * base: ftp.jaist.ac.jp Including mirror: ftp.jaist.ac.jp Including mirror: ftp.tsukuba.wide.ad.jp Including mirror: ftp.riken.jp Including mirror: ftp.nara.wide.ad.jp Including mirror: ftp.iij.ad.jp Including mirror: www.ftp.ne.jp Including mirror: mirror.fairway.ne.jp * extras: ftp.jaist.ac.jp Including mirror: ftp.jaist.ac.jp Including mirror: ftp.tsukuba.wide.ad.jp Including mirror: ftp.riken.jp Including mirror: ftp.nara.wide.ad.jp Including mirror: ftp.iij.ad.jp Including mirror: www.ftp.ne.jp Including mirror: mirror.fairway.ne.jp * updates: ftp.jaist.ac.jp base | 3.7 kB 00:00 extras | 3.4 kB 00:00 updates
giflib.i686 0:4.1.6-3.1.el6 jline.noarch 0:0.9.94-0.8.el6 jpackage-utils.noarch 0:1.7.5-3.12.el6 libICE.i686 0:1.0.6-1.el6 libSM.i686 0:1.2.1-2.el6 libX11.i686 0:1.5.0-4.el6 libX11-common.noarch 0:1.5.0-4.el6 libXau.i686 0:1.0.6-4.el6 libXext.i686 0:1.3.1-2.el6 libXfont.i686 0:1.4.5-3.el6_5 libXi.i686 0:1.6.1-3.el6 libXrender.i686 0:0.9.7-2.el6 libXtst.i686 0:1.2.1-2.el6 libasyncns.i686 0:0.8-1.1.el6 libfontenc.i686 0:1.0.5-2.el6 libjpeg-turbo.i686 0:1.2.1-3.el6_5 libogg.i686 2:1.1.4-2.1.el6 libpng.i686 2:1.2.49-1.el6_2 libsndfile.i686 0:1.0.20-5.el6 libvorbis.i686 1:1.2.3-4.el6_2.1 libxcb.i686 0:1.8.1-1.el6 pulseaudio-libs.i686 0:0.9.21-14.el6_3 rhino.noarch 0:1.7-0.7.r2.2.el6 ttmkfdir.i686 0:3.0.9-32.1.el6 tzdata-java.noarch 0:2013i-2.el6 xorg-x11-font-utils.i686 1:7.2-11.el6 xorg-x11-fonts-Type1.noarch 0:7.2-9.1.el6 Complete!
- Hinemos Managerのダウンロードと解凍
$ wget -q http://jaist.dl.sourceforge.jp/hinemos/60378/hinemos_manager-4.1.1_rhel6_32.tar.gz $ tar zxf hinemos_manager-4.1.1_rhel6_32.tar.gz
- Hinemos Managerのインストール
ダウンロードしたアーカイブ中に含まれる日本語インストーラーを実行します。
$ sudo Hinemos_Manager-4.1.1_rhel6_32/manager_installer_JP.sh
インストール中に、hinemosユーザーのパスワードを設定しますので、任意のパスワードを指定して下さい。
この他の項目は、全てデフォルトで構いません。[vagrant@hinemos-server ~]$ sudo Hinemos_Manager-4.1.1_rhel6_32/manager_installer_JP.sh ------------------------------------------------------- Welcome to the installation for Hinemos Manager Version 4.1.1 Copyright (C) 2013 NTT DATA Corporation ------------------------------------------------------- Hinemosマネージャのインストールを開始します。よろしいですか?(Y/N デフォルト:Y) : 実行ユーザの確認中... [OK] SELinux の確認中... [OK] OSバージョンの確認中... [OK] rpm パッケージの確認中... java-1.7.0-openjdk... [OK] rsyslog... [OK] rsyslog.confの確認中... [OK] インストールディレクトリ /opt/hinemos の確認中... インストールディレクトリ /opt/hinemos を作成しました。 ユーザ hinemos の確認中... グループ hinemos を作成しました。 新しいパスワード: よくないパスワード: 辞書の単語に基づいています
/dev/sda1 - /boot データベースディレクトリ(/opt/hinemos/var/data)はパーティション /内に格納されます。 ログディレクトリ(/opt/hinemos/var/log)はパーティション /内に格納されます。 必要なファイルのコピー実行中... [OK] 設定ファイル(hinemos.cfg, postgresql.conf, persistence.xml, selfcheck-service.properties)の生成中... [OK] rsyslog.confの確認中... rsyslog.confに設定を追記します。システムロガーを停止中: [ OK ] システムロガーを起動中: [ OK ] ファイルパーミッションの変更中... [OK] 内部データベースの初期化中... checking database directory(/opt/hinemos/var/data)... done checking current user(hinemos)... done initializing database directory(/opt/hinemos/var/data)... done configuring database... done starting up database... done configuring database users... done configuring database schemas and loading initial data... done done shutting down database... done configuring authentication... done Hinemosマネージャのインストールが完了しました。
- 動作確認
$ sudo /opt/hinemos/bin/hinemos_start.sh
[vagrant@hinemos-server ~]$ sudo /opt/hinemos/bin/hinemos_start.sh waiting for Hinemos Manager to start... waiting for PostgreSQL startup... PostgreSQL started waiting for Java Virtual Machine startup... ...............done Java Virtual Machine started Hinemos Manager started
- サービスの自動起動設定
Hinemos Managerが正常に起動できたら、自動起動の設定を行います。
$ sudo cp -p /opt/hinemos/sbin/service/hinemos_manager /etc/init.d/ $ sudo chkconfig --add hinemos_manager $ chkconfig hinemos_manager --list
以上で、監視サーバーの構築は終了です。
管理クライアントの構築
下記の手順で構築します。
- Hinemos Clientのインストール
Hinemos配布サイトから、HinemosClientInstaller-4.1.1_win32.msiをダウンロードし、インストーラーを起動し、全てデフォルトの設定でインストールします。
- Hinemos Managerへのログイン
スタートメニューから、HinemosClientを起動し、下記を指定して監視サーバーに接続します。
ユーザID hinemos パスワード hinemos 接続先URL http://192.168.0.50:8080/HinemosWS/ - ログインパスワードの変更
ビュー→アカウント→アカウント[ユーザ]を選択して[ユーザ]ビューを表示します。
表示されたユーザID上で、右クリックを押すと表示されるメニューから[パスワード変更]を選択し、新しいパスワードを入力します。
- 再ログイン
パスワードを変更すると、再ログインするよう促されますので、接続→ログインを選択し、設定したパスワードでログインします。
以上で、管理クライアントの構築は終了です。
監視ノード設定
管理クライアントを使用して、監視対象となる管理ノードを追加し、PINGによる死活監視設定を行います。
- 監視ノードの追加
管理画面右上部に表示されている[Open Perspective]ボタンをクリックして、[リポジトリ]を選択します。
何も登録されていない[ノード]ビューが表示されますので、画面中央の[作成]ボタンをクリックします。
ノードの作成・変更ウインドウが表示されたら、追加するノード情報を入力します。
ピンク色で表示された項目は、必須入力です。ファシリティID/ファシリティ名は任意の名前で、同じであっても構いません。追加した監視ノードが、[ノード]ビューに表示されます。
- 通知設定の編集
監視ノードに異常が発生した際に、管理クライアントに通知する方法を編集します。
ビュー→監視設定→監視設定[監視通知]を選択して、通知ビューを表示します。
8種類の通知IDから、STATUS_FOR_POLLINGを選択して、[変更]ボタンをクリックします。
画面中段にあるステータス通知から、黄緑色で表示された[情報]の通知をチェックします。デフォルトでは、チェックされていませんが、監視が正常に機能するかを確認するためにチェックしておくと良いでしょう。
- 監視項目の設定
監視ノードに、PINGによる死活監視を追加します。
ビュー→監視設定→監視設定[一覧]を選択して、一覧ビューを表示します。
作成ボタンをクリックします。
監視種別から[PING監視(数値)]を選択します。
スコープ選択では、[登録ノードすべて]または、ツリー表示されたファシリティIDを選択します。
PING監視の通知方法を選択します。先に編集した[STATUS_FOR_POLLING]を選択し、[OK]で終了すると、通知IDに反映されます。
アプリケーションには、任意の名前を設定します。全て設定した後、[OK]で終了すると、監視項目が追加されます。
- 監視状況の確認
監視ノードの監視状況を確認します。
ビュー→監視→監視[ステータス]を選択して、ステータスビューを表示します。
監視ノードに障害が発生したなどの理由で、PING応答が無くなると、赤色で[危険]が表示されます。
監視ノードからのPING応答が開始されると、黄緑色で[情報]が表示されます。
以上で、監視ノードの設定は終了です。
まとめ
ここまで、監視サーバーおよび、管理クライアントの構築方法と、基本的な監視設定について解説しました。後編では、監視ノードのエージェント監視設定の方法について解説します。