Zabbix3.0技術分科会の活動 Zabbix3.0の新機能について NTTCom Solutions 株式会社 第一オペレーション担当 福島 崇 2015/11/20 Copyright (c) Zabbix3.0 ワークショップ ▌ Zabbixパートナーによる技術分科会 2015/10/26 Zabbix2.4のリリース時と同様に、 Zabbixパートナーの有志4社によってZabbix3.0新機能の検証会を行いました。 今回の技術分科会に参加した企業(順不同) Zabbix3.0の導入について、ご相談承ります 2015/11/20 Copyright (c) 2 Zabbix3.0の新機能 5.1 Webインターフェースのデザイン刷新 画面遷移の操作など、基本的なところはほとんど変化していない 2015/11/20 Copyright (c) 3 Zabbix3.0の新機能 ■Zabbixモジュール間のTCP通信の暗号化 ・サーバ⇔プロキシ、サーバ⇔エージェント、 プロキシ⇔エージェント間のTLS暗号通信対応 ■将来予測を行うトリガー関数の追加 ・障害の発生を予測してアラートを上げるトリガー関数の追加 ■例外の更新間隔の指定方法にCustom Interval方式を追加 ・従来の方式の他に、cronのような書式による指定に対応。 例) 月~金の15:45に実行 ⇒ wd1-5h15m45 2015/11/20 Copyright (c) 4 Zabbix3.0の新機能 ■SNMPのLLDルールで複数のOIDを利用する機能 ・SNMPポーリングを利用したLLDルールの「OID」に複数のOIDを 記述し、その検索結果をマージして利用することが可能に。 ■ログ監視アイテムのデータ型に数値が利用可能に ・ログ監視アイテムのデータ型に「数値(整数)」「数値(浮動小数)」が 指定可能。outputパラメータがより有効に活用できるように。 ■反映されているユーザマクロを確認する機能 ・ホストやテンプレートに継承・反映されているマクロを 確認する機能を追加。 2015/11/20 Copyright (c) 5 Zabbix3.0の新機能 ■Webインターフェースの機能改善 ・IE8対応の終了 ■Housekeeperの強制実行機能 ・任意のタイミングでHousekeeperを実行可能に。 ■pdbを利用したクラッシュログの取得機能(Windows版Zabbixエージェントのみ) ・エージェントクラッシュ時に、より詳細なログを取得することが可能に。 ■JMXインターフェースのIPv6サポート ・JMXインターフェースのIPアドレスにIPv6のアドレスが利用可能に。 ■マクロの改良 ・アイテムのプロトタイプの「IPMIセンサー」と「単位」の項目に LLDマクロを利用可能に。 ・トリガーの「URL」にホストレベルのマクロ ({HOST.HOST}, {HOST.NAME}, {HOST.IP}, {HOST.DNS}, {HOST.CONN}, {HOST.PORT}) とユーザ定義マクロを利用可能に 2015/11/20 Copyright (c) 6 Zabbix3.0の新機能 ■アイテムの変更と改善 vmware.vm.cpu.ready[<url>,<uuid>] の追加 net.dns、net.dns.recordキーでプロトコルをTCPとUDPから選択可能に Windowsにおいて、net.dns、net.dns.recordキーを利用した時に、OSのレゾルバキャッシュを利用しないように改善 Linux(Kernel2.6.14以降)において、net.tcp.listenの情報をNETLINKから取得するように変更。 対応していない環境やバイナリでは従来通り/proc/net/tcpから取得 AIX, FreeBSD, Linux, Solarisにおいて、proc.memアイテムに第5のパラメータ「memtype」を追加 Linux(kernel2.6.24、2.6.33以降)において、system.cpu.util の typeパラメータに「guest」と「guest_nice」を追加 Windowsにおいて、vfs.fs.discoveryキーのLLDマクロに「{#FSDRIVETYPE}」を追加 「Zabbixアグリゲート」アイテムのパラメータ簡略化 LLDのディスカバリルールに利用できるODBC監視アイテム「db.odbc.discovery」を追加 未定義のユーザ定義マクロが利用された場合にアイテムやトリガーをエラーとするように仕様変更 ログ監視アイテムにおいて、送るべきログデータが無いときでもメタ情報を送信するように仕様変更 AIX、Linuxにおいて、vm.memory.size[available]のデータ取得元を変更 proc.mem、proc.numアイテムにおいてuserパラメータを指定した時、指定のユーザのプロセスが無い場合には 「取得不可」ではなく「0」を返すように変更 NTPサービス監視のためにnet.udp.service、net.udp.service.perfアイテムを追加 Windowsにおいて、Windowsサービスのディスカバリができるservice.discoveryキーを追加 Windowsにおいて、サービスの情報を取得するservice.infoキーを追加 vfs.fs.inodeキーを利用してCephFSを監視する場合にmodeにtotal以外を指定した場合に不正な値が返るのを、 正しく「取得不可」となるように修正 ホストに設定されているアイテムの総数を返すzabbix[host,,items]キーを追加 ホストに設定されている取得不可状態のアイテムの総数を返すzabbix[host,,items_unsupported]キーを追加 Solaris、Linuxにおいて、プロセスごとのCPU使用率を取得するproc.cpu.utilキーを追加 2015/11/20 Copyright (c) 7 Zabbix3.0の新機能 ■DebugLevel=5の追加 ・レベル5(extended debugging)の追加。 ■トリガー関数の機能改善 ・パーセンタいる計算を行うpercentile()関数の追加 ・パラメータにユーザ定義の正規表現を利用した場合 その正規表現設定の存在チェックを行うように改善 ■Zabbix APIの機能改善 ・usergroup.getメソッドに、ユーザグループの権限を取得できる selectRightsパラメータを追加 ・Value mappingを操作するためのAPI群を追加 その他にも多数の機能追加、機能改善が行われています https://www.zabbix.com/documentation/3.0/manual/introduction/whatsnew300 2015/11/20 Copyright (c) 8 Predictive trigger functions (将来予測を行うトリガー関数) Predictive trigger functions 将来予測を行うトリガー関数 Forecasting is not magic, it’s mostly statistics. 予測とは魔法ではない。 一般的には『統計』である。 Glebs Ivanovskis グレブス・イワノフスキース You’ve probably heard that “ There are three kinds of lies: lies, damned lies, and statistics.” 『世の中には3種類の嘘がある。 それは単なる嘘、たちの悪い嘘、統計に基づく嘘だ』 2015/11/20 Copyright (c) 9 Predictive trigger functions (将来予測を行うトリガー関数) 『Predictive trigger function』 とは => Zabbixが魔法のように将来を予測して、 障害の予兆を知らせてくれる機能 => 収集しているデータの傾向に合わせて 適切なモデル関数を選択すれば 最小二乗法によって障害の予兆が 検知できる 機能 (かもしれない) 2015/11/20 Copyright (c) 10 Predictive trigger functions (将来予測を行うトリガー関数) ■一定期間後に収集されると思われる値を返す関数 forecast (sec|#num,<time_shift>,time,<fit>,<mode>) sec|#num time_shift time fit mode …… …… …… …… …… 予測の根拠になる収集済みデータの期間 タイムシフト 予測したい未来までの時間 データ分布から想定されるモデル関数 得られる予測結果データのタイプ (value,min,max,avg,delta) ■しきい値に達するまでの残り時間を返す関数 timeleft (sec|#num,<time_shift>,threshold,<fit>) sec|#num time_shift threshold fit 2015/11/20 …… …… …… …… 予測の根拠になる収集済みデータの期間 タイムシフト しきい値 データ分布から想定されるモデル関数 Copyright (c) 11 Predictive trigger functions (将来予測を行うトリガー関数) 例えば、こんなグラフから人間が読み取ること 2015/11/20 Copyright (c) 12 Predictive trigger functions (将来予測を行うトリガー関数) 『この傾向が今後も続くとなれば、 おそらく14日後にはしきい値である2GBを下回るだろう』 脳内で描いた予想のグラフ 3GB 2GB 11/04 11/11 11/18 10/28 障害検知のしきい値 2015/11/20 Copyright (c) 13 Predictive trigger functions (将来予測を行うトリガー関数) では、こんなグラフだったら…… 2015/11/20 Copyright (c) 14 Predictive trigger functions (将来予測を行うトリガー関数) 脳内で描いた予想のグラフ ? 様々なデータに対する予想のグラフを確度高く描くためには データの分布にあわせて適切なロジックを採用する必要がある 最小二乗法では、適切なモデル関数の選択が重要 2015/11/20 Copyright (c) 15 Predictive trigger functions (将来予測を行うトリガー関数) 脳内で描いた予想のグラフ 途中でデータの分布が変化した場合には 様々なデータに対する予想のグラフを確度高く描くためには 都度その変化にあったモデル関数を選びなおす必要がある。 データの分布にあわせて適切なロジックを採用する必要がある 適切なモデル関数が選ばれていない場合、『統計に基づく嘘』になってしまう 最小二乗法では、適切なモデル関数の選択が重要 2015/11/20 Copyright (c) 16 Predictive trigger functions (将来予測を行うトリガー関数) fit パラメータで選択できる 各モデル関数のグラフイメージ ※ 多項式関数は代表例として3次のみ掲載 4次を超える高次多項式では解が求められない場合があるが その場合はトリガー条件式がエラーになる。 power logarithmic 2015/11/20 exponential polynomial3 linear Copyright (c) 17 Predictive trigger functions (将来予測を行うトリガー関数) おまけ 『sec|#num』パラメータに相当する 期間のヒストリを抽出して Microsoft Excelでグラフを描き 『近似曲線』を追加してそれぞれの モデル関数を選択してみると どんな予測曲線を描くのか イメージがつかみやすいと思います。 2015/11/20 Copyright (c) 18 Predictive trigger functions (将来予測を行うトリガー関数) おまけ その2 Predictive trigger functionsについてのご説明は、 以下のドキュメントにほぼ同じ内容が書いてあります。 英語でかつ難解な数式が飛び交う、非常に強力な睡眠導入剤ですが、 興味のある方は是非ご熟読いただければと思います。 http://zabbix.org/mw/images/1/18/Prediction_docs.pdf 2015/11/20 Copyright (c) 19 Multiple OID support in SNMP discovery SNMPのLLDルールで複数のOIDを利用する機能 2015/11/20 Copyright (c) 20 SNMPのLLDルールに複数OIDの指定が可能に SNMPを利用したLLD(従来) ディスカバリルール 取得されるデータ 2015/11/20 Copyright (c) 21 SNMPのLLDルールに複数OIDの指定が可能に SNMPを利用したLLD(Zabbix3.0) ディスカバリルール 取得されるデータ {#SNMPVALUE}マクロは廃止。 代わりにディスカバリルールのOID欄で定義したユーザ定義マクロが利用される。 2015/11/20 Copyright (c) 22 SNMPのLLDルールに複数OIDの指定が可能に 複数OIDを指定してディスカバリするには ディスカバリルールの書き方 書式: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …,] アイテムでの利用例 プロトタイプではルールで指定した全てのマクロの値が利用可能。 2015/11/20 Copyright (c) 23 SNMPのLLDルールに複数OIDの指定が可能に 複数指定した場合のリレーションシップ ifDescr の snmpwalk 結果 dot3StatsIndex の snmpwalk 結果 ディスカバリ結果のJSONデータ OIDの中のindexが同じもののvalueをまとめる 2015/11/20 Copyright (c) 24 ご清聴ありがとうございました 2015/11/20 Copyright (c) 25
© Copyright 2024 Paperzz