Zabbixでメモリ使用率を監視する詳しい手順と同じことを5分で始める方法

Zabbix 5.0でメモリ使用率を監視するための設定手順を紹介します。また、無料かつ5分でメモリ使用率の監視を始める方法も紹介していますので参考にしてみてください。

目次

Zabbixでメモリ使用率を監視する手順

1. Zabbixサーバーの構築

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

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

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

3. メモリ使用率の監視設定

Zabbix 5.0におけるメモリ使用率の監視設定手順を紹介します。手順に少し違いがあるため、Windows編Linux編にわけて紹介します。

Windows編

まず、標準で用意されている監視テンプレートを確認します。

[設定]→[ホスト]→[対象のホスト(今回はWindows hostという名前です)]をクリック。

Zabbixメモリ使用率監視設定手順Windows編01

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

Zabbixメモリ使用率監視設定手順Windows編02

[テンプレートとのリンク]に[Template OS Windows by Zabbix agent]がリンクされているのが確認できます。Zabbixには標準的な監視を行うためのこのようなテンプレートが用意されており、監視対象サーバーを追加する際に選択することが出来ます。

Zabbixメモリ使用率監視設定手順Windows編03

次に、 [Template OS Windows by Zabbix agent]をクリックし、メモリ使用率の監視がどうなっているか確認します。

画面遷移後、[トリガー]をクリックします。

Zabbixメモリ使用率監視設定手順Windows編04

対象テンプレートに登録されているトリガーが一覧で出ます。[名前]欄に検索したいトリガーの名前(今回はmemory)を入力し、[適用]をクリックするとフィルターできます。メモリ使用率のトリガーである[High memory utilization]をクリックします。

Zabbixメモリ使用率監視設定手順Windows編05

[条件式]を見てみると[{$MEMORY.UTIL.MAX}]の値がしきい値となっているのが読み取れます。このあたりはZabbixの構文を理解していく必要が出てきます。

Zabbixメモリ使用率監視設定手順Windows編06

[{$MEMORY.UTIL.MAX}]の値を確認してみましょう。

親トリガーである[Template Module Windows memory by Zabbix agent]をクリックします。

Zabbixメモリ使用率監視設定手順Windows編07

左上の見切れている[Template Module Windows memory by Zabbix agent]をクリックします。

Zabbixメモリ使用率監視設定手順Windows編08

[マクロ]をクリックします。

Zabbixメモリ使用率監視設定手順Windows編09

[{$MEMORY.UTIL.MAX}]にしきい値[90]が指定されているのがわかります。英語ですが説明にも記載があります。

Zabbixメモリ使用率監視設定手順Windows編10

グラフでも視覚的に確認してみましょう。

[監視データ]→[ホスト]をクリックし、Windows hostの[グラフ]をクリックします。

Zabbixメモリ使用率監視設定手順Windows編11

[Memory utilization]の項目でトリガーに90%が設定されているのがわかります。

これは5分平均でメモリ使用率が90%を超えるとアラートになるという意味になります。

Zabbixメモリ使用率監視設定手順Windows編12

それでは実際のアラート画面を見てみましょう。

※Windowsのメモリ負荷テストには様々なフリーツールがありますが、今回はスクリプトで実行し再現しています。本番環境などで試す際はご注意ください。

ダッシュボードに軽度の障害として High memory utilizationが表示されています。

Zabbixメモリ使用率監視設定手順Windows編13

先程のグラフでも平均が90%を超えてトリガーのしきい値を上回っていることが視覚的にわかります。

Zabbixメモリ使用率監視設定手順Windows編14

このようにWindowsのメモリ監視は標準テンプレートで行えます。細かいしきい値の変更や障害の度合い(致命的・重度・軽度など)は紹介した部分で設定が可能ですが、いちから環境にあった監視を設定するにはZabbixの構文を理解していく必要があります。

無料かつ5分でメモリ使用率の監視を始める方法はこちら

Linux編

Linuxでも標準のテンプレートを確認していきます。

[設定]→[ホスト]→[対象のホスト(今回はLinux Serverという名前です)]をクリックします。

Zabbixメモリ使用率監視設定手順Linux編01

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

Zabbixメモリ使用率監視設定手順Linux編02

Linuxでは[Template OS Linux by Zabbix agent]がリンクされています。Windowsと同じようにメモリ使用率の監視がどうなっているか確認します。そのまま [Template OS Linux by Zabbix agent]をクリックします。

Zabbixメモリ使用率監視設定手順Linux編03

画面遷移後[トリガー]をクリックします。

Zabbixメモリ使用率監視設定手順Linux編04

Windowsと同じく[名前]欄にmemoryと入力し、[適用]をクリックしてフィルターします。メモリ使用率のトリガーである[High memory utilization]がありますが、依存先という項目にすぐ上にもある[Lack of available memory](メモリ使用域の不足)が設定されているのがわかります。

Zabbixメモリ使用率監視設定手順Linux編05

依存関係とは、例えばルーターとその配下のサーバーを監視する際、ルーター単体の故障によって配下のサーバーも障害の通知がされるようなケースを防ぐための設定です。サーバーのトリガー設定がルーターのトリガー設定に依存していた場合、ルーターのトリガーによってアラートが通知されている時はサーバーのアラートを保留することが出来ます。

このテンプレートのままでメモリ負荷テストを実施すると、メモリ使用域のアラートが出ている間はメモリ使用率アラートが出せません。値を確認して依存関係を外すかどうか監視の設計が必要になります。

そのまま [High memory utilization]をクリックするとしきい値のマクロ[{$MEMORY.UTIL.MAX}]が条件式に使われていることが分かります。値の確認のため、「親トリガーである[Template Module Linux memory by Zabbix agent]をクリックします。

Zabbixメモリ使用率監視設定手順Linux編06

左上の見切れている[Template Module Linux memory by Zabbix agent]をクリックします。

Zabbixメモリ使用率監視設定手順Linux編07

[マクロ]をクリックします。

Zabbixメモリ使用率監視設定手順Linux編08

[{$MEMORY.UTIL.MAX}]にしきい値[90]が設定されています。すぐ上の [{$MEMORY.AVAILABLE.MIN}]が依存先であった [Lack of available memory]の値です。このままだと使用率に関係なく残りのメモリ容量が20MB以下になるとメモリ使用域アラートになり、使用率での監視ではなくなるので、自身の環境にあった要件をご確認ください。

Zabbixメモリ使用率監視設定手順Linux編09

Windowsと同じようにグラフで確認できます。

Zabbixメモリ使用率監視設定手順Linux編10

実際のアラートをstressコマンドなどで負荷をかけてテストします。

Zabbixメモリ使用率監視設定手順Linux編11

5分ほど経過するとアラートとして通知されます。

Zabbixメモリ使用率監視設定手順Linux編12

グラフでも確認が出来ました。

Zabbixメモリ使用率監視設定手順Linux編13

無料かつ5分でメモリ使用率の監視を始める方法はこちら

4. 通知設定

このままでもWebコンソールから障害の確認はできますが、常に目視しているわけにも行きません。実際の運用現場ではメールなどで通知を受け取ります。今回はAWS環境で紹介していますので、サービスとして用意されているSimple Email Serviceを利用してメール通知を実装したいと思います。社内などにメールサーバーがある方はそちらに読み替えて御覧ください。

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

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

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

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

設定に問題がなければ成功となります。

届いていることが確認できました。

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

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

[メディア]タブを選択。

[追加]をクリック。

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

追加されました。

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

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

実際に障害などが発生した際はこのようにアクション(メール送信)が実行されています。

次のようなメールを受信していることが確認できました。

無料かつ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. メモリ使用率監視設定の確認

Site24x7の監視設定はデフォルトで値が入っているため、何かを設定する必要はありません。ここではその確認方法を紹介します。

[管理]→[設定プロファイル]→[しきい値と可用性]→[Default Threshold – SERVER]をクリックします(サーバー毎に分けたい場合は自身でプロファイルを作成できます)。

メモリ使用率監視手順11

メモリ使用率だけでなく、CPU使用率、ディスク使用率のしきい値が設定されています。メモリ使用率の場合、デフォルトでは80%を超えるとトラブルとして通知、90%を超えるとクリティカルとして通知してくれます。

メモリ使用率監視手順12

実際にメモリ使用率がしきい値を超えると、ポータル上ではこのようにアラートが表示されます。

4. 通知設定の確認

こちらも設定は不要です。Site24x7はクラウドサービスのため、すでにアカウント作成時のメールに障害の通知は飛んでいます。もちろんメールサーバーなどの用意は必要ありません。

ここでは、デフォルトの設定内容の確認方法と通知メールの内容を紹介します。必要に応じて設定を変更しましょう。

[管理]→[ユーザーとアラートの管理]→[ユーザー&アラート]をクリックすると自身のアカウントが登録されていますのでクリックします。

メモリ使用率監視手順14

自身のアカウントのメールアドレスや権限、どのグループに所属しているかが確認できます。[アラート設定]でメールによるアラートが設定されていることが分かります。

メモリ使用率監視手順15

アラート期間やアラートをしない曜日、メールをHTMLかテキストで受け取るかなども選択可能です。

メモリ使用率監視手順16

グループとは[ユーザーアラートグループ]に紐付いており、他にもアプリケーション、ネットワークチームが存在しています。運用に沿って必要なアカウント、好きなグループを作り、設定すると良いでしょう。デフォルトで作成ユーザーはすべてに登録されています。

メモリ使用率監視手順17

エージェントをインストールして自動的に追加されたサーバーは管理グループに紐付いています。

[ホーム]→[監視]から対象のサーバーの右端にある設定項目を選択し[編集]をクリックして確認できます。

メモリ使用率監視手順18

ユーザーアラートグループが[管理グループ]に設定されています。WindowsもLinuxもデフォルトは同じです。

メモリ使用率監視手順19

先程の障害通知はこのように届きます。

メモリ使用率監視手順20

復旧するとこのように届きます。

メモリ使用率監視手順21

まとめ

ZabbixとSite24x7によるメモリ使用率の監視方法をご紹介しました。皆さんがサーバー監視をしている運用の現場ではどのようなツールが合いそうでしょうか。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