Hinemos ver5.0の監視設定

## [概要]
Hinemos ver5.0でのエージェントインストールまで完了したので、PING監視、リソース監視、カスタム監視まで実施したいと思います。


下記の同環境を使うので、それを構築済みなのを前提に話を進めます。
[Hinemos ver5.0のインストールからエージェントインストールまで](http://qiita.com/mackerel/items/8f9fb87938cc3083db89)

うまくかない場合は、↓を参考にしてみてください。
[Hinemos ver5.0のインストールからエージェントインストールまで](http://qiita.com/mackerel/items/8f9fb87938cc3083db89)

## [事前準備]
下記を参考に環境を構築しておいてください。
[Hinemos ver5.0のインストールからエージェントインストールまで](http://qiita.com/mackerel/items/8f9fb87938cc3083db89)

## [作業内容]
※すべてroot権限で構築していますが、表記を統一するために、コマンドの頭には`$`で統一しています。

### スコープ設定
スコープとは、サーバを管理しやすいようにするためグルーピングする機能のことです。
監視する際に、監視対象をスコープを設定できるため、DBサーバのみDB監視設定を行うといったことができるようになります。

![Hinemos_クライアント_と_Kobito.png](https://qiita-image-store.s3.amazonaws.com/0/43231/e2bb509a-245b-7fe8-c7cc-fd9eac19878a.png "Hinemos_クライアント_と_Kobito.png")

マネージャ（マネージャ1）を選択した状態で、「➕」ボタンをクリックします。
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/4dec760d-4685-6271-3d41-2370a7c098f2.png "Hinemos_クライアント.png")

必要項目を入力します。
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/b105088b-ac99-b1fd-670b-2c350183350f.png "Hinemos_クライアント.png")

|名前|値|
|---|---|
|ファシリティID|管理対象ノードのファシリティIDと同様、個々のスコープを識別するために付与する文字列<br>システムないで一意になるように付与する必要があり、管理対象ノードとも胸中情報として扱われるので、同一ファシリティIDは付与できないので注意すること|
|ファシリティ名|管理対象んーどのファシリティ名と同様、任意に設定が可能。管理者から見てわかりやすい名前をつけるのがよい|

作成した、「CENTOS_SCOPE」を選択し、矢印のところをクリックします。
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/40a87396-9b1c-8f3b-1c05-db968b150a47.png "Hinemos_クライアント.png")

shiftを押しながらで、複数選択ができるので2つとも選択して、「割当て」をクリック
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/efebd23c-6882-7f24-d814-54279ae882ff.png "Hinemos_クライアント.png")

### 監視設定について
監視設定のときに重要なのが、いつ通知をするかだと思います。
たとえば、PING監視で一瞬のネットワーク瞬断によるアラートでは重要度は、高くないかと思います。瞬断が短い間に複数回発生するようでは原因を調べ対応する必要があるとは思いますが、1回程度では、アラートは飛ばす必要はないと考えています。
そのようなときに対応できるようにHinemosは、よく考えられており、2回以上検知したらアラートといったこともできるようになっています。

ざっくりですが、初期設定されているアラートについて見てみようと思います。

「パースペクティブ」から「監視設定」を表示させると下記のような画面が表示されます。
赤いカッコのところがデフォルで設定されている監視設定です。
※独自の設定も追加できますが、よく使うであろう設定は事前に組み込まれています。

* 基本的によく使う通知種別
	* ステータス通知
		* 現在の最新のサーバ情報を管理画面上に表示
	* イベント通知
		* ステータス通知と違い、最新の情報以外も表示。ある程度の時系列表示も可能となる
	* メール通知
		* アラートが来た際に、メール通知してくれる

Hinemosが用意している監視設定で、TRAPと付いているものは、即時発砲系の設定で、POLLINGとついているものは、2回目以降に通知を行う設定となっています。
一通り、設定は目を通しておくことをおすすめします。

![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/2e577172-e7ef-62d3-e5f5-83e7f2a30ebe.png "Hinemos_クライアント.png")



* 今回説明しない通知種別
	* ジョブ通知
	* ログエスカレーション通知
	* コマンド通知
この通知に関しては、自分があまり使いそうになかったので、使う時があったらまとめようと思います(；・∀・)


### PING監視設定
Hinemosにログインし、「パースペクティブ」から「監視設定」を表示させます。
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/0b7826a8-ea1b-ebe3-d3f7-6fae305d2939.png "Hinemos_クライアント.png")
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/3d9d0e90-2f65-1ac4-0dad-ef6f5fbd2b1e.png "Hinemos_クライアント.png")

矢印の「➕」をクリックし、「監視種別」を表示させます。
「PING監視（数値）」を選択し、「次へ」
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/fe525a04-a3cd-45b9-ab43-4722da128164.png "Hinemos_クライアント.png")

PING監視の入力項目
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/3d9d0e90-2f65-1ac4-0dad-ef6f5fbd2b1e.png "Hinemos_クライアント.png")

|名前|値|
|---|---|
|監視項目ID|監視項目を登録する際にユーザが定義する文字列。<br>監視結果に表示されるので、監視内容を判別できるようにするのがよい。<システム内で一意になるようにする必要がある>|
|説明|PING応答監視|
|スコープ|監視対象のスコープ or ノードを選択する|
|条件:間隔|監視する間隔を指定。Hinemosでは、大量の監視を行っている場合の負荷を考慮し、5分以上の設定を推奨している。|
|通知ID|通知方法として使用する通知設定の通知IDを指定します。<br>Hinemosクライアントのへの通知や、メール通知の設定が可能|
|アプリケーション|運用に合わた任意の文字列を入力する。これも、通知結果に表示されるので、わかり易い名前がよい。|
|収集|収集にチェックを入れると、数値監視の結果を蓄積してくれる。いわゆるDB保存|

続いて、「監視種別」から「リソース監視（数値）」を選択し「次へ」
![Hinemos_クライアント_と_Kobito.png](https://qiita-image-store.s3.amazonaws.com/0/43231/172a707a-2677-b10e-8ca1-42ae68b805e2.png "Hinemos_クライアント_と_Kobito.png")

### CPUリソース監視
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/58e80ace-de9e-25dc-6eec-c59fd0d1581c.png "Hinemos_クライアント.png")

|名前|値|
|---|---|
|監視項目ID|監視項目を登録する際にユーザが定義する文字列。監視結果に表示されるので、わかり易いものにするのが良い。システム内で一意にする必要があるので注意|
|スコープ|監視対象のスコープ or ノードを選択|
|条件：間隔|監視する間隔を指定。Hinemosでは、大量の監視を行っている場合の負荷を考慮し、5分以上の設定を推奨している。
|監視項目|監視したい項目を選択|
|収集時は、内訳のデータも合わせて収集する|チェックを入れると、内訳があるデータの場合はその情報も収集する。<br>(CPUの場合は、ユーザ、システムが占める割合など)
|監視：判定|取得した値の警告、危険の判定基準を設定する。|
|通知：通知ID：|通知IDは、メール通知や、様々な通知タイプを選ぶことができる。<br>タイプがステータス通知の場合は、最新の状態のみ必要な場合に利用する。<br>タイプがイベントの場合は、最新の結果だけでなく、過去の状態も保存するため履歴として確認したい場合に使用する。<br>※この後出てくる監視履歴の「監視履歴[ステータス]」にタイプのステータス通知が表示され、「監視履歴」[イベント]に監視タイプイベントに表示される
|アプリケーション|運用にあわせ任意の文字列を設定することができる。監視結果に表示されるので、わかりやすものにするのが良い|
|収集|収集にチェックを入れると、数値監視の結果を蓄積してくれる。いわゆるDB保存|

### カスタム監視
カスタム監視とは、コマンドやスクリプトの実行結果を監視することができる監視設定です。
簡単なプロセス監視であれば、カスタム監視で可能となっています。
標準機能で、プロセス監視がありますが、SNMP機能で実施するため、カスタム監視のほうが簡単に実施できるかと思います。

* カスタム監視する際に知っておいたほうがいいこと
	* コマンドの実行ユーザは、エージェントの起動ユーザの権限となる
	* コマンド結果を受け取る際は、標準出力に出力する必要がある
	* 結果を取得するためのフォーマットが決まっている
		* key,value

「監視種別」から「カスタム監視（数値）」を選択し「次へ」
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/cede98f0-9666-1d3b-063c-0fb804508ce4.png "Hinemos_クライアント.png")

試しに`crond`のプロセスを監視させてます。
コマンドサンプル
`echo -n "CronProcess," ;ps -ef | grep crond | grep -v grep | wc -l`
基本的に、`CronProcess`とgrepするプロセスの名前を変えればいくらでも他のプロセスを監視ができます。

監視する際のしきい値も下記のようにすれば、OKです。
下記の画像では、プロセスが1のみ情報、2〜99で警告、0または100以上危険となるためプロセスが死んだからアラートが飛ぶようになっています。

![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/5aa039a4-fe61-1aef-00e0-8ad0a55c2dff.png "Hinemos_クライアント.png")

登録された監視設定が登録されていることを確認してみましょう。
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/417f0ad8-7282-17be-23d8-6ead5528087e.png "Hinemos_クライアント.png")

次に、取得したデータがちゃんとグラフ化されているか確認してみましょう
「パースペクティブ」から「性能」選択して、「OK」をクリック
![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/697e46b8-4b7a-ad22-1fbc-e38ab53e62df.png "Hinemos_クライアント.png")

赤く表示されているところをダブルクリックすると、下にグラフが表示されるのでデータが取得できることを確認してみてください。
他に登録した、「CPUリソース監視」や「crond監視」も同じように確認ができます。

![Hinemos_クライアント.png](https://qiita-image-store.s3.amazonaws.com/0/43231/3f013dce-a378-3b01-aabb-9ff3b31e95a7.png "Hinemos_クライアント.png")

## [事後確認・作業]
グラフ化されていることをしっかり確認する

## お詫び
編集履歴に残ってい前の設定では、Hinemosマネージャと通信ができずカスタム監視ができませんでした。
もし、また間違っているところを見つけたらコメントや編集リクエストでこっそり教えていただけると助かります！よろしくお願いします！