ZABBIX-JP

Zabbix入門～システムの状態を把握する～2012年8月9日
SCSK株式会社
事業戦略グループ
OSS基盤技術センター
田中 敦

自己紹介

ZABBIX-JP 名前 田中 敦（たなか あつし）
 所属 OSS基盤技術センター
 経歴 1992年 株式会社CSKに入社
 UNIX系技術者として従事 システム開発：

 日本初の商用VODシステム、某ファストフードの店舗管理系シス
テム(外部接続)、某ゲーム機向けISP、コンテンツプロバイダの課
金・認証システム 社内向け施策：

 Linux関連の調査(PenProf、ITSP)、開発標準改訂、PRJサーバ

 Windows関連書籍(2冊)執筆への参加

2

ZABBIX-JP

では、はじめます。

3システム開発時の課題

ZABBIX-JP

 システム開発時に、アプリケーションがどれだけサーバに負荷をかけているか把握していますか？
 把握していないと…..
 本番環境にリリースしたとたんにCPUやメモリのリソースをついつぶしてパフォーマンスがでない。

最悪な最悪な場合
サーバダウン！
サーバダウン！

4運用時の課題

ZABBIX-JP

 運用時に、時系列でシステムの状態の変化を把握していますか？
 把握していないと…..
 ファイルシステムフルになってサービスが止まってしまってからHDDの空き容量が無いことに気付く。
 メモリリークが発生してOut of Memory。

最悪な最悪な場合
サービスダウン！
サービスダウン！

5

対策

ZABBIX-JP

 ちゃんとシステムの負荷やリソースの変化を把握しておきましょう。
 でも、運用監視ツールって色々あるよね…..

6

系統

主なツール

ZABBIX-JP

主な運用監視ツールの系統
Nagios、Icinga、 Opsview、GroundWork Monitor 、op5 、Centreon、Shinken
Hobbit、Xymon

NagiosBig Brother

ネットワーク監視系から発展 Zenoss Core、OpenNMS
データの視覚化から発展

Munin、Cacti

その他

PandoraFMS、Hinemos、Hyperic HQ、Ganglia、Zabbix
7

運用監視ツールの選択

ZABBIX-JP

で、どれがいいの？
まずは、やりたいことを整理しましょう。

8

運用監視ツールで実現したいこと

ZABBIX-JP

 プロセスやサービスの稼動状態の把握
 CPUの負荷状況の把握
 メモリの使用量の把握
 スワップの発生状況の把握
 ハードディスクの読み書き量、空き容量の把握
 ネットワーク通信量の把握
 ログに出力されたエラーや警告の把握 閾値での監視と障害発生時の通知 視覚（グラフ）化
 ジョブ管理 利用者ごとに分離（マルチテナント）

9実現したいことが実現できるのは
ジョブ管理は欲しいのさ…..

ZABBIX-JP

Zabbixには無いのさ…..

でも、それ以外を1つのソフトウェアでトータル的に網羅しているのは、Zabbix!!

ジョブ管理は、今後のロードマップには入っているので、そのうちできるようになる、かも。
10

Zabbixとはとは ラトビアにあるZabbix SIAという会社が開発している統合運用監視ソフトウェア

ZABBIX-JP

 ライセンスは、GPLv2
 コマーシャルライセンスも最近提供開始

 もともと、Zabbix開発者が勤務していた銀行のシステムを監視することからはじまった
 サーバやネットワーク機器を監視して障害発生を検知し、メール送信や警告灯の点灯などによって、運用管理者に障害発生を通知することができる
11

Zabbixのの特徴
 サーバ/エージェント形式

ZABBIX-JP

 サーバはUNIX系OSの多くに対応（Windowsは不可）
 監視対象に導入するZabbixエージェントは、UNIX系OS以外に、Windowsなどにも対応
 SNMP、IPMI、SSH、telnetなどにも対応しているので、ネットワーク機器やZabbixエージェントを導入していないサーバも監視可 取得したデータは、DBMS上に保存（MySQL、PostgreSQLなど）

 GUIでの設定及びモニタリングが可 監視の設定は、全てWeb UIを利用して設定することが可能
 監視のために取得したデータをグラフ化して表示できる

 テンプレート よく利用する監視パターンは、テンプレートとよばれる設定のかたまりとして用意しておくだけで、あとは、新規の監視対象追加時には、そ12の監視対象へテンプレートをリンクするだけで監視設定完了

ZABBIX-JP

Zabbixの設定画面（例）13

ZABBIX-JP

Zabbixの表示画面（例）14

Zabbix標準で監視可能なもの

ZABBIX-JP

 プロセス監視（プロセス数）
 CPU利用率（ロードアベレージ、利用状況）
 メモリ利用状況
 スワップ利用状況
 ハードディスク利用状況（I/O量、空き容量）
 ネットワークインターフェイスに関する情報（I/O量）
 ログファイル監視（テキストファイル、イベントログ）
 各種ネットワークサービスのポート接続確認
 ファイルのチェックサム
 SNMP（Polling、Trap）
 IPMI JMX…..などなど

15

Zabbixの構成
監視対象

ZABBIX-JP

Zabbix

運用管理者端末

ApacheZabbixサーバ

SSH/telnet/IPMI

SNMPDBMS(MySQL, PostgreSQLなど)
16

Zabbix 2.0のプロセス構成
Zabbixサーバプロセス（親）timertrapper × 5

Zabbixエージェント

icmp pinger × 1

サーバ、NW機器history syncer
×4http poller × 1

Webサーバdb watchdog

ipmi poller × 0

IPMI対応機器

housekeeper

java poller × 0

ZABBIX-JP

poller × 5

Zabbixエージェント
SNMP対応機器

alerterdiscoverjava gateway
×0

JMX

snmptrapd

17
SNMP対応機器

snmp trapper × 0
SNMPTTZabbixを理解するのに必要な概念
 アイテムZABBIX-JP

 監視対象となる情報を取得するための設定

 トリガー アイテムで取得した値を判断して、障害とみなす条件を設定

 アクション

 トリガーで設定した条件に合致したときに、何を誰のために実行して通知するかを設定

 テンプレート アイテム、トリガー、グラフなどをよく利用するパターンをひとまとめにしておくためのもの
 ホストにテンプレートを割り当てるだけで監視設定完了
18

Zabbixの設定概要
 事前準備 テンプレートの作成

ZABBIX-JP 監視対象のサーバで、良く利用する監視項目（アイテム）や障害とみなす閾値（トリガー）を決める

 アクションの登録 誰に、どの障害のレベル（トリガーの深刻度）で、どんな方法（メール、警告灯、サーバの再起動など）で通知もしくは対処するかを決める

 監視対象登録

 ホストの作成
 テンプレートの割り当て
19

アイテムのタイプに関する注意点
Zabbixエージェント

ZABBIX-JP

Zabbixサーバからアイテムに指定された間隔でポーリングされる

Zabbixエージェント(アクティブ)エージェント側から能動的にZabbixサーバに通知する
ログ監視では必ずこちら側を選択すること
20

Zabbixの更なる便利機能
 API

ZABBIX-JP

 外部システムとの連携のためにAPIが用意された（1.8からあったが2.0から正式サポート） ディスカバリ

 指定したネットワーク上のホストをみつけて、監視対象のホストとして自動登録／自動削除も可 ローレベルディスカバリ（2.0からの新機能）

 テンプレートの汎化による監視設定の省力化
 2.0からローレベルディスカバリの機能を利用することで、ネットワークやハードディスクの個数に関わらず、1つのテンプレートで、何個インターフェイスがあるかはZabbixが勝手に探索してリストアップし、同じ監視設定をそれぞれ探索したインターフェイスに設定できる
21

Zabbixの拡張性

ZABBIX-JP

基本的にコマンドやスクリプトの出力で数値や文字列にできるものなら全て監視できる。
つまり、Zabbixの標準で用意されていないものでも、NagiosやMuninなどで監視できるものも容易に監視できる。

NagiosやMuninのプラグインを呼び出すスクリプ
トを作る方法でも可22

Zabbixに関する問題解決

ZABBIX-JP

Zabbixに関してわからないことがあれば、ZABBIX-JPという日本のコミュニティがあるので、そこで聞けば大抵の問題は解決できる。
というか、そこで回答書いているのは私。
ようするに、私に聞いていただければ問題解決できる、はず。 (^_^;)
23

ZABBIX-JP

何かご質問があれば。

24

ZABBIX-JP

おまけ（PandoraFMS）

25

ZABBIX-JP

おまけ（Opsview）

26

参考URL 本家

ZABBIX-JP

 http://www.zabbix.com/
 BTS https://support.zabbix.com/
 オフィシャル候補版 http://www.kodai74.net/packages/

 ZABBIX-JP

 http://www.zabbix.jp/

 個人

 Amazon Linux用SRPM
https://github.com/atanaka7/zabbix-jp-amzn1
27

ZABBIX-JP

再度、
何かご質問があれば。

※本文中に登場する会社名、商号名、製品名、サービス名称などの名称は、各社の商号、商標または登録商標です。

28