2014年02月05日 22時14分
前提条件は、前回の記事と同一です。
前回構築したシステムでは、サーバー、クライアントの2台のサーバーの監視を行っていますが、監視データのサマリーを見ると、軽度の障害として検出されたサービスやアプリケーションがあります。
検出された障害の中には、サーバー上で稼働していないサービスも含まれていますので、テンプレートを変更して、誤検出を修正します。
テンプレートの修正を含む全ての作業は、Zabbixサーバーの管理画面で行います。
設定-ホストを選択し、現在使用中のテンプレートを確認します。
設定-テンプレートを選択し、現在使用中のテンプレートを表示した後、すべて複製を選択します。
次に、テンプレートの名前を設定します。ここでは、Template_CentOSとしています。
保存すると、複製されたテンプレートが表示されます。
テンプレートの複製は、複製元のテンプレート(ここでは、Template_Linux)を直接変更してしまうと、他の監視サーバーにも影響を及ぼす可能性があるため、複製したテンプレートを修正しています。
使用中のテンプレートに登録されているホスト名を削除します。
変更前
変更後
複製したテンプレートにホスト名を登録します。
これにより、複製したテンプレートとホストがリンクします。
サーバー上で仮想していないサービスを検出している場合、サービスを無効化することで誤検出を修正できます。
ここでは、FTP/IMAP/NNTP/POP3を無効化しています。
システムステータスを確認すると、軽度の障害の数が減少したことが確認できます。
サーバー上で稼働していないプロセスを検出してる場合、プロセスを無効化することで誤検出を修正できます。
ここでは、inetdを無効化しています。
サーバー上で稼働いるプロセス名が異なる場合、プロセス名を修正します。
ここでは、syslogdの説明およびキーを下記のとおり修正しています。
変更前
Number of running processes syslogd proc.num[syslogd]
変更後
Number of running processes rsyslogd proc.num[rsyslogd]
システムステータスを確認すると、軽度の障害の数が減少したことが確認できます。
同様に、zabbix_serverのキーを下記のとおり修正しています。
変更前
proc.num[zabbix_server]
変更後
proc.num[zabbix_server_mysql]
システムステータスを確認すると、軽度の障害の数が減少したことが確認できます。
zabbix_server_mysqlプロセスは、Zabbixサーバー上のみで稼働しているため、監視対象サーバー上で検出を無効にします。
この画面では、inetdがテンプレート上で無効にされているのに対して、zabbix_server_mysqlは、zabbix-clientのみ無効となっているため、zabbix-serverでは、inetdのみ無効となります。
以上で、誤検出が修正され、監視ステータスが正常になります。
Zabbixでは、監視対象として追加したサーバーのグラフの作成テンプレートが登録されません。このため、テンプレートまたは、ホストごとにグラフ作成を行います。ここでは、ホストにグラフを登録しています。
メール通知は、監視対象のサーバーに障害が発生した際に、メールで通知を行うことができます。
Zabbixでは、通知を行う方式をメディアタイプとして管理しているため、メール通知を行うためには、メール設定を行う必要があります。
管理-メディアタイプから、Emailを選択し、SMTPサーバ、SMTP helo、送信元メールアドレスを設定します。
ここでは、下記のとおり設定しています。
項目 | 設定内容 |
---|---|
SMTPサーバ | localhost |
SMTP helo | zabbix-server.vagrantup.com |
送信元メールアドレス | zabbix@zabbix-server.vagrantup.com |
管理-ユーザから、ユーザグループZabbix administratorsのユーザを選択し、ユーザAdminをクリックします。
メディア横の追加ボタンをクリックすると、新規メディアが登録できますので、タイプにEmailを選択し、送信先のメールアドレスを指定します。
ここでは、送信先にvagrant@zabbix-server.vagrantup.comを指定しています。
Zabbixでは、通知をアクションとして登録することで、障害時のメール通知を行うことができます。
設定-アクションから、アクションの作成をクリックし、アクションの名前を設定します。
次に、アクションのオペレーションの新規ボタンをクリックして、オペレーションの編集を、下記のとおり設定します。
項目 | 設定内容 |
---|---|
オペレーションのタイプ | メッセージの送信 |
メッセージの送信先 | シングルユーザ |
メッセージの送信先に、シングルユーザを選択し、選択ボタンをクリックすると、ユーザ選択画面が表示されますので、Adminを選択して、追加ボタンをクリックします。
アクションのコンディションでは、計算のタイプを「OR」に設定し、コンディション(A)、(B)ともにチェックした後、「保存」ボタンをクリックすると、アクションが追加されます。
Zabbixクライアントの監視エージェントを停止して、通知メールが送信されるか確認します。
Zabbixクライアント上で、エージェントサービスを停止します。
$ sudo service zabbix-agent stop
しばらくすると、Zabbixサーバー上のユーザーにメールが送信されますので、メールクライアントで確認します。
$ mutt
管理画面でも、障害が発生したことが確認できます。
ここまで、Zabbixを運用する際に設定すべきポイントについて解説しました。Zabbixは機能が豊富ですので、本記事で全てを解説できた訳ではありません。今回は、最小限の機能を解説しましたが、記事を参考にして、解説できなかった機能について、試して見て下さい。