ZabbixでActive-Active冗長化構成を実現する場合、いくつか考慮しなければならないポイントがあります。それらのポイントを網羅し、自動化を実現したサービスが「まるごとおまかせZabbix 快適Z 高可用性オプション」です。
多重発報の抑制
Active-Active構成は、その名のとおりZabbixサーバー2台それぞれがActiveで、監視対象に対して多重監視をしています。そのため、何も考慮しないまま構築をしてしまうと監視対象機器に障害が発生した場合、1号機・2号機双方のZabbixサーバーから同じ障害通知が発報されてしまいます。
それらを抑制するために、1号機が監視をしている間は2号機の通知設定であるアクションのステータスを無効とし、1号機に障害が発生した際には2号機の通知設定であるアクションのステータスを有効にする必要があります。
本サービスでは、当社が独自に実装したスクリプトを用いて、それらの動作をすべて自動化しています。
系統切り替えの自動化
ZabbixサーバーのActive-Active構成は通知機能を切り替えることにより系統の切り替えをしますが、系統切り替えのトリガーとなる1号機の障害を検知する必要があります。
本サービスでは、1号機における障害の検知はZabbixの標準機能を用いて、2号機から1号機のICMP Ping、Zabbixサーバーのプロセス、データベースプロセスの死活監視を実施し、いずれかの監視で障害を検知した場合、アクションから通知機能の切り替えスクリプトを実行することで、1号機の障害検知から系統切り替えの自動化を実現しています。
監視設定の同期
監視設定の追加または変更をする場合、通常は1号機・2号機双方の監視設定を同期させるために、それぞれに同一の変更作業を実施する必要があります。しかし、その作業は運用上大きな負荷となるだけでなく、作業ミスによって1号機・2号機間で監視設定の差異が生じてしまうこともあります。
本サービスでは、これを回避するためにZabbix Japan LLCより公式提供されているZabbixバックアップツールを用いて、定期的に1号機から2号機に対する監視設定の同期をしています。
※ 監視設定の同期中は、2号機のZabbixサーバーが一時的に停止します。