死活監視ツール「hinemos」のインストール

    

死活監視ツールとは

簡単にいうと、CPUやメモリやストレージの空き容量を監視したり、特定のポートを監視しサービスが動作しているかなどを監視する為のツール。異常を検出した場合は、指定したメールアドレスに通知してくれたりします。

監視の内容について

ほとんどの監視ツールは、CPUやメモリの利用状況については「SNMP」という仕掛けを用いて他端末の情報を収集します。SNMPはLinux系OSでもWindowsでも導入可能なサービスですが、ポート161/162を用いて通信する為、監視対象となるマシンはSNMPの導入と、ファイヤーウォールの設定が必要になります。

hinemosについて

オープンソースで公開されているツールで、死活監視機能もありますがバッチ処理の実行管理なども含めた統合運用管理機能です。開発元はNTTデータです。
hinemosは「Hinemosマネージャ」、「Hinemosエージェント※1」、「Hinemosクライアント」というソフトウェアに分かれていますが、ここでは「Hinemosマネージャ」と「Hinemosクライアント」を用います。

各ソフトウェアの役割

Hinemosマネージャ

監視対象端末の定義、監視対象端末より情報収集を行い保持する。

Hinemosクライアント

マネージャからデータを取得しグラフ描画を行ったり、マネージャの設定を行う

※1 Hinemosエージェントを導入すると監視対象端末について細かくデータ取得できるようになる。
ここではSNMPで採取できる範囲で監視設定を行う為割愛します。

利用シーン

本番環境はもちろん、テストフェーズから使えます。
CPUなどのリソースの監視の他、一定期間毎にSQLを投げその結果の値をグラフ化したりすることも可能です。これによりDBセッション数の確認、カーソル数などの監視を行うことが可能です。テストフェーズ時から利用することでリークなどを早期に検出することができます。

前提

Hinemosマネージャを導入するマシンは監視対象サーバと別に用意する。

理由はHinemos自身がPostgreSQLをインストールすることや、ポート8080を使用するのでtomcatあたりと重複してしまうことからです。mysql + apache(nginx) + PHPみたいな構成では問題ないかもしれません。

という事で下記のマシンが存在するものとします。

・Hinemosサーバ (CentOS7)

・監視対象サーバ[WEB/DB兼用] (CentOS7)

・クライアントマシン (Win10PRO)

Hinemosサーバの設定

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

# Hinemosマネージャを動作させる際に必要となるパッケージ
yum install vim-common

# Hinemosマネージャのセルフチェックに必要となるパッケージ
yum install net-snmp

# Hinemosマネージャを動作させる際にインストールを推奨するパッケージ
yum install java-1.7.0-openjdk-devel
yum install net-snmp-utils
yum install sblim-wbemcli

ロケール設定の確認

VMのイメージをダウンロードした場合などに確認する。

localectl status

LANG=ja_JP.UTF-8でない場合は下記を実行する

localectl set-locale LANG=ja_JP.utf8
source /etc/locale.conf

Hinemosのインストール (rootで作業)

wget https://osdn.jp/projects/hinemos/downloads/66207/hinemos-manager-5.0.3-1.el7.x86_64.rpm
rpm -ivh hinemos-manager-5.0.3-1.el7.x86_64.rpm

リンクが古い場合や別OSにインストールする場合は下記URLより取得
https://ja.osdn.net/projects/hinemos/releases/

Hinemosマネージャの起動

systemctl start hinemos_manager
systemctl enable hinemos_manager

監視対象サーバの設定

監視対象サーバにはHinemosマネージャとリソース情報を連携できるように、snmpをインストールしポートをあけておきます。

SNMPインストール

yum install net-snmp
yum install net-snmp-libs
yum install net-snmp-utils

SNMP起動

systemctl start snmpd.service
systemctl enable snmpd.service

ファイヤーウォールの設定

# SNMPのポート161を解放
firewall-cmd --add-port=161/udp --zone=public --permanent

# ファイヤーウォール再起動
systemctl restart firewalld

疎通確認

# 監視対象マシンから (サービスの起動確認)
snmpwalk -c public -v 2c 127.0.0.1 .1.3.6.1.2.1.1

# hinemosサーバから (ポートの解放確認)
snmpwalk -c public -v 2c 管理対象マシンのIPアドレス .1.3.6.1.2.1.1

クライアント端末の設定

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

下記URLより環境に応じたクライアントを取得する

https://ja.osdn.net/projects/hinemos/downloads/
ここでは下記のURLからクライアントを取得
https://ja.osdn.net/projects/hinemos/downloads/66207/hinemos-client-5.0.3-1.win64.zip/

Windowsの場合解凍した後インストーラを起動しインストール作業を行います。

※実行にはJavaの実行環境が必要なのでインストールしておきます。

起動&接続

hinemosクライアントを起動するとマネージャにログインする為の接続情報を入力する画面が表示されます。

下記のように入力します。

hinemos

ユーザID: hinemos

パスワード:hinemos

接続先URL:http://[マネージャIP]:8080/HinemosWS/

 

無事にログインできれば作業終了です。

具体的な設定は別記事として投稿します。