概要
弊社ではネットワーク機器をはじめとした機器監視のために、オープンソースのZabbixを使ってオンプレミスで構築をしている。
今までのZabbixはpacemakerを用いて同一拠点内で冗長化をしていた。
弊社は複数のデータセンターを跨いで動画配信・CDNを提供しており、サービス側はデータセンター単位で冗長化を行っているため、Zabbixもアップデートに合わせて単一拠点内の冗長構成から拠点をまたいだL3の冗長構成となるように設計の変更を試みた。
L3の冗長構成にあたっては、Zabbix6.0で追加されたHAの機能及びpostgresqlとpgpool-IIを活用したが、そこまでに紆余曲折あったので、その内容をお話したい。
Zabbixサーバの標準機能を用いて冗長するにはいくつか方法があったが、どれもそのまま使うには適していなかった。その中でZabbix6.0で追加されたHAの機能に加えて、postgresqlとpgpool-IIをうまく活用できないかと考えた。
zabbixのHA機能では共通のDBを参照する必要があるが、L3でDBを分散させるとpacemakerのようにL2のVIPを持たせられない。そこで同じDBを参照させるために127.0.0.1とDBのプロキシを併用し、「実体は違うけど同じIPアドレス、最終的な通信先は同じになる構成とし、これを解決した。さらにpgpool-IIの機能によりpostgresqlの自動フェイルオーバーも実現できた。
場所
IIJホール (天平ホール)
日時
Day2 2024年7月4日(木) 15:30~16:30(1時間)
発表者
公開資料
機器監視のためのZabbixを、DB含めてL3冗長化した話(小山)
機器監視のためのZabbixを、DB含めてL3冗長化した話(小山)
Slackチャネル
会期中や会期終了後の議論にお使いください
#janog54-zabbix-機器監視のためのzabbixをdb含めてl3冗長化した話