4.8 監視の閾値を設定するには？

（2016年時点での内容をアーカイブとして掲載しているため、一部の掲載内容が最新情報とは異なる場合がありますので、ご了承ください。最新のIBM Cloudのアップデート情報は[IBM Cloud アップデート情報](https://www.ibm.com/cloud-computing/jp/ja/cloud-update/) や [柔らか層本](https://ibm.ent.box.com/v/ibmcloud-yawaraka)をご参照ください。）

概要
サーバーの死活状況やリソース状況に対する監視を行うサービスを利用できます。 提供されている監視サービスの種類と注文方法のほか、実際の運用で必要となるリソースグラフの見方や、例としてサーバーのSSHポートの応答とディスク使用率の増加を閾値とする通知メールを設定する方法をご紹介します。
 

2種類の監視と注文方法
利用可能な監視サービスは、基本監視（Basic）と拡張監視（Advanced）の2種類です。 基本監視はサーバーやポートに対する稼働状況の監視を行い、拡張監視はサーバー内のリソース状況やデーモンの稼働状況を監視します。 閾値を超えるとアラートメールが送信され、基本監視であれば自動的にアラート発生のチケットも作成されます。 それぞれの監視は無償で利用できますが、オプションを追加することで、より高度な監視が可能です。

監視サービスを利用するには、サーバーの注文時にオプションを選択するか、後からチケットを発行して追加依頼をすることもできます。 選べる監視機能は次の通りです。

基本監視（Basic）
サーバー注文時に「Service Addons」欄の「MONITORING」と「RESPONSE」から選べます。

 監視サービス

「Host Ping」… サーバーのIPアドレスに対するPINGの応答監視を無料で使えます。
「Host Ping and TCP Service Monitoring」…HTTPやSSHなどサービス用ポートの応答を監視します。

通知・対応サービス

「Automated Notification」… 問題発生時に自動的にメールを送信するもので、無料で使えます。
「Automated Reboot from Monitoring」… 問題発生時に自動的に再起動を行います。
「NOC Monitoring」… SoftLayerのデータンセンター担当による24時間の有人監視サービスです。

拡張監視（Advanced）

サーバー注文時に「System Addons」欄の「ADVANCED MONITORING」から選べます。 パッケージの違いにより、料金と監視項目が異なります。 詳細はSoftLayerのサイト（ http://www.softlayer.com/server-monitoring ）をご確認願います。

「None」… 拡張監視を利用しないときに選択します。 サーバーの起動が速くなるので、監視を使わないときはおすすめします。
「Basic」 … プロセスの稼働状況やCPU・ディスク容量・メモリ容量のリソースを監視し、無料で使えます。
「Advanced」 … Basicの機能に加え、ネットワーク通信量やファイルシステムの情報などを監視します。
「Premium Application」 … Basic・Advancedの機能に加え、MySQLやTomcatのようなミドルウェアのほか、指定URLの状況などを監視します。


設定画面を開くには？
基本監視と拡張監視の設定画面は異なります。 監視の確認や設定を行うためには、カスタマーポータル上のメニューで「Devices」->「Monitoring」をクリックします。 画面には、各々のサーバーに対して、基本監視が何件設定されてるか、拡張監視に対する設定メニューが表示されます。 基本監視の設定を行うには、サーバーの列の「Monitors」をクリックします。 拡張監視の設定は「Actions」をクリックします。

サーバーの一画面から、サーバー名をクリックし、表示される設定画面から「Monitoring」タブをクリックしても監視設定を参照できますが、表示されるのは基本監視のみですので、注意してください。


SSHのポートを監視するには？
サーバーに外部からログインできない状況に陥ったとき、自動的に再起動をかけ、高負荷状態でスローダウンしている状態から復旧することができます。 あるいは、クラスタのメンバの1つがハングアップしている状態を早期に検出し、再起動によって復帰させることもできます。 ここでは、具体的にSSHのポート(TCP/22)を監視し、応答がなければサーバーの再起動を自動的に行う設定を紹介します。

サーバー注文時に、「Service Addons」欄の「MONITORING」は「Host Ping and TCP Service Monitoring」を選んでおきます。 カスタマーポータルの「Devices」->「Monitoring」をクリックし、対象サーバーのBASIC列にある「1 Monitor」をクリックします。

基本監視の詳細画面では「Add Monitor」タブをクリックし、SSHの監視設定を行います。 それぞれのプルダウンメニューは次のように選択して「Add Monitor」ボタンをクリックします。
 

「IP Address」… 対象サーバーのIPアドレスです。 パブリック側はファイアウォールで塞ぐことがあるので、プライベート側を選びます。
「Monitor Type」… どのサービスを監視するかの選択では、「SSH」を選びます。
「Nofity ?」… 通知と再起動を行いたいので「Notify and Reboot」を選びます。
「Notify Wait」…通知までの間隔は、すぐに行いたいので「Immediately」を選びます。

正常に登録されると、初期状態から設定されているSERVICE PINGに加え、SSHの監視項目が追加されていることが分かります。

実際に再起動がかるかどうかの動作確認は、SoftLayerの監視サーバーからSSHが確認できないようにする方法があります。 サーバーにログインし、次のようにiptablesコマンドを実行します。
 
```
# /sbin/iptables -A INPUT -s 10.0.0.0/8 -p tcp --dport 22 -j DROP
```

実行してしばらくたつと、障害が検出されサーバーの再起動が自動的に実行されます。 そして、障害が発生したという内容のメール通知と、再起動を行ったというチケットも自動的に発行され、状況を確認することができます。

注意点としては、高負荷状態が続いてSSHが復旧しない場合、また再起動が発生してしまいます。 その様な場合に備え、再起動後に負荷が上がらないようプログラムやミドルウェア等が自動起動しないようにする検討もお願いします。

ディスク容量の使用率を監視するには？
ディスク使用率を監視してアラートのメールを送信するには、拡張監視を使います。 ディスクだけでなく、メモリやCPU使用率などシステム・リソースの監視は、無償で利用できる拡張監視のBasicに含まれています。 ここでは、ディスク容量が70%になったら通知する方法を見ていきます。

サーバー注文時に、「ADVANCED MONITORING」欄は「Monitoring Package - Basic」を選んでおきます。 カスタマーポータルの「Devices」->「Monitoring」をクリックし、対象サーバーのAdvanced列にある「Actions」->「Configure Agent Reports」をクリックします。

次の画面では「Agents」のプルダウンメニューから「Cpu, Disk, and Memory Monitoring Agent」をクリックし、「Sections:」は「Disk Profile」をクリックします。 「Profiles」から「Add Agent Config...」をクリックします。

ルート領域のディスク容量70%超過をエラーとして通知するには、「Disk Path」は「/」を選び、「Disk Usage as Percentage」と「Disk Usage Error」にチェックが入っていることを確認します。

「Disk Usage Error」欄に入力する数値は、「ファイルシステムの空きの割合」を指定します。下記の例では30という値を入れていますが、これは、ファイルシステムの空きが30%を切ったら通知（＝ファイルシステム使用率が70%を超えたら通知）という意味になります。

入力が終わったら「Add Agent Config」ボタンをクリックします。

それから通知先の設定をします。 監視一覧画面に戻るので、対象サーバーで再び「Actions」->「Configure Agent Reports」をクリックします。 次の画面で「Agents」は「Cpu, Disk, and Memory Monitoring Agent」をクリックし、「Sections」は「Alarm Subscribers」を選びます。 それから「Select Users to Subscribe to Alerm」の下をクリックして、通知先のユーザーを選び「Add User」ボタンを押します。 最後に「Cancel」ボタンをクリックして、設定画面を閉じます。

動作確認をするには、仮のファイルをddコマンドで作成し、一時的にディスク使用率を高めます。 dfコマンドを実行して現在の容量を確認します。

```
# df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda2       25G  1.4G   22G   6% /
```

20GBのファイルを作成するには、次のようにします。

```
# dd if=/dev/zero of=/tmp/check.dat bs=1024 count=20000000
# df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda2       25G   21G  2.8G  89% /
```

ファイルを作成して数分待つと（15分間隔でチェックしています）、次のように容量の閾値を超えた通知メールが届きます。 ファイルを削除するコマンド「rm -f /tmp/check.dat」を実行すると、復帰したという内容のメールが届きます。
ディスク使用率の閾値を超えていない時でも、サイズの大きなファイルを作成・削除した際に、下記のようなDeltaErrorというアラートが届く事があります。ファイルシステム使用量の変化を監視するこの設定は、Advanced Monitoringのディスク監視でデフォルトで有効になっており、200MB以上の追加または削除が行われた時、DeltaErrorとして通知されます。


DeltaErrorの設定を変更したい場合、管理ポータルからは行えないため、OS上の設定ファイルを直接編集します。
例えば、CentOSの場合、/opt/nimsoft/probes/system/cdm/cdm.cfg が設定ファイルです。ファイルの中に、下記のようにDeltaErrorに関する設定箇所がありますので、この監視項目の有効/無効の設定や、閾値（何MBの変更があった時に通知するか）を指定します。

```
  <delta_error>
     active = yes
     threshold = 200
     message = DeltaError
  </delta_error>
```

ファイルの修正を行ったら、管理ポータルの「Devices」->「Monitoring」の対象サーバーの「Actions」->「View Agent Status」の画面を開き、「Cpu, Disk, and Memory Monitoring Agent」の「Actions」->「Restart」を選択して監視エージェントの再起動を行うことにより、変更を反映します。
 

参考：リソース推移グラフを表示するには？
拡張監視にBASIC以上を選択している場合は、CPUやディスク容量など、リソース状況の時系列グラフを表示できます。 ここでは例としてCPU使用率のグラフを表示します。 どのようなグラフを参照できるかは、注文している拡張監視の種類によって異なります。 詳細はSoftLayerのサイト（ http://www.softlayer.com/server-monitoring ）をご確認願います。

グラフを表示するには、カスタマーポータルの「Devices」->「Monitoring」をクリックします。 対象サーバーの列の「Actions」->「View Agent Reports」をクリックします。

「Agents:」から「Cpu, Disk, and Memory Monitoring Agent」を選び、「Sections:」は「CPU」を選びます。 「View By:」はグラフを表示する期間です。 そのあと、「Select metric to report on:」から表示したい項目にチェックを入れ、「Draw Graph」をクリックします。

あとは、画面を見ながら、知りたいリソースを選択したり、表示期間を調整してグラフを表示します。 グラフは右側が新しいデータですが、時刻CDT（米国中部時間）なので、日本時間との時差が15時間あることに注意してください。

グラフを参照したい場合は、監視対象に追加する必要があります。 設定した後のデータをグラフ化しますので、サーバーの利用開始後に、必要な監視の有効化をおすすめします。