Zabbix の概要と最新版 Zabbix 5.4 新機能解説
SRA OSS, Inc. 日本支社
OSS事業本部 技術部 基盤技術グループ
北川 健司

セミナー概要• Zabbix の概要• Zabbix5.4の新機能についての解説© 2021 SRA OSS, Inc. Japan2

whoami 北川 健司（Kenji Kitagawa）
 SRA OSS, Inc. 日本支社
OSS 事業本部 基盤技術グループ
職務 PostgreSQL 以外の OSS 全般の技術サポート、構築© 2021 SRA OSS, Inc. Japan3

Zabbix の概要© 2021 SRA OSS, Inc. Japan

4

Zabbix とは• ネットワーク上の機器やサービスを監視して、異常があれば、通知してくれるネットワーク管理ソフトウェア• ライセンスは、GPLv2• 最新版は、Zabbix5.4(2021/5/17リリース)• 2004年バージョン1.0がリリース© 2021 SRA OSS, Inc. Japan5Zabbix 5.4• 2021/05/17 リリース(ポイントリリース版)• LTS版は1年半周期、ポイントリリース版は6ヶ月周期でリリース• 基本的にはLTS(Long Term Support)版で構築した方が良い

2021/05/17 2021/05

6.0 LTS
5.4

5.2
5.0 LTS
4.0 LTS

2021/112023/05

フルサポートフルサポート2023/102025/05

リミテッドサポート

リミテッド
サポート

リミテッド
サポート

フルサポートリミテッドサポート© 2021 SRAリミテッドサポート
OSS, Inc. Japan
フルサポート6

Zabbix 全体像
Zabbix
Agent

メール通知など

Zabbixサーバ
プロセス
Webサーバ(+PHP)

データベース

監視ホスト群(Windows / Linux/ネットワーク機器/仮想環境)

Zabbix管理者

APIによる情報取得
Zabbixの各種設定

ZabbixAgent

Zabbixプロキシ
サーバ

Zabbixの各種設定
ステータス表示監視ホスト群© 2021 SRA
OSS, Inc. Japan

Zabbix API

7

Zabbix の用語
用語
ホスト
アイテム
トリガー
イベント

アクション

説明
監視対象となるサーバや機器。
IPアドレスやDNSを設定するホストに対する監視項目。
CPU使用率、メモリ使用率などの単位で設定
アイテムで取得したデータに対する閾値設定
トリガーが閾値を超えた場合に内部生成される、障害復旧のインシデント
イベント生成時に実行される、障害通知やコマンド実行などの設定© 2021 SRA OSS, Inc. Japan8

Zabbix 各設定の連携
Zabbix
Agent

ホスト
アイテム

Zabbixサーバ
プロセス
トリガー

メール通知など

アクション

イベント

実行条件

実行内容

Webサーバ(+PHP)

アイテム
アイテムのデータ取得
監視ホスト群(Windows / Linux/ネットワーク機器/仮想環境)

アイテム

トリガー

Zabbixの各種設定
ステータス表示
実行条件
実行内容
Zabbix管理者

イベント

データベース閾値チェック
条件を満たした場合
イベント生成Zabbixプロキシ
サーバ

Zabbix
Agent

監視ホスト群© 2021 SRA
OSS, Inc. Japan

Zabbix API実行条件にマッチしたイベントがあった場合実行内容を実施
9

監視できるホスト
以下のようなインターフェースから情報が取得できるサーバや機器• Zabbixエージェント
専用エージェントをインストールすることで様々な情報を取得できる【Linux系、UNIX系、MacOS系、Windows系】• SNMP
SNMP(v1~v3)により、OIDで指定した様々な情報を取得できる• JMX
JMX(Java Management Extensions)の情報を取得できる
別途zabbix-java-gatewayサービスの起動が必要• IPMSIPMSによるハードウェア情報の取得ができる© 2021 SRA OSS, Inc. Japan10

どんなアイテムを監視できる？
• CPU使用率• メモリ使用率• ファイルシステム使用率• ネットワーク使用率• システム情報(ホスト名、アップタイムなど)• ログ情報(イベントログ情報)• 任意のコマンドやスクリプトCPUの負荷を取得するアイテム設定例© 2021 SRA OSS, Inc. Japan11

様々なアイテムタイプ①
アイテムタイプ

説明

Zabbixエージェント

Zabbixエージェントからデータを取得

Zabbixエージェント(アクティブ)Zabbixエージェントからデータを取得(トラッピング処理)
ログ監視に対応

シンプルチェック

Zabbixサーバより、TCP/IPレベルでの監視

SNMPエージェント

SNMPエージェントよりデータを取得

SNMPトラップ

SNMPトラップを受信(トラッピング処理)

Zabbixインターナル

Zabbixサーバ内部情報の取得

Zabbixトラッパー

zabbix_senderコマンドで送付されたデータを受信(トラッピング処理)

Zabbixアグリゲート

ホストグループの同じキーに対する、合計、最大、最小、平均などの計算© 2021 SRA OSS, Inc. Japan12

様々なアイテムタイプ②
アイテムタイプ

説明

外部チェックZabbixサーバ上でスクリプトを実行した結果の取得

データベースモニタ

ODBC経由でデータベースにSQLを実行した結果の取得

HTTPエージェント

HTTP/HTTPSのリクエスト結果の取得

IPMIエージェント

IPMSエージェントからデータを取得

SSHエージェント

SSH経由でコマンド実行した結果の取得

TELNETエージェント

Telnet経由でコマンド実行した結果の取得

JMXエージェント

JavaGateway経由でJavaのJMXよりデータを取得

計算

任意のアイテムより計算した結果を取得

依存アイテム

他の任意のアイテムで取得したデータを取得© 2021 SRA OSS, Inc. Japan13

アイテム毎に受信するデータ型
取得データはデータベースのそれぞれのテーブルに保存
データ型

用途

サイズ

数値(整数)

整数

符号なし64bit

数値(浮動小数)

浮動小数

整数部16桁、小数部4桁

文字列

文字列

255文字

テキスト

文字列

64KB

ログ

ログ監視のみ64KB© 2021 SRA OSS, Inc. Japan14

ヒストリとトレンド• ヒストリ：アイテムで収集した生データ(短期グラフ利用)• トレンド：受信した数値データをグラフ用に加工したサマリデータ(長期グラフ利用)

短期グラフ

長期グラフ
© 2021 SRA OSS, Inc. Japan

生データ
15

データは溜まり続ける？
• housekeeperプロセスによって定期的(1時間おき)に削除• デフォルトで以下の保存期間• ヒストリ：90日• トレンド：365日• 運用開始して1年間(デフォルト設定)はデータが増え続けるため、事前の監視設計が必要© 2021 SRA OSS, Inc. Japan16

様々なトリガー条件• アイテムで取得したデータをトリガー関数で評価できる関数

説明last()最新のヒストリデータでの評価{host:system.cpu.load.last()}>10

max()
min()
avg()

ヒストリデータの指定秒数や指定個数の、最大値、最小値、平均値での評価{host:system.cpu.load.avg(1h)}>10{host:system.cpu.load.max(#10)}>10

count() 指定期間での、条件を満たすデータ個数の評価{host:system.cpu.load.count(1h,10,"gt")}>5※一定時間データを受信していない場合の評価関数もある

CPU負荷のトリガー設定例© 2021 SRA OSS, Inc. Japan17

テンプレートについて• アイテム、トリガー、グラフなどがテンプレート化できる• ホストにテンプレートを適用するとすぐに監視できる• 様々な機器やサービスのテンプレートが公開されている
Template_A
アイテム：agent.ping

Host1
アイテム重複アイテム：agent.ping

Template_B
アイテム：agent.ping

テンプレートの継承

Template_C
アイテム：agent.version© 2021 SRA OSS, Inc. Japan

Host2

18

アクション• アクションの実行条件• 発行されたイベントに対して、実行条件を指定できる• トリガー(深刻度)、ホスト(グループ)、メンテナンスなど• 実行内容(検知時、復旧時、更新時)• メール通知やコマンド実行などの実行内容• エスカレーション実行が可能(例)障害発生から10分おきに継続して管理者へメール通知
障害発生から1時間後にマネージャにSMS通知
障害発生時

障害発生

10分後

20分後

30分後

1時間後

メール
SMS

SMS
マネージャ

管理者

© 2021 SRA OSS, Inc. Japan19

Zabbix5.4の新機能についての解説© 2021 SRA OSS, Inc. Japan20

定期PDFレポート• ダッシュボード情報をPDFレポートとして電子メールで送信できる• 定期的(毎日、毎週、毎月、毎年など)にレポートが送信できる• 別途 zabbix-web-service、google-chromeのインストールが必要© 2021 SRA OSS, Inc. Japan21

マルチページダッシュボード• ダッシュボードが、複数のページをサポート• 複数のページは、スライドショーでローテーションできる• スクリーンとスライドショーの機能が削除© 2021 SRA OSS, Inc. Japan

22

トリガー条件式の構文変更• トリガー条件式や計算アイテムの構文が変更{Server1:temp.last()}>20↓• Zabbixアグリゲートは、アイテムタイプから削除• grpsum、grpavgなどの集約関数は、計算アイテムで使用されるようにsum_foreach、avg_foreachなどに変更 last(/Server1/temp)>20• パラメーターとして、他の式の利用をサポート• アップグレード中に、既存のすべての式が新しい構文に変換

grpsum["Servers","vfs.fs.size[/,total]",last]↓sum(last_foreach(/*/vfs.fs.size[/,total]?[group="Servers"]))© 2021 SRA OSS, Inc. Japan23

トリガー関数の変更
旧関数
str()、regexp()、iregexp()abschange()変更
find()に変更
ただし、オプションでの指定が必要abs()に変更
ただし、change()と併用が必要

diff()、prev()delta()
trenddelta()

削除。今後はlast()を利用削除。今後はmax()、min()を利用削除。今後はtrendmax()、trendmin()を利用

band()
strlen()bitand()に名前変更
length()に名前変更© 2021 SRA OSS, Inc. Japan24

APIトークンの管理機能• ZabbixAPIの認証に利用できるAPIトークンの管理機能追加(従来のID、パスワード認証も可能)• 従来はユーザ認証でトークンを取得して処理する必要があり、トークンを使いまわした場合、期日や有効/無効は制御不可• APIトークンの管理権限のあるユーザが管理画面またはトークンAPIメソッド(token.*)より、作成管理できる© 2021 SRA OSS, Inc. Japan

25グローバルスクリプトへの集約• アクション設定のスクリプトを含むすべてのスクリプトがグローバルスクリプトに集約• スクリプト毎にスコープを設定できる(フィルタ条件にもなる)• JavaScriptをサポート(タイプでWebhookを選択)• スクリプトの最大長が65536バイトに増加© 2021 SRA OSS, Inc. Japan26

テンプレートのインポート改良• 各テンプレート要素にUUIDが付与されたことで、安全にアップデートができる• インポート時に、変更内容を確認した上で、適用するかキャンセルするか選択できる© 2021 SRA OSS, Inc. Japan

27

第3階層のメニュー• Zabbixのメインメニューの一部のセクションに、マウスクリックで表示される追加のメニューが追加• タイトルドロップダウンメニューの代替手段© 2021 SRA OSS, Inc. Japan28

「アプリケーション」からアイテムタグに変更• アイテムとWebシナリオをグループ化する手段の「アプリケーション」がアイテムタグに変更• アップグレードによって、アイテムタグに変換© 2021 SRA OSS, Inc. Japan29

値のマッピングのローカル化• 値のマッピングが、ホストおよびテンプレートに移動• テンプレート完結型でインポート可能© 2021 SRA OSS, Inc. Japan

30

SNMPv3の強力な暗号化プロトコル• SNMPv3 の強力な認証プロトコルおよびプライバシープロトコルのサポート• 認証プロトコル【SHA224 SHA256 SHA384 SHA512】• プライバシープロトコル【 AES192 AES256 AES192C (Cisco) AES256C (Cisco) 】• アップグレード後、既存のSHAプロトコルとAESプロトコルの名前がそれぞれ[SHA1]と[AES128]に変更© 2021 SRA OSS, Inc. Japan

31

JavaScriptオブジェクト• 「CurlHttpRequest」オブジェクトの名前が、「HttpRequest」に変更• JavaScript との一貫性を高めるために、メソッド名も変更され、これまでのメソッド名は非推奨となり、Zabbix6.0 以降はサポートされません。
• ロギングメソッド用の新しいエイリアスが追加• XMLオブジェクトが追加され、XMLとJavaScriptオブジェクト(JSON)を相互変換する機能が追加© 2021 SRA OSS, Inc. Japan32

内部処理の変更• トレンド関数キャッシュが実装され、計算されたトレンド関数の結果をキャッシュでき、負荷を抑える• Poller プロセスからデータベースへの直接接続の排除© 2021 SRA OSS, Inc. Japan33

ソフトウェア要件 －Database－MySQLMariaDB
OraclePostgreSQLSQLiteTimescaleDB

Zabbix 5.0
5.5.62 - 8.0.x
10.0.37 以降
11.2 以降
9.2.24 以降
3.3.5 以降
1.0 以降（OSS 版）© 2021 SRA OSS, Inc. Japan

Zabbix 5.4
5.7.28 - 8.0.x
10.0.37-10.5.X
12.1.0.2 - 19c
10.9-13.X
3.3.5-3.34.X
1.5-2.134

ソフトウェア要件 －Frontend－• PHP 7.2 以上が必須(ただし、PHP8.0は未サポート)• RHEL 7、CentOS 7 の場合は注意

RHEL/CentOS 7 frontend installation
https://www.zabbix.com/documentation/current/manual/installation/
install_from_packages/frontend_on_rhel7• クライアントサイドのブラウザ
Google Chrome, Mozilla Firefox,Microsoft Edge, Apple Safari, Opera© 2021 SRA OSS, Inc. Japan35

参考URL• What’s new in Zabbix5.4(公式)https://www.zabbix.com/documentation/5.4/manual/introduction/whatsne
w540• Zabbix 5.4 マニュアル(公式)https://www.zabbix.com/documentation/5.4/manual• Zabbix 5.4.0 のリリースノート(sraoss)
https://www.sraoss.co.jp/tech-blog/zabbix/rn-5-4-0/• Zabbix 5.4の紹介(sraoss)
https://www.sraoss.co.jp/tech-blog/zabbix/zabbix54-newfeature-latest/© 2021 SRA OSS, Inc. Japan36

Zabbix 6.0LTS
2021 年 10 – 12 月リリース予定© 2021 SRA OSS, Inc. Japan37

Q&A