Zabbixでサービス監視を始める手順と同じことを5分で実現する方法

サーバー上で稼働しているサービスを監視する事は、運用上欠かせない大切なことの一つです。 今回は、代表的なサーバー監視ツールであるZabbixを使って基本的なサービス監視のやり方を説明するとともに、 同じことをクラウドサービスで実現する方法についてご紹介いたします。

Zabbixでサービス監視を始める手順

今回使用する環境はAWS上に用意しています。

Zabbixサーバー CentOS8 / Zabbix5.0.4
監視対象サーバー Windows: Windows Server 2019

Linux: Amazon Linux2

監視対象サービス NTP(時刻同期)

1. Zabbixサーバーの構築

Zabbixサーバーの構築手順はこちらの記事をご確認ください。AWS上のCentOS 8にZabbix 5.0を構築する手順を詳しく説明しています。

2. Zabbixエージェントのインストール

Zabbixエージェントのインストール手順はこちらの記事をご確認ください。Windows編、Linux編に分けて詳しく説明しています。

3. サービス監視設定

サービス監視設定手順を紹介します。監視対象サーバーのOSにより少し異なるため、Windows編とLinux編にわけて紹介します。

Windows編

Windowsサーバーのサービス監視を設定します。本記事作成過程でサービスをストップさせますので、動作に大きな不具合が起きないように、時刻同期のNTPサービスについて登録したいと思います。まずは標準で用意されているテンプレートを探します。

[設定]→[ホスト]→[対象のWindowsサーバー](今回はWindows host)をクリックします。

Zabbixでサービス監視を始める手順Windows編01

[テンプレート]をクリックします。

Zabbixでサービス監視を始める手順Windows編02

新規テンプレートをリンクで[選択]をクリックします。

Zabbixでサービス監視を始める手順Windows編03

ホストグループで[選択]をクリックします。

Zabbixでサービス監視を始める手順Windows編04

[Templates/Modules]をクリックします。

Zabbixでサービス監視を始める手順Windows編05

[Template App NTP Service]をクリック、もしくはチェックして選択をクリックします。

Zabbixでサービス監視を始める手順Windows編06

リンクに追加されているのを確認し[更新]をクリックします。

Zabbixでサービス監視を始める手順Windows編07

画面が戻ってしまいますが、もう一度監視対象のテンプレートを見てみると、追加されているのが確認できます。

Zabbixでサービス監視を始める手順Windows編08

ダッシュボードを確認すると早速障害が発生しています。

Zabbixでサービス監視を始める手順Windows編09

NTPは最初から有効なのではと思うかもしれませんが、このNTPサービスというのはNTPサーバー機能の事を表しています。WindowsならNTPサーバーとしての設定をレジストリで行うことが出来ます。以下レジストリパスで制御出来ます。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer

Enabled

0で無効(初期値)
1で有効

[Enabled]の値に[1]を設定し、NTPサービスを再起動するとNTPサーバーが有効になります。Windowsでは[Windows Time]という名前で提供されています。

Zabbixでサービス監視を始める手順Windows編10

障害を見ると解決しているのが分かります。これでWindowsでの設定は完了です。

Zabbixでサービス監視を始める手順Windows編11

Linux編

Linuxの場合、同様の目的でサービスではなくプロセスを監視しますが、登録用サービステンプレートはWindowsと同じ名前の [Template App NTP Service]になっています。 それを使うことでWindowsと同様のNTP監視を実現できます。 登録方法は基本的に同じです。

[設定]→[ホスト]→[対象のLinuxサーバー](今回はLinux Server)をクリックします。

Zabbixでサービス監視を始める手順Linux編01

Windows編と同じ手順で[Template App NTP Service]を追加します。

Zabbixでサービス監視を始める手順Linux編02

ダッシュボードを見るとこちらでも障害が検知されました。

Zabbixでサービス監視を始める手順Linux編03

Windowsと同じようにNTPサーバー機能が有効になっていないと障害と認識されます。正常に戻すために有効化しましょう。今回検証で使用しているLinuxはAWS上で提供されているAmzonLinux2なので、導入されているNTPサービスはchronyになります。

ログインして[/etc/chrony.conf]を編集します。17行目あたりのallow(初期はコメントアウト)でNTPの問い合わせアクセスを許可することで時刻同期をサーバーとして受け付けます。

Zabbixでサービス監視を始める手順Linux編04

[systemctl restart chronyd]などでサービスを再起動すると、NTPサーバーが有効になり、Zabbix上でも障害が解決します。

Zabbixでサービス監視を始める手順Linux編05

設定は以上で完了です。

1. 通知設定(メール通知)

実際に障害を起こしてメールで通知させてみます。

[管理]→[メディアタイプ]→[Email(HTML)]をクリックします。

メール送信に必要な情報を入力して[更新]をクリックします。

右端の[テスト]をクリックします。

有効な送信先メールアドレスを入力し[テスト]をクリックします。

成功しました。

メールを見てみると届いているのが確認できます。

次にこのEmail設定をユーザーに紐付けます。

[管理]→[ユーザー]→[Admin]をクリックします。

[メディア]タブをクリックします。

[追加]をクリックします。

タイプのプルダウンから先程設定した[Email(HTML)]を選択し、アラートメールを受け取りたい送信先メールアドレスを入力、[追加]をクリックします。

追加されました。

続いてメール送信を有効化します。デフォルトで管理者グループへメッセージを送信する項目がありますが、無効化されています。

[設定]→[アクション]→[無効/有効]をクリックします。

有効になりました。

続いて実際の障害テストをしてみます。

監視設定の手順と同じようにサービスにアクセスします。

Windows編

[Windows Time]を右クリックし、[停止]をクリックします。

設定とは逆の手順でNTPサーバー機能を無効にしても良いです。

メール通知が届いたことを確認できます。

Linux編

同じようにchronyサービスを停止します。

[systemctl stop chronyd]などで停止できます。

Linux側もメール通知が届いていることが確認できます。

無料かつ5分でリソース監視を始める方法

Zabbixによる監視にトライして、わずらわしさや難しさを感じた方もいるかもしれません。そんな方はここで紹介する方法も試してみてください。上記で紹介したZabbixの構築から通知設定までと同等の内容を5~10分で完了することができます。

数あるサーバー監視ツールの中でも、監視を開始するまでの工数が最もかからないもののひとつがSaaS型ツールの「Site24x7(サイトトゥエンティーフォーセブン)」です。FREEプランが提供されているのも好評で、今ユーザーが増えています。

ここからは、そのSite24x7でサービスの監視と通知の設定までの具体的な方法を紹介します。障害が発生した時の通知方法は一般的なメールで行う事にします。

1. アカウントの作成

まず、FREEプランにサインアップします。クレジットカード情報などは必要ないので安心です。

わずか30秒ほどで日本語の画面を確認することができました。今回は[サーバー監視]をクリックして次のステップに進みます。

2. エージェントのインストール

次に、監視対象のサーバーにエージェントをインストールします。Windows編とLinux編、それぞれの手順を紹介します。Site24x7もZabbix同様エージェントをインストールしていきますが、ホストの追加などの作業はありません。

Windows編

Windowsの手順は次のリンクでわかりやすく説明されているのでそちらをご確認ください。

Windows監視を5分で始める方法:
https://www.site24x7.jp/simple-server-monitoring.html

Linux編

[Linux]をクリックします。

Linux上で実行するコマンドが表示されますので[クリップボードへコピー]をクリックします。

Linuxサーバー(Amazon Linux2)に接続します。

コピーしたコマンドを実行します。wgetなどインターネット接続出来ていることが前提となりますので、オンプレ環境などの場合は作業前に確認が必要です。

シェルを実行します。

successfullyと表示されて完了。5分もかかりませんでした。

しばらく経つとクラウドポータル上に表示されます。監視対象が2つ見えているのが確認できました。ホストの追加操作は必要ありません。

3. サービス監視設定

Zabbixと同じようにNTPサービスを監視していきます。WindowsとLinuxで細かな文言の違いが出てきますので、合わせてご紹介します。

Windows編

監視対象のWindowsサーバーをクリックし[サービスとプロセス]をクリックします。

[サービスとプロセスのディスカバリー]をクリックします。

[Windowsサービス]をクリックし、検索窓からNTPのサービスである[Windows Time]を検索し[追加]をクリックします。

追加されました。

続いてアラート通知の設定を行うのでペン型の編集マークをクリックします。

プロセスがダウンのときに通知の項目で[はい]をクリックし[保存]をクリックします。

Linux編

監視対象のLinuxサーバーをクリックし[プロセス]をクリックします。

Linuxではサービス毎ではなく、実体となるプロセス単位での監視になります。

[プロセスのディスカバリー]をクリックします。

プロセスの検索窓からLinuxのNTPサービスプロセスである[chronyd]を検索し[追加]をクリックします。

追加されました。

Windowsと同じようにペン型の編集マークをクリックします。

プロセスがダウンのときに通知で[はい]をクリックし[保存]をクリックします。

3.      通知設定(メール通知)

Site24x7は最初から登録時のメールアドレスでアラートを受け取れるように設定されています。

実際にサービス障害を起こしてみてメール通知をしてみましょう。

Windows編

Zabbixと同じように[Windows Time]を右クリックし、[停止]をクリックします。

Site24x7上で登録したサービスがダウンしているのが分かります。

メール通知も届いているのが確認できます。色付けが分かりやすいです。

Linux編

Zabbixと同じようにchronyサービスを停止します。

[systemctl stop chronyd]で停止します。

プロセスに異常があることが確認できました。

メール通知も届いているのが確認できます。

まとめ

ここまで、ZabbixとSite24x7によるサービス監視の具体的な方法を紹介しました。いかがだったでしょうか?

Site24x7は、サービスの一覧などは自動で取得され、監視の設定方法も手軽に行うことができ、マニュアルを見る必要がほとんどありませんでした。Zabbixのテンプレートだけで監視を行うことに比べ、非常に簡単なことがおわかり頂けたかと思います。

IT自動化やSMS通知、クラウドとの連携など豊富な機能が提供されています。

このように手軽にサービス監視が出来るSite24x7。サーバーやサービスが増え続ける度に監視の設定に頭を悩ませている運用担当者は、SaaS型の監視ソリューションSite24x7を採用してみてはいかがでしょうか。

FREEプランのサインアップはこちら:
https://www.site24x7.jp/signup.html?pack=1&l=ja

プランと価格の詳細はこちら:
https://www.site24x7.jp/pricing.html

ZabbixとSite24x7の機能比較一覧はこちら:
https://www.site24x7.jp/zabbix-alternative.html

関連記事