Zabbix構成の分割およびWebサーバの冗長化について

Zabbixの構成について、現在下記のように作成しております。

 ●Webサーバ(httpd用)×2台

 ●Zabbixマネージャサーバ×1台

 ●ZabbixDB用サーバ(Mysql)×1台

通信経路は以下の2通りが確認できました。

 経路①:Webサーバ×2⇒(10051port)⇒Zabbixマネージャサーバ⇒(3306port)⇒ZabbixDB用サーバ

 経路②:Webサーバ×2⇒(3306port)⇒ZabbixDB用サーバ

ご質問内容
 1.冗長化について、Webサーバを冗長化させるのみですとZabbixマネージャサーバからDBへの書き込み経路が1つだけ
   であるため、DBへの書き込みの誤動作(2台のサーバが全く同じ内容を書き込みに行く等)は発生しないという認識でよろしいでしょうか。
   また、Webサーバの冗長化について、実績のある方はいらっしゃいますでしょうか。

 2.経路①については、Web画面から設定変更を加える際に発生する通信経路であるという認識でしょうか。

 3.経路②については、DBの中身をWeb画面に表示させるのみの通信経路であるという認識でしょうか。

 
 

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

ご質問内容
 1.冗長化について、Webサーバを冗長化させるのみですとZabbixマネージャサーバからDBへの書き込み経路が1つだけ
   であるため、DBへの書き込みの誤動作(2台のサーバが全く同じ内容を書き込みに行く等)は発生しないという認識でよろしいでしょうか。

冗長化の方式次第です。
2台のWebサーバーがどちらもアクティブであった場合は、同時に同
じ情報を更新する可能性があるため注意が必要です。

 2.経路①については、Web画面から設定変更を加える際に発生する通信経路であるという認識でしょうか。

いいえ違います。
ZabbixのWebインターフェースから設定変更を行った場合は、Webサ
ーバーから直接DBサーバーへのアクセスが発生します。

 3.経路②については、DBの中身をWeb画面に表示させるのみの通信経路であるという認識でしょうか。

表示だけではなく、更新も含まれます。

ユーザー zabbixat の写真

TNK様

ご回答頂き、ありがとうございます。

二点確認させて下さい。
>
>冗長化の方式次第です。
>2台のWebサーバーがどちらもアクティブであった場合は、同時に同
>じ情報を更新する可能性があるため注意が必要です。
>
⇒こちらについて、閲覧のみですと問題ない認識でしょうか。

>
> 2.経路①については、Web画面から設定変更を加える際に発生する通信経路であるという認識でしょうか。
>
>いいえ違います。
>ZabbixのWebインターフェースから設定変更を行った場合は、Webサ
>ーバーから直接DBサーバーへのアクセスが発生します。
>
> 3.経路②については、DBの中身をWeb画面に表示させるのみの通信経路であるという認識でしょうか。
>
>表示だけではなく、更新も含まれます。
>
⇒経路①と経路②共にDBの更新があるという理解をしました。

 経路①と経路②にて発生する処理の違いについて、お手数ではございますが、ご教示頂けますでしょうか。

ユーザー TNK の写真

⇒こちらについて、閲覧のみですと問題ない認識でしょうか。

閲覧のみでもユーザーのログインセッション情報の更新が行われま
す。

とはいえ、閲覧のみであれば、同時に複数のWebサーバーがアクテ
ィブであった場合でも、ユーザーがそれぞれ専用のアカウントを使
用していれば、特に問題となることはないと思います。

⇒経路①と経路②共にDBの更新があるという理解をしました。

 経路①と経路②にて発生する処理の違いについて、お手数ではございますが、ご教示頂けますでしょうか。

基本的には、経路①のようなZabbixサーバーのプロセスを経由して
更新することはありません。
Webインターフェースからの設定変更や情報参照は直接DBサーバー
へのアクセスとなります。

WebサーバーからZabbixサーバーのプロセスのアクセスは、ダッシ
ュボード上などでZabbixサーバーが起動しているかの表示があると
思いますが、そのチェック用のアクセスです。

ユーザー zabbixat の写真

TNK 様

ご回答頂き、ありがとうございます。
二点追加で確認させて下さい。

>
>基本的には、経路①のようなZabbixサーバーのプロセスを経由して
>更新することはありません。
>Webインターフェースからの設定変更や情報参照は直接DBサーバー
>へのアクセスとなります。
>
⇒こちらについて、
 Webサーバ⇒ZabbixDBサーバへの通信は3306portを使用する認識でしょうか。

>
>WebサーバーからZabbixサーバーのプロセスのアクセスは、ダッシ
>ュボード上などでZabbixサーバーが起動しているかの表示があると
>思いますが、そのチェック用のアクセスです。
>
⇒こちらについて、
 Webサーバ⇒Zabbixマネージャサーバへの通信は10051portを使用する認識でしょうか。

ユーザー TNK の写真

⇒こちらについて、
 Webサーバ⇒ZabbixDBサーバへの通信は3306portを使用する認識でしょうか。

そのように設定していればそうなります。

⇒こちらについて、
 Webサーバ⇒Zabbixマネージャサーバへの通信は10051portを使用する認識でしょうか。

そのように設定していればそうなります。

Webインターフェースの初期設定時のウィザードで指定したものが
使用されます。
パッケージで導入した環境であれば、

 /etc/zabbix/web/zabbix.conf.php

に設定した値が保存されているはずです。

ユーザー zabbixat の写真

TNK様

ご回答頂き、ありがとうございます。

>
> /etc/zabbix/web/zabbix.conf.php
>
⇒こちらについて、『global $DB;』が下記の設定となっております。
 『0』の場合は、デフォルトの『3306』を使用するという認識でよろしいでしょうか。

 $DB['PORT'] = '0';

ユーザー TNK の写真

初期のセットアップウィザードで表示される通り、Database port
に0を指定した場合は、デフォルトが使用されます。
MySQLの場合は、3306です。