サーバー上で稼働しているサービスを監視する事は、運用上欠かせない大切なことの一つです。 今回は、代表的なサーバー監視ツールであるZabbixを使って基本的なサービス監視のやり方を説明するとともに、 同じことをクラウドサービスで実現する方法についてご紹介いたします。
目次
- Zabbixでサービス監視を始める手順
- Windows編
- Linux編
- 無料かつ5分でリソース監視を始める方法
- Windows編
- Linux編
- まとめ
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)をクリックします。
[テンプレート]をクリックします。
新規テンプレートをリンクで[選択]をクリックします。
ホストグループで[選択]をクリックします。
[Templates/Modules]をクリックします。
[Template App NTP Service]をクリック、もしくはチェックして選択をクリックします。
リンクに追加されているのを確認し[更新]をクリックします。
画面が戻ってしまいますが、もう一度監視対象のテンプレートを見てみると、追加されているのが確認できます。
ダッシュボードを確認すると早速障害が発生しています。
NTPは最初から有効なのではと思うかもしれませんが、このNTPサービスというのはNTPサーバー機能の事を表しています。WindowsならNTPサーバーとしての設定をレジストリで行うことが出来ます。以下レジストリパスで制御出来ます。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer Enabled 0で無効(初期値) 1で有効
[Enabled]の値に[1]を設定し、NTPサービスを再起動するとNTPサーバーが有効になります。Windowsでは[Windows Time]という名前で提供されています。
障害を見ると解決しているのが分かります。これでWindowsでの設定は完了です。
Linux編
Linuxの場合、同様の目的でサービスではなくプロセスを監視しますが、登録用サービステンプレートはWindowsと同じ名前の [Template App NTP Service]になっています。 それを使うことでWindowsと同様のNTP監視を実現できます。 登録方法は基本的に同じです。
[設定]→[ホスト]→[対象のLinuxサーバー](今回はLinux Server)をクリックします。
Windows編と同じ手順で[Template App NTP Service]を追加します。
ダッシュボードを見るとこちらでも障害が検知されました。
Windowsと同じようにNTPサーバー機能が有効になっていないと障害と認識されます。正常に戻すために有効化しましょう。今回検証で使用しているLinuxはAWS上で提供されているAmzonLinux2なので、導入されているNTPサービスはchronyになります。
ログインして[/etc/chrony.conf]を編集します。17行目あたりのallow(初期はコメントアウト)でNTPの問い合わせアクセスを許可することで時刻同期をサーバーとして受け付けます。
[systemctl restart chronyd]などでサービスを再起動すると、NTPサーバーが有効になり、Zabbix上でも障害が解決します。
設定は以上で完了です。
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
関連記事
- Zabbix 6.0 サーバー構築手順(インストールから初期設定まで)
- Zabbix Agentのインストールと設定手順
- Zabbixでログ監視する手順(Windowsイベントログ監視・Syslog監視)
- Zabbixでプロセス監視する手順
- Zabbixでアラートをメール通知する手順
- ZabbixのPing実行手順とPing監視する手順
- ZabbixでWeb監視とシナリオ監視する手順
- ZabbixのSNMP監視手順とNetFlowでトラフィックを可視化する方法
- ZabbixでCPU使用率を監視する手順
- Zabbixで死活監視する手順
- Zabbixでポート監視する手順
- Zabbixでサービス監視する手順(Windowsサービス監視)
- Zabbixでメモリ使用率を監視する手順
- Zabbixでリソース監視する手順
- Zabbixでディスク使用率を監視する手順
- ZabbixでDNS監視する手順
- ZabbixでDockerコンテナを監視する手順
免責事項:ここに記載されているすべての著作権、商標、商号は、元の所有者の所有物です。このWebページに含まれる情報は、一般的な情報提供のみを目的としており、そのような情報は、正確性、信頼性、または完全性について調査、監視、または確認されていません。 当社は、ここに含まれる情報への依存に起因する誤り、または損失に対する責任を明示的に否認します。