カスタマーサポート課の伊藤です。
普段は九龍と呼ばれています。
さて、2016/9/14にZabbix 3.2 がリリースされました。
詳細は、Zabbix LLC のニュースリリースをご覧下さい。
Zabbix 3.2はポイントリリースバージョンとなり、
次のバージョンのZabbix 3.4リリースがリリースされタイミングでフルサポートが終了し、
その1ヶ月後にリミテッドサポートが終了いたします。
Zabbix 3.0のLTSサポートとは異なりますのでご利用の際には、アップデート計画を含めてご検討ください。
さっそくですが、リリースノートの翻訳を行いましたのでご覧下さい。
アップグレードを行う際の注意点は、アップグレードノートおよび、アップグレード手順をご確認ください。
Zabbix3.2の新機能
イベントタグ
イベントにタグを付与する機能が追加されました。タグはトリガ単位で定義され、表示や通知の際に利用することが可能です。
グローバルイベント相関
イベントタグの情報に基づいて、イベントの相関関係を定義することが可能になりました。
この機能により新たなイベントによって、古いイベントを自動的にクローズすることができるるようになります。
この機能によってログ監視において、複数のメッセージの中から対になるメッセージを相関関係とすることで、
ログメッセージから個別にイベントをクローズすることができるようになります。
詳しくはマニュアルのイベント相関の項目をご確認ください。
トリガーレベルイベント相関
トリガーの回復条件とイベントタグを組み合わせて条件が一致した場合のみ、回復とさせることができるようになりました。
これにより、ログ監視やSNMPトラップ監視において、目視での内容確認を必要としない自動処理が可能となります。
手動でのトリガー正常化
トリガ設定で許可がされている場合、ZabbixのWEB UI上から手動で障害トリガーを正常に変化させることが出来るようになりました。
この機能によりSNMPトラップ監視やログ監視において、確認済みメッセージに対するワークフローを簡素化することが可能になります。
障害イベントの独立したエスカレーション
イベント生成モードを「障害イベントを連続して生成」に設定されたトリガーのイベントを個別にエスカレーションすることが出来るようになりました。
マクロ機能
{ITEM.VALUE} ,{ITEM.LASTVALUE} のマクロに対してregsub,iregsubという関数が利用できるようになりました。
これにより、受信した値を正規表現により評価し、評価結果に合致した場合に特定の出力を行う事ができます。
機能としては値のマッピングに似ていますが、より柔軟な評価が可能となります。
詳しくは、マニュアルのマクロ機能を参照してください。
受信した値 | マクロ | 出力 |
---|---|---|
123Log line | {{ITEM.VALUE}.regsub(^[0-9]+, Problem)} | Problem |
123 Log line | {{ITEM.VALUE}.regsub("^([0-9]+)", "Problem")} | Problem |
123 Log line | {{ITEM.VALUE}.regsub("^([0-9]+)", Problem ID: \1)} | Problem ID: 123 |
Log line | {{ITEM.VALUE}.regsub(".*", "Problem ID: \1")} | Problem ID: |
MySQL crashed errno 123 | {{ITEM.VALUE}.regsub("^([A-Z]+).*([0-9]+)", " Problem ID: \1_\2 ")} | Problem ID: MySQL_123 |
123 Log line | {{ITEM.VALUE}.regsub("([1-9]+", "Problem ID: \1" } | *UNKNOWN* (無効な正規表現) |
急激なログ出力への対処
ログ監視アイテムに新たにmaxdelayパラメータが追加されました。このパラメータは何秒以内に最新のログを評価したいのかを指定します。
それまでのログ収集実績(byte/sec)の情報を元に、現在出力されているログサイズが、指定秒数以内に読み込みが完了しないと判断した場合、指定秒数以内に読み込みが完了する位置まで、ログの読み込みをスキップします。
この機能により大量のログが発生した場合にZabbixServerおよびDBに掛かる負荷の軽減、およびログの取り込みが遅れ、最新のログが収集できないといった問題が解決されます。
さらにlog.count,logrt.countアイテムが追加されました。
このアイテムは、ログメッセージそのものでは無く、指定された条件にマッチするログの行数を返します。
これにより、指定回数以上のメッセージ出力などを評価できるようになります。
ヒステリシストリガーの簡素化
これまでヒステリシスなトリガーを作成する場合、トリガーステータスを判定条件に加えた複雑な条件式を作成する必要がありました。
しかし、Zabbix 3.2 ではトリガー設定に、障害条件とは別に、回復条件を定義出来るようになったため、とても簡単にヒステリシスなトリガーを作成することが出来るようになりました。
トリガーステータスを考慮せず、単純に回復条件を記載するだけで済みます。
メンテナンス中のエスカレーションロジックの変更
メンテナンス中のエスカレーションが変更されました。
これまでメンテナンス中であっても、メンテナンス前に開始されたAlertのエスカレーションは継続していました。
新しいロジックでは、メンテナンス中はエスカレーションを一時停止することが可能となっています。
詳しくは、ドキュメントのメンテナンスおよびエスカレーション の項目を確認してください。
LLDによって作成された項目が操作可能に
LLDによって作成されたアイテム、トリガー、グラフが通常の項目と同じように、チェックボックスを使って操作が可能になりました。これにより、WEB UIから手動で有効化、無効化、削除が行えるようになっています。
WEBシナリオのエクスポート/インポートに対応
WEB監視項目のエクスポート/インポートに対応しました。
これにより、WEB監視項目のバックアップや移行が簡単に行えるようになります。
検索フィルタの追加
WEB UIのいくつかのページにおいて名前だけでは無く、ステータスやタイプ、モードによる検索フィルタが追加されました。
正常イベントからacknowledge機能を削除しました
これまで、正常イベントでも、障害イベントでもacknowledge機能がありましたが、
正常イベントではacknowledgeする必要が無いため、この機能を削除しました。
APIメソッドの追加
新たにproblem.getメソッドが追加されました。
count 関数のoperatorパラメータへの機能追加
count関数の第3パラメータでregexp, iregexpが利用可能になりました。
サポートされていないアイテムのでnodataトリガーの有効化
これまで、アイテムが取得不可となった場合nodataトリガーは評価されませんでした。
このため、値が取れていない事を検知しようとした際に、何らかの理由でアイテムが取得不可となるとこれを検知することが出来ませんでした。
Zabbix 3.2ではアイテムが取得不可であってもnodataトリガーの評価は動作するため、アイテムが取得不可となった場合も検知することが可能となります。
このほかにも、DBの効率化や、柔軟なエイリアス設定機能などが追加されています。
感想
Zabbix 3.2 はサポート期間の短いポイントリリースではありますが、
運用現場で求められていた、手動でのトリガー正常化など、多くの機能改善が含まれています。
アップデート計画なども考慮の上で、アップグレードを行うのか、あるいは 4.0 LTSを待つのか検討を頂ければ幸いです。