Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

全自動Zabbix2.2&2.4

5,837 views

Published on

Published in: Software
  • Be the first to comment

全自動Zabbix2.2&2.4

  1. 1. 全自動Zabbix Zabbix自動登録+αのお話 Zabbix2.4対応版
  2. 2.  CN:九龍真乙(くりゅうまおと)  所属:自宅ラック勉強会  Twitter @qryuu 2015/02/282 自己紹介
  3. 3.  Zabbixでの監視は便利です。  HW監視、死活監視、リソース監視、グラフ表示  でも、監視対象を登録するのは、めんどくさいです。  じゃぁ自動化しちゃいましょう。  もちろんZabbixの機能で!(スクリプトとか作らずに) 趣旨 2015/02/283
  4. 4. 監視追加の自動化 2015/02/284
  5. 5.  Zabbixは監視対象を自動的に登録する機能がありま す。  自動登録には2種類あります。  Agent自動登録  ディスカバリ自動登録 Zabbixの自動登録 2015/02/285
  6. 6.  Agent自動登録  Zabbixエージェントを起動すると、アクティブチェックの 項目を確認するために、Agent→Serverという通信が 発生します。  このときにAgentは自分のホスト名をZabbixサーバに 通知して、Zabbixエージェント(アクティブ)のアイテム一 覧を取得します。  このときに通知されたホスト名がZabbixサーバに登録さ れていない場合に自動的にホスト登録するのがAgent自 動登録です。 2種類の自動登録(Agent) 2015/02/286
  7. 7.  Zabbixサーバは指定されたIPアドレスレンジを定期 的に走査して、監視対象の応答確認をすることができ ます。  これがディスカバリ自動登録です。  ディスカバリ自動登録ではIPアドレスの他に、SNMP ポーリングや指定ポートの応答、Zabbixエージェント へのポーリングなどを行う事ができます。  ポーリングによって値を収集することが出来るので、こ の値を元に任意のテンプレートとリンクさせる事もできま す。  ディスカバリ自動登録では、1つのホストに複数のイン ターフェイスを登録する事ができます。 2種類の自動登録(ディスカバリ) 2015/02/287
  8. 8. 2015/02/288 2種類の自動登録 Zabbixサーバ Zabbixエージェント ポート応答 SNMPエージェント Ping応答 Zabbixエージェント 自動登録 ディスカバリ
  9. 9.  それぞれの自動登録の方法について実際に見ていき ます 設定方法 2015/02/289
  10. 10. Agent自動登録  [設定][アクション]の画面でイベントソース[自動登録]を 選び[アクションの作成]をクリックします。 2015/02/2810
  11. 11.  自動登録はホスト登録されていない(名前が一致しな い)Agentからの通信が合った場合に動作するので、 『自動ホスト登録』せずにメール通知だけすることも出来 ます  [アクション]で設定するのはその際の本文になります。 Agent自動登録 2015/02/2811
  12. 12.  自動登録の実行条件はホスト名の部分一致、ホストメタデータの部分一致 (2.2以降)もししくは、経由したプロキシにより分岐することができます。  自動登録設定を複数作る事で、グループ分けやホスト毎に異なるテンプ レートを紐付けることができます。  実行条件設定が無い場合、すべての未登録Agentが自動登録されます。 Agent自動登録 2015/02/2812
  13. 13.  自動登録で出来る動作は以下の通りです。  [メッセージの送信][リモートコマンド][ホスト追加] [ホストグループへの登録][テンプレートリンク][ホスト無効化] Agent自動登録 2015/02/2813
  14. 14.  実際の使用では、[メッセージの送信][ホスト登録] [ホストグループ登録] [テンプレートリンク]が主に使わ れると思います。  ホストグループへの追加、テンプレートリンクではホスト グループやテンプレートを新規作成することは出来ない ため、事前に作成しておく必要があります。 Agent自動登録 2015/02/2814
  15. 15.  Agent自動登録されたホストは[エージェントインター フェイス]の設定が[IPアドレス]ではなく、[DNS]として 登録されます。このため、DNS、DDNSが適切に運用 されている環境で無い限り、パッシブ型の監視アイテム やPing等のシンプルチェックができません。 (2.0.5まで)  2.0.5,2.2以降はIPアドレスが登録されるようになりました。 このためパッシブアイテムを利用できます。 Agent自動登録 2015/02/2815
  16. 16.  Agent自動登録を利用すれば、監視対象が起動した時 点で、自動的に監視を追加する事ができます。  クラウドサーバやDockerのように、サーバが簡単に増え る環境では、Agent自動登録によって、サーバの増加と 監視開始をシンクロさせる事ができるようになります。 2015/02/2816 Agent自動登録
  17. 17.  ディスカバリ自動登録では、指定されたIPアドレスレン ジを定期的にスキャンして監視対象を探します。 2015/02/2817 ディスカバリ自動登録
  18. 18.  スキャンする際に同時に、ポートやエージェントの応答 を取得することができます。 2015/02/2818 ディスカバリ自動登録
  19. 19.  ディスカバリ設定は候補を集めてくるだけなので、実際 にホスト登録などを行う場合にはアクション設定が必要 です。  [設定][アクション]の画面でイベントソース[ディスカバリ] を選び[アクションの作成]をクリックします。 2015/02/2819 ディスカバリ自動登録
  20. 20.  Agent自動登録のときと同様、[アクション]はメール通 知の際の本文設定です。 2015/02/2820 ディスカバリ自動登録
  21. 21.  アクションの実行条件では、ディスカバリで収集した値 を元に、実行条件を指定することができます。  機器名やOS情報、ポート情報などから条件設定できる ため、Agent自動登録より柔軟な設定が可能です。 2015/02/2821 ディスカバリ自動登録
  22. 22. 2015/02/2822 ディスカバリ自動登録  ディスカバリ自動登録では、定期的にスキャンを行うた め、監視追加の他に、監視停止や監視削除も行うこと ができます。
  23. 23.  ディスカバリのダウンタイム検知を組み合わせることで、 Agent自動登録により登録されたホストを、自動的に監 視停止したり削除することができます。 2015/02/2823 ディスカバリ自動登録
  24. 24.  Zabbix2.4ではディスカバリ自動登録によって監視対象 を追加した場合、監視対象の応答が無くなった時点で、 自動的に監視対象が削除されます。 2015/02/2824 ディスカバリ自動登録
  25. 25.  Agent自動登録 仮想環境などで、Agent導入済みの仮想マシンを クローンして監視登録する場合など。 クラウドのオートスケールやDockerに対応できます。  OSホスト名はクローン時のウィザードなどで変更できま すが、Zabbix_agentd.confのHostnameを都度変更す るのは面倒です。  HostnameItem=system.hostname を有効化すれば、OSのホスト名を使用するため、ク ローン後にZabbix_agentd.confを編集する必要がなく なります。 2015/02/2825 ポイント
  26. 26.  ディスカバリ自動登録では、Zabbixエージェントや SNMPエージェントの値を使用することが出来ます。  Zabbixエージェントの[system.uname]や  SNMPエージェントの[sysDescr.0] を使えば、サーバのOS情報やNW機器の機種情報が 取得できるため、テンプレートリンクの際に有効な仕分 け情報とすることが出来ます。 2015/02/2826 ポイント
  27. 27.  Agent自動登録とディスカバリを利用した自動削除を組 み合わせることで以下の様な運用を自動化する事がで きます。  オートスケーリングホストを監視対象に加える  スケールインしたホストの監視を無効化する  報告・分析期間が終了したら自動的に削除する 2015/02/2827 実用例
  28. 28. 監視アイテムの自動化 2015/02/2828
  29. 29.  ローレベルディスカバリでは、プロトタイプとよばれる基 本設定を作っておくことで、NICやディスクなど、ホスト毎 に構成(名前や数)が異なるアイテムを自動的に監視 することができます。  Zabbix2.4からはCPU IDにも対応しました。 2015/02/2829 アイテムの自動生成 (ローレベルディスカバリ)
  30. 30.  ホストやテンプレートの一覧画面で、ローレベルディスカ バリを設定したいホストの[ディスカバリ]リンクをクリック します。 2015/02/2830 アイテムの自動生成 (ローレベルディスカバリ)
  31. 31.  まず、[ディスカバリルールの作成]でNIC一覧や、ディス ク一覧など、リスト形式で取得できるアイテムを定義し ます。 2015/02/2831 アイテムの自動生成 (ローレベルディスカバリ)
  32. 32.  [名前]や[キー]の部分は通常のアイテム設定と同様で す。  Zabbix2.0ではファイルシステム一覧を取得するための キー [vfs.fs.discovery]とNIC一覧を取得するための キー[net.if.discovery]が追加されました。  [フィルター]の[マクロ]はリストの中で、特定の正規表現 にマッチする物だけを呼び出す際に使用します。  SNMPのようにリストの値をそのまま使う場合には、設定 は必要ありません。  カスタムLLDとしてJSON形式でリストを返すスクリプトを 作成すれば、LLDを拡張することが出来ますが、このス ライドでは趣旨に反するので、紹介しません。 2015/02/2832 アイテムの自動生成 (ローレベルディスカバリ)
  33. 33.  ディスカバリルールの定義が終わったら、アイテム、トリ ガー、グラフのプロトタイプを設定します。  設定方法は通常のアイテムと変わりませんが、可変部 分についてはディスカバリルールのマクロやSNMPのマ クロなどを使って設定します。 2015/02/2833 アイテムの自動生成 (ローレベルディスカバリ)
  34. 34.  アイテム1つ分の設定を行えば、ディスカバリによって見 つかった分だけ、自動的にアイテムが複製され、監視さ れます。  名前やアイテムキーが重複しないように必ずマクロを 使って設定をおこなってください。 (重複するとアイテムが作成されません) 2015/02/2834 アイテムの自動生成 (ローレベルディスカバリ)
  35. 35.  Zabbix2.4ではディスカバリーフィルターが複数設定でき るようになりました。 2015/02/2835 アイテムの自動生成 (ローレベルディスカバリ)
  36. 36.  Zabbix2.4では複数のディスカバリフィルターが使えるた め、特定のNICやディレクトリは監視対象から除外する といった設定もより簡単に作る事ができます。 2015/02/2836 アイテムの自動生成 (ローレベルディスカバリ)
  37. 37. 画面作成の自動化 2015/02/2837
  38. 38.  せっかく、ホスト登録を自動化したら、マップ作成も自動 化しましょう。  [一般設定][アイコンのマッピング]ではインベントリの 情報を元に自動的にアイコンを紐付ける事ができます。 2015/02/2838 アイコンマッピング
  39. 39.  ホストインベントリの情報は、アイテム設定で [ホストインベントリフィールドの自動設定]で登録したい インベントリを選択することによって自動登録することが 可能です。テンプレートに設定しておきましょう。 2015/02/2839 アイコンマッピング
  40. 40.  マップ定義でアイコンの自動マッピングを選択すること で、 NW機器やサーバ毎に自動的にアイコンが変わる マップにすることができます。  マップ作成毎にアイコンを選択する手間がかかりません。  ただし、自動アイコンではステータス毎のアイコン定義 が出来ないので、障害・正常の判断は、文字情報やア イコンのハイライトで判断する必要があります。  残念ながらZabbix2.0~2.4ではホストインベントリの初 期値は[無効]になっているので、これを[自動]にする手 立ては必要です。 2015/02/2840 マップの自動作成
  41. 41.  マップアイコンの設定  アイコンタイプ[ホストグループ]で[ホストグループ内のホ スト]を選択した場合、ホスト一覧マップを自動生成する ことが出来ます。  アイコンマッピングと 組み合わせることで、 マップ作成が自動化できます。 2015/02/2841 マップの自動作成
  42. 42. スクリーン作成の自動化 2015/02/2842
  43. 43. 2015/02/2843 スクリーンのダイナミックアイテム  スクリーンを設定する際、[ダイナミックアイテム]にチェッ クを付けると1つのスクリーンを定義するだけで、 複数のホストの情報を切り替えて表示することができま す。
  44. 44.  ダイナミックアイテムが設定されているスクリーンを開く と、プルダウンで表示するホストを選択出来るようになり ます。1つのスクリーン設定で、全ホスト用のスクリーン 設定のように使う事ができます。 2015/02/2844 スクリーンのダイナミックアイテム
  45. 45.  Zabbix2.2まではLLDにより作成されたグラフをスクリー ンに登録するにはホスト毎に1つずつ登録する必要があ りました。  Zabbix2.4ではグラフのプロトタイプをスクリーンに登録 できるようになりました。 2015/02/2845 スクリーンのLLD
  46. 46.  スクリーンにグラフのプロトタイプを1つ登録するだけで、 LLDで作成されたすべてのグラフを一覧で見ることが できるようになります。 2015/02/2846 スクリーンのLLD
  47. 47. VMware監視 2015/02/2847
  48. 48.  Zabbix2.2以降からの機能です  vCenter Serverを監視対象として登録することで、その 配下のHypervisorsや仮想マシンを自動的に見つけ出 し(ホストLLD)、監視対象ホストとして登録してくれます。  vCenter Serverを使わずに、ESXiだけで運用している 環境では、同じようにESXiを登録するだけで、配下の 仮想マシンを自動的に見つけ出し、監視対象ホストとし て登録してくれます。 2015/02/2848 VMware監視
  49. 49.  VM監視に関わるパラメータは次の通りです。 VM監視系のconfパラメータ 2015/02/2849 ### Option: StartVMwareCollectors # Number of pre-forked vmware collector instances. # # Mandatory: no # Range: 0-250 # Default: StartVMwareCollectors=5 ### Option: VMwareFrequency # How often Zabbix will connect to VMware service to obtain a new data # # Mandatory: no # Range: 10-86400 # Default: VMwareFrequency=20 ### Option: VMwareCacheSize # Size of VMware cache, in bytes. # Shared memory size for storing VMware data. # # Mandatory: no # Range: 256K-2G # Default: VMwareCacheSize=256M Zabbixインストール直後の状態で は、 StartVMwareCollectors の設定が 0になっています。 VM監視を行う場合は環境規模に 合わせて1以上の値に設定してくだ さい。
  50. 50. VM監視テンプレートの種類 2015/02/2850 テンプレート名 解説(推測) Template Virt VMware vCenter Server/ 単体vSpher Hyperviser用テンプレー ト(手動適用) Template Virt VMware Guest LLDを実施し見つかったVMに対して 自動適用されるテンプレート Template Virt VMware Hypervisor LLDを実施し見つかった vSphere Hypervisorに対して 自動適用されるテンプレート  Zabbix2.0からアップデートインストールした場合、テン プレートは追加されません。別途インポートする必要が あります。
  51. 51.  VM監視テンプレートを利用するためには、vCenterや ESXiのデータを取得するためのID、パスワード、URLが 必要です。 VMwareテンプレートのマクロ設定 2015/02/2851
  52. 52. マクロ 内容 {$URL} vCenter/ESX/ESXiのURLを記入します。 https://<IPアドレス>/sdk となります。 ※/mobではないので注意 {$USERNAME} 対象のvCenterやESX/ESXiに読み取り権限がある UserIDを記入します。 {$PASSWORD} UserIDのパスワードを記入します。 マクロの内容 2015/02/2852
  53. 53.  LLDの機能により、自動的にHypervisorと仮想マシンが登録され テンプレートがリンクされて監視が開始されます。 VM監視 2015/02/2853
  54. 54.  Agent自動登録、ディスカバリ自動登録で、ホストを自 動登録して、適切なテンプレートと紐付ける、ホストグ ループで自動グループ分けする。  VM監視では管理ノードを登録すると配下のホストは LLDで登録される。  自動登録されたホストはローレベルディスカバリでアイ テム、トリガー、グラフを自動設定する  アイコンのマッピング、ホストグループ内のホストを使っ てマップを自動生成する。  スクリーンのダイナミックアイテムを使って、自動登録さ れたホストもスクリーンで確認出来るようにする。 2015/02/2854 全自動Zabbix
  55. 55. 2015/02/2855 全自動Zabbix  これで、どれだけ監視対象ホストが増えても、設定稼働 は増えませんね。  ※監視サーバの負荷監視は忘れずに!
  56. 56.  OSの定期アップデートやリブートの時に、Zabbixの通知 を止めたい。  そんな時はジョブツールとZabbixを連携させましょう 2015/02/2856 エクストラステージ
  57. 57. Job Arranger for Zabbix 2015/02/2857
  58. 58.  Zabbixと連動するOSSのジョブツールとして Job Arranger for Zabbixがあります。 http://ジョブ管理.fitechforce.com/ 2015/02/2858 Job Arranger for Zabbix
  59. 59.  Job Arrangerでは、大手ジョブツールのように、ボックス を繋ぐ事で、ジョブネットを作成することができます。 2015/02/2859 Job Arranger for Zabbix
  60. 60.  さらにJob Arrangerではジョブネットの中で、Zabbixの アイテムやトリガーの値や状態を利用したり、 Zabbixのメンテナンス機能では実現できないアイテム やトリガー単位での有効化・無効化を行う事もできます。 2015/02/2860 Job Arranger for Zabbix
  61. 61.  カレンダーを利用したスケジュール機能もあるため、祝 日や夏休みなどに対応したジョブスケジュールを実現 することもできます。 2015/02/2861 Job Arranger for Zabbix
  62. 62.  全自動Zabbixのテクニックと、Zabbixと連携するジョブ ツールを組み合わせることで、深夜作業や、繰り返し作 業を大きく減らす事ができます。  クラウドなどインフラ構築が自動化されるなかで、監視 設定も自動化することで、追従することができるようにな ります。  Zabbix 2.0 から Zabbix 2.2 へアップデートする際の注 意点なども以下のサイトで公開しています。  http://www.rack.sh/ 2015/02/2862 おわり

×