Más contenido relacionado
La actualidad más candente (20)
Similar a Zabbix社内勉強会資料-Zabbix2.0新機能紹介編- (20)
Más de Daisuke Ikeda (20)
Zabbix社内勉強会資料-Zabbix2.0新機能紹介編-
- 3. Zabbixの監視の仕組み
Apache
(Zabbix Frontend)
Zabbix Agent
設定情報
SNMP Agent
DB Server
監視結果情報
Shared Memory
dbsyncer
trapper
SNMP Agent
poller
Zabbix Server alerter
discoverer
・
・
・
- 4. Zabbixの監視設定の基本
テンプレート
アイテム グラフ トリガー アクション
ホストグループ 割当
ホスト アイテム グラフ トリガー アクション
・
ホスト ・
・
・
・
・ アイテム グラフ トリガー
例
ホストグループ:Linux アイテム:CPU使用率
ホスト:Server1 トリガー:CPU使用率が5分間平均80%以上
テンプレート:LinuxServerテンプレート アクション:管理者にアラートメール送信
- 6. ローレベルディスカバリ
NIC,Disk,SNMPOIDの情報を自動探索
サーバ毎に構成が異なる場合、
Zabbix1.8の機能だけだと、テンプレート作成が困難
・無駄な監視設定排除
Zabbix2.0では自動的にディスカバリをし、
ディスカバリ結果に応じた監視アイテムを自動生成 ・運用の手間の削減
eth0 / SNMPOID例
・ディスク情報のOIDをディスカバリ
eth1 HOST-RESOURCES-MIB::hrStorageDescr
/boot
・インデックスとバリューが取得可能
eth2 /var {#SNMPINDEX} インデックス情報が格納
{#SNMPVALUE} バリュー情報が格納
/proc/net/devの情報を自動取得 /proc/mountsの情報を自動取得 ・マクロを使って監視設定
注)Linuxの場合 注)Linuxの場合
注)NIC,DiskのディスカバリにはZabbix2.0のAgent導入が必要
- 8. ZabbixJavaGateway
必要な作業
1. OpenJDKインストール(JavaGateway稼働マシン)
2. Zabbix Java Gatewayのインストール・設定(JavaGateway稼働マシン)
3. Zabbix Serverの設定変更(ZabbixServer再起動が必要)(ZabbixServer稼働マシン)
JavaGateway=JavaGatewayIPアドレス
JavaGatewayPort=JavaGateway稼働ポート
StartJavaPollers=ポーラープロセス数指定
4. 各Javaアプリケーションの起動オプション設定(監視対象機器)
-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=10080
5. JMX監視用プロセス稼働ポートのFW開放設定(監視対象機器)
6. ZabbixにJMX監視用アイテム登録(ZabbixSeverWeb管理画面)
jmx["オブジェクトネーム","アトリビュートネーム"]
- 9. ホストインベントリ
ホストインベントリとは?
OS情報や設置場所情報など監視対象機器情報
Zabbix2.0からホストインベントリの自動登録機能追加
Zabbixの監視アイテムで取得した情報をホストインベントリの値として登録可能に
ホストインベントリ使うと何が嬉しい?
ホストインベントリの情報はアラートメールなどに マクロで追記可能
- 11. Zabbix API
具体例1
ログイン用リクエスト
$ curl -d '{"auth":null,"method":"user.login","id":100,"params":{"password":"zabbix","
user":"admin"},"jsonrpc":"2.0"}' -H "Content-Type:application/json-rpc" http:
//hostname/zabbix/api_jsonrpc.php
レスポンス
{"jsonrpc":"2.0","result":"acd6dea3b..........f272c9ffae254","id":100}
アクセストークン
アクセストークンはDBのSessionテーブルに保管され、
以降のAPIアクセスはアクセストークンを用いて認証をパスする
- 12. Zabbix API
具体例2
ホスト情報取得リクエスト
$ curl -d '{"auth":"acd6dea3b..........f272c9ffae254","method":"host.get","id":
100,"params":{"filter":{"host":["Zabbix Server"]},"selectInterfaces":"extend","
output":"extend"},"jsonrpc":"2.0"}' -H "Content-Type:application/json-rpc" http:
//hostname/zabbix/api_jsonrpc.php
selectInterfacesパラメータは1.8系のAPIには存在しないので注意
APIの詳細はZabbix公式マニュアルを参照
http://www.zabbix.com/documentation/2.0/manual/appendix/api/api
- 13. Zabbix APIの活用例
AWSのインスタンス管理
1. AWSのEC2インスタンス情報をAWS APIから取得
2. Zabbix APIのhost.createメソッドでホスト登録
host.create実行時にTemplateやGroupへの割当も可能
外部ツールとの連携
1. Zabbix APIでトリガー情報を取得
2. ChromeのExtensionでトリガー情報閲覧&障害のデスクトップ通知
https://chrome.google.
com/webstore/detail/odjpdjeegacmncmodjbeboldofhljjjf