Zabbix 入門セミナー〜ゼロから始めるサーバ監視〜

SRA OSS合同会社
OSS 事業本部 技術部 基盤技術グループ

セミナー概要• 監視について• Zabbix の概要• Zabbix の基本的な操作© 2023 SRA OSS LLC

2

自己紹介
 村中 拓磨（ムラナカ タクマ）
 SRA OSS合同会社 OSS 事業本部 基盤技術グループ
 Zabbix 認定スペシャリスト
職務

 Zabbix を中心とした OSS のテクニカルサポートや構築を担当© 2023 SRA OSS LLC

3

監視について© 2023 SRA OSS LLC

4

監視の必要性• 本来稼働しているはずのサービスに障害が発生したとき監視をしている場合監視をしていない場合• どのサーバ・サービスが原因になっているか特定する時間がかかる• 障害が発生していることに気づかない可能性も結果として顧客にまで影響が及ぶことも• 障害発生の原因特定が容易• 障害の発生をリアルタイムで確認できる
障害発生時の迅速な対応が可能かつ日頃の監視によって未然に防げることも© 2023 SRA OSS LLC

5

なにを監視する？
• サーバリソース （メモリや CPU の使用率など)• ネットワーク (機器に対して疎通が取れるか、ダウンしていないか)• アプリケーション (プロセスが稼動しているか)• Web ページ (Web ページが表示されるか、画面遷移できるか)• ログ (サーバやアプリケーションにエラーが発生していないか)etc.

© 2023 SRA OSS LLC

6

Zabbix の概要© 2023 SRA OSS LLC

7

Zabbix とは• ネットワーク上の機器やサービスを監視して、異常があれば、通知してくれるオープンソースの統合監視ソフトウェア• 最新版は、Zabbix6.4 (2023/3 リリース)• 2004 年バージョン 1.0 がリリース© 2023 SRA OSS LLC

8

Zabbix のバージョン• Zabbix のメジャーバージョンは LTS とポイントリリースの 2 種類がある• LTS は 1 年半周期で、ポイントリリースは半年周期でリリースされる• サポート（開発）期間の長さが異なり、ポイントリリースは約半年で期間終了となる• サポート期間が終了すると、バグ修正や機能改善がされなくなるため
LTS バージョンによる構築を推奨
LTS (Long Term Support)
6.0 (2022/2 リリース)
5.0 (2020/5 リリース)

ポイントリリース
6.4 (2023/3 リリース)
6.2 (2022/5 リリース)© 2023 SRA OSS LLC

9

Zabbix イメージ
Zabbix agent

通知

Zabbix server

監視Zabbixサーバ
プロセス

Webサーバ

監視設定や監視デー
タの確認

運用担当者

データベース© 2023 SRA OSS LLC

10

対応プラットフォーム

••
•
•
•
•
•
•

Zabbix server

Zabbix agent

Linux
IBM AIXFreeBSDNetBSD
OpenBSDHP-UX
Mac OS X
Solaris

•••
•
•
•
•
•
•

Linux
IBM AIXFreeBSDNetBSD
OpenBSDHP-UX
Mac OS X
SolarisWindows© 2023 SRA OSS LLC

Zabbix agent2• Linux• Windows11

どんなデータを監視できる？（アイテム）

監視メトリクス
エージェント監視
リソース監視
••
•
•

CPU
メモリ
ネットワーク
ファイルシステム

プロセス/サービス
監視

エージェントレス監視

ポート監視

ICMP 監視

DB 監視

ログ監視

SNMP 監視Java 監視Web 監視SSH/Telnet
監視© 2023 SRA OSS LLC

VMware 監視12

障害の発生条件（トリガー）• アイテムが取得したデータに対して任意の障害の発生条件を作成できる閾値

文字列(例)メモリ使用率が 80% を超えたら障害とする

2023 02/14 09:13:25 [INFO] …
2023 02/14 09:15:10 [ERROR] …
2023 02/14 09:21:47 [INFO] …

(例)アプリケーションのログに「ERROR」が出力されたら障害とする© 2023 SRA OSS LLC13

障害発生時の通知（アクション）
担当者にメールHTML メールにも対応

コマンド実行
サーバやプロセスの再起動
パトランプの点灯

Webhook
外部アプリとの連携
Slack, Teams, Redmine etc.
© 2023 SRA OSS LLC

14

障害発生時の通知（アクション）• 通知のエスカレーションが可能(例)障害発生から 10 分おきに継続して保守担当者へメール通知、障害発生から 1 時間経過しても復旧しない場合はマネージャに SMS 通知
障害発生時

障害発生

10分後20分後30分後1時間後

メール
SMS

SMS

マネージャ
保守担当者

© 2023 SRA OSS LLC

15

Zabbix の用語
用語
ホスト

アイテム
トリガー
イベント
アクション

説明
監視対象となるサーバやデバイス。
IP アドレスや DNS 名を設定する。
ホストに対する監視項目。
CPU 使用率、メモリ使用率など 1 アイテムにつき 1 項目。
アイテムが取得したデータに対する障害の発生条件の設定。
トリガーが閾値を超えた/下回った場合に内部生成される障害/復旧のインシデント履歴。
イベント生成時に実行される、障害通知（メール）やコマンド実行などの設定。

© 2023 SRA OSS LLC

16

テンプレート• アイテム、トリガーなどがテンプレート化でき、複数のホストに同じ監視設定をするときにテンプレートを利用すると効率的• Zabbix をインストールするとデフォルトで様々な機器やサービスのテンプレートが搭載されているため、自ら監視設定を作成せずとも監視を始められる© 2023 SRA OSS LLC

17

テンプレート
標準テンプレート一例
AWS

Cisco

MicrosoftVMware

F5etc.

© 2023 SRA OSS LLC

18

ダッシュボード
特定のグラフや障害の発生数、地理マップ、Zabbix server の情報など様々なデータを一元的に表示可能© 2023 SRA OSS LLC

19

定期レポート
定期的な統計情報の PDF レポートの送信• ダッシュボードを定期レポートとしてメール送信可能• 日次、週次、月次の定期レポート送信をスケジュール可能© 2023 SRA OSS LLC

20

グラフ
• アイテムが取得したデータを自動的にグラフ表示してくれる• 表示範囲の指定も柔軟にできる• 長期間の表示も可能でデータの推移・傾向を把握できる© 2023 SRA OSS LLC

21

障害発生履歴• 「監視データ」→「障害」• 過去の障害履歴や対応の履歴（対応コメントなど）を確認できる© 2023 SRA OSS LLC

22

ネットワークマップ• 「監視データ」→「マップ」• 任意のマップを作成することが可能で、インフラの構成やどのサーバで障害発生しているのかを把握しやすくなる© 2023 SRA OSS LLC

23

ネットワーク上のデバイス・サービスの検出
Zabbix は自動的にネットワークをスキャンして、検出されたデバイスを監視対象として追加することが可能• 複数のネットワークインターフェースを持つデバイスの検出• ＩＰ アドレス範囲を指定したネットワークスキャン• 検出されなくなったデバイスの非監視対象可© 2023 SRA OSS LLC

24

Zabbix の操作 ～ホスト、アイテム、トリガー作成～© 2023 SRA OSS LLC

25

インストール
ダウンロードページに OS、使用する DB、Webサーバに応じたインストール手順が記載されています。
https://www.zabbix.com/jp/download
今回は監視マネージャとなるサーバには Zabbix 6.0 インストール 内の手順をもとに

Zabbix server6.0, PostgreSQL14, Apache をインストール
監視対象のサーバには Zabbix agent6.0 のみインストール
監視マネージャサーバ

監視対象サーバ

OS: RHEL8
Zabbix server6.0
DB: PostgreSQL14
Web サーバ: Apache

OS: RHEL8
IPアドレス: 192.168.44.32
Zabbix agent6.0© 2023 SRA OSS LLC

26

設定の流れ今回は以下の流れで監視対象のサーバの CPU 使用率を監視して、40% を上回ったら障害とするような設定を行います。
1. ホスト作成
2. アイテム作成
3. トリガー作成© 2023 SRA OSS LLC

27

1. ホスト作成• 「設定」→「ホスト」→「ホストの作成」

監視対象のサーバのホスト名、ホストが所属するグループ、サーバの IP アドレスを入力
ホスト名: Linux server

グループ: Linux servers
インターフェース:タイプ: エージェント

IP: 192.168.44.32© 2023 SRA OSS LLC

28

2. アイテム作成• 「設定」→「ホスト」→「Linux server」→「アイテム」→「アイテムの作成」

サーバの CPU 使用率を取得するアイテムを作成
名前: CPU使用率
タイプ: Zabbixエージェント

キー: system.cpu.util
データ型: 数値(浮動小数)
監視間隔: 10s

© 2023 SRA OSS LLC

29

3. トリガー作成• 「設定」→「ホスト」→「Linux server」 →「トリガー」→「トリガーの作成」

CPU 使用率が 40% を超えたら障害とするトリガーを作成
名前: CPU使用率が40%を超えました
深刻度: 警告条件式:
last(/Linux server/system.cpu.util)>40© 2023 SRA OSS LLC

30

障害の確認• 監視対象サーバに SSH ログインをして以下のコマンドを実行yes > /dev/null (障害発生確認後「Ctrl＋C」で停止)
必ず自身の検証サーバなど本番として稼働していないサーバで実行してください！

「監視データ」→「障害」「監視データ」→「最新データ」→「CPU使用率の「グラフ」」© 2023 SRA OSS LLC

31

参考情報
• SRA OSS LLC Youtube チャンネル
https://www.youtube.com/c/sraoss-official• SRA OSS Tech Blog
https://www.sraoss.co.jp/tech-blog/• 第 1 回 Zabbix を動かしてみよう• 第 2 回 Zabbix のさまざまな監視機能を試してみよう• 第 3 回 Zabbix API 入門• Zabbix 6.0 インストール© 2023 SRA OSS LLC

32

ご清聴ありがとうございました。