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

Hinemosのインストール

 それでは、Hinemosのインストールや環境設定について紹介していこう。まず、監視用サーバーとして利用するマシンにHinemosマネージャをインストールしていく。

必要なパッケージのインストール

 Hinemosの実行にはJavaの実行環境が必要だ。Hinemosのインストール時には必要なパッケージのチェックが行われるので、事前にインストールを行っておく必要がある。Java環境がインストールされていない場合、次のようにしてインストールしておく。

# yum install java-1.6.0-openjdk

 また、SourceForge.JPのHinemosプロジェクトで配布されているHinemosマネージャは32ビット版のみだ。64ビット環境にもインストールは可能だが、その場合あらかじめ32ビット版の関連ライブラリをインストールしておく必要がある。筆者が検証したところ、CentOSのデフォルト環境ではreadlineライブラリの32ビット版が不足していたので、こちらもインストールしている。

# yum install readline.i686

Hinemosマネージャのダウンロードとインストール

 HinemosマネージャはSourceForge.JPのHinemosプロジェクトからダウンロードできる。記事執筆時点での最新バージョンは4.0.2で、「hinemos_manager-4.0.2_rhel6_32.tar.gz」がダウンロードすべき配布アーカイブだ。

 ダウンロードしたアーカイブファイルを適当なディレクトリに展開し、含まれる「manager_installer_JP.sh」スクリプトをルート権限で実行するとインストールが開始される。

# ./manager_installer_JP.sh

-------------------------------------------------------
   Welcome to the installation for Hinemos Manager
                   Version 4.0.2

       Copyright (C) 2012 NTT DATA Corporation
-------------------------------------------------------

Hinemosマネージャのインストールを開始します。よろしいですか?(Y/N デフォルト:Y) :
 :
 :

 インストーラではいくつかの質問が提示されるが、基本的にはすべてデフォルトのままで問題ない。途中で「hinemos」ユーザーを作成する個所でパスワードの入力が求められるが、ここでは適当なパスワードを設定しておこう。

ユーザ hinemos の確認中...
グループ hinemos を作成しました。
New password: ←パスワードを入力する
Retype new password: ←再度同じパスワードを入力する
Changing password for user hinemos.
passwd: all authentication tokens updated successfully.
ユーザ hinemos (グループ hinemos)を作成しました。

 なお、パッケージが不足しているなどのエラーでインストールが中断された場合、Hinemosが使用するPostgreSQLなどのプロセスが起動したままの状態になることがある。この場合、再インストールはこれらのプロセスを終了させてから行わなければならない。インストールに失敗した場合、psコマンドなどでプロセスをチェックして所有者が「hinemos」になっているプロセスを終了させ、その上でHinemosのインストール先ディレクトリ(デフォルトでは/opt/hinemos)を削除してから再度インストールすると良いだろう。

メール通知の設定

 Hinemosでは、メールを使って管理者に対し通知を行う機能が搭載されている。この機能を利用する場合、あらかじめHinemosマネージャ側で送信先メールアドレスなどの設定を行っておく必要がある。なお、メールの送信はHinemosマネージャが持つSMTPクライアント機能を利用するため、Hinemosマネージャが動作しているマシン上でSMTPサーバーが稼働している必要はない。

 メールサーバーの設定は、Hinemosマネージャのインストールディレクトリ以下のetc/jboss/mail-service.xml(デフォルトでは/opt/hinemos/etc/jboss/mail-service.xml)ファイルに記述する(リスト1)。最低限変更が必要な部分については太字で示してある。

リスト1 メールサーバー関連の設定が記述されているmail-service.xmlファイル
  <mbean code="org.jboss.mail.MailService"
         name="jboss:service=Mail">
    <attribute name="JNDIName">java:/Mail</attribute>
    <attribute name="User">nobody</attribute>
    <attribute name="Password">password</attribute>
    <attribute name="Configuration">
      <!-- A test configuration -->
      <configuration>
        <!-- Change to your mail server prototocol -->
        <property name="mail.store.protocol" value="pop3"/>
        <property name="mail.transport.protocol" value="smtp"/>

        <!-- Change to the user who will receive mail  -->
        <property name="mail.user" value="nobody"/>

        <!-- Change to the mail server  -->
        <property name="mail.pop3.host" value="pop3.nosuchhost.nosuchdomain.com"
/>

        <!-- Change to the SMTP gateway server -->
        <property name="mail.smtp.host" value="smtp.nosuchhost.nosuchdomain.com"/>

        <!-- Use SMTP AUTH or not -->
        <property name="mail.smtp.auth" value="false"/>

        <!-- The mail server port -->
        <property name="mail.smtp.port" value="25"/>

        <!-- Change to the address mail will be from  -->
        <property name="mail.from" value="nobody@nosuchhost.nosuchdomain.com"/>

        <!-- Enable debugging output from the javamail classes -->
        <property name="mail.debug" value="false"/>

        <property name="mail.smtp.timeout" value="300000"/>
      </configuration>
    </attribute>
    <depends>jboss:service=Naming</depends>
  </mbean>

</server>

 このファイルで設定が必要なのは表2の部分だ。これらを適切に変更しておこう。

表2 mail-service.xmlファイルでの設定項目
設定項目説明
<property name=”mail.smtp.host” value=”smtp.nosuchhost.nosuchdomain.com“/>「value=””」の値にメールを送信するSMTPサーバーのホスト名を指定する
<property name=”mail.from” value=”nobody@nosuchhost.nosuchdomain.com“/>「value=””」の値にメールの送信元メールアドレスを指定する
<property name=”mail.smtp.auth” value=”false“/>SMTP AUTHを使用する場合、「value=”true”」を指定する
<attribute name=”User”>nobody</attribute>SMTP AUTHを使用する場合、認証に使用するユーザー名を「nobody」の代わりに指定する
<attribute name=”Password”>password</attribute>SMTP AUTHを使用する場合、認証に使用するパスワードを「password」の代わりに指定する

 なお、この設定ファイル中にはpop3関連の設定も記載されているが、POP3関連の機能は使用しないのでデフォルトのままで構わない。

 また、メールの送信元情報はHinemosマネージャのインストールディレクトリ以下のetc/hinemos.propertiesファイル(デフォルトでは/opt/hinemos/etc/hinemos.properties)に記述されている(リスト2)。

リスト2 メールの送信者に関する設定が記述されているhinemos.propertiesファイル
## Notify (Mail) : Mail Header
common.mail.from.address=admin@hinemos.com
common.mail.from.personal.name=Hinemos Admin
common.mail.reply.to.address=admin@hinemos.com
common.mail.reply.personal.name=Hinemos Admin
common.mail.errors.to.address=admin@hinemos.com

## Notify (Mail) : Mail Resending
common.mail.retry.count=0
common.mail.retry.sleep=10000

 このファイルの表3の個所(太字で示している個所)について、適切なものに変更しておく。

表3 hinemos.propertiesファイルでの設定項目
項目名設定
common.mail.from.addressメールの送信元アドレス
common.mail.from.personal.nameメールの送信者名
common.mail.reply.to.addressメールの返信先アドレス
common.mail.reply.personal.nameメールの返信先の名前
common.mail.errors.to.addressメール配送エラーが発生した際に通知が送信されるメールアドレス
common.mail.retry.countメール送信に失敗したときの再送回数
common.mail.retry.sleep再送時に待機する時間(ミリ秒)

Hinemosマネージャの起動/停止

 Hinemosマネージャを起動するには、Hinemosのインストール先ディレクトリ(デフォルトでは/opt/hinemos)以下のbinディレクトリにあるhinemos_start.shを実行する。

# /opt/hinemos/bin/hinemos_start.sh
waiting for Hinemos Manager to start...

waiting for PostgreSQL to start...
PostgreSQL started
net.core.rmem_max = 8388608
net.core.rmem_default = 8388608
JBoss configuration assigned : hinemos

removing temporally data (Export) before JBoss start

waiting for JBoss to start...
.....done
JBoss started

Hinemos Manager started

 Hinemosマネージャを停止させるには、同じディレクトリにあるhinemos_stop.shを実行する。

# /opt/hinemos/bin/hinemos_stop.sh
waiting for Hinemos Manager to stop...

waiting for JBoss to stop...
Thread Dump 1
Thread Dump 2
Thread Dump 3
Shutdown message has been posted to the server.
Server shutdown may take a while - check logfiles for completion
.done
JBoss stopped
waiting for PostgreSQL to stop...
PostgreSQL stopped

Hinemos Manager stopped

 Red Hat Enterprise Linuxではserviceコマンドやchkconfigコマンドを用いてサービスを管理するのが一般的だ。Hinemosにはこれらに対応する設定ファイルが用意されており、これを/etc/init.dディレクトリ以下にコピーすることで、serviceコマンドやchkコマンドでHinemosマネージャの起動/停止を管理できるようになる。

# cp /opt/hinemos/sbin/service/hinemos_manager /etc/init.d/

 これで、以下のようにしてHinemosマネージャを起動/停止できるようになる。

# service hinemos_manager start
# service hinemos_manager stop

 また、chkconfigでサービスの起動/停止を管理するには次のようにする。

# chkconfig --add hinemos_manager

 これで、chkconfigでサービスの起動設定が可能になる。

# chkconfig --list hinemos_manager
hinemos_manager 0:off   1:off   2:on    3:on    4:on    5:on    6:off

Hinemosマネージャのアンインストール

 Hinemosマネージャをアンインストールしたい場合、配布アーカイブ内に用意されているmanager_uninstaller_JP.shを実行すれば良い。もしくは、手動でHinemosマネージャのインストールディレクトリおよびhinemosユーザー/グループを削除しても良い。

ファイアウォールの設定

 Hinemosマネージャはクライアントからの接続待受に8080番ポートを使用する。そのため、このポートにクライアントからアクセスできるようファイアウォールの設定を行っておこう。

Hinemosクライアントのインストール

 Hinemosクライアントについても、SourceForge.JPのHinemosプロジェクトページから入手できる。Hinemosクライアントについてはインストーラ(.msi)形式で配布されており、Windows 2008 Server版と、Windows 7の32ビットおよび64ビット版が用意されている。環境に応じたものをダウンロードしよう。

 ダウンロードしたインストーラを実行するとインストールウィザードが起動するので、指示に従ってウィザードを進めていく(図2)。

図2 Hinemosクライアントのインストーラ
図2 Hinemosクライアントのインストーラ