Zabbix Agentの接続先Zabbix Server切り替え手順のご確認
いつもお世話になっております。
[現在の環境]
OS:RHEL 7.3
Zabbix: 3.0.28
・本番環境
zabbix server A - zabbix agent A (複数台)
・開発環境
zabbix server B - zabbix agent B (複数台)
[質問の背景]
下記の通り、一時的に本番環境にある zabbix agent A を 開発環境のzabbix server B へ接続し、その後、変更後の環境からzabbix agent Aを削除し、再度上記の「現在の環境」へと戻したいと考えています。
・本番環境
zabbix server A
・開発環境
zabbix server B - zabbix agent B
- zabbix agent A
開発Zabbixと本番Zabbixにおける設定上の差異は以下となります。
・ホストグループ名: 同じ名前
・ホスト名: 異なる名前
・テンプレート名: ホスト固有のものは異なる名前だが、OS共通で括っているテンプレートは同じ名前(アイテムやトリガーの内容は同じ)
なお、接続先の切り替えは、以下の手順で行います。
1. hostsファイルのIPを変更
2. 本番環境でホストとテンプレートをエクスポート
3. 開発環境にエクスポートしたホストとテンプレートをインポート
[質問事項]
1.変更後も継続して開発/本番ともに監視を続けるために、上記の切り替え手順の他に必要な作業はあるでしょうか。
2.変更後も継続して開発/本番ともに監視を続けるために、zabbix server Bのホストグループに本番の zabbix agent A のホストを追加する必要があるでしょうか。
3.zabbix agent Aを開発環境から外す際、設定->ホスト->対象のホスト名->テンプレートより、”リンクと保存データを削除”を実施する予定です。
"リンクと保存データを削除”を実行してもテンプレートは削除されず、ホストに紐づいた情報のみ削除されるという認識で正しいでしょうか。
よろしくお願いいたします。
Yasumi - 投稿数: 380
「現在の環境」とは「本番環境」のことでよろしかったでしょうか。
また、「本番環境」と「開発環境」のOSとバージョンは同一でよろしかったでしょうか。
1
「変更後も継続して開発/本番ともに監視を続ける」とありますが、
これはZabbixServer AとB両方で、同じホストを同時に監視をしたいということでしょうか。
であれば、ZabbixAgentのconfファイルの項目「Server=」と「ServerActive=」に、
ZabbixServer AとZabbixServer Bの両方のIPを「,」区切りで記述し、ZabbixAgentを再起動すれば良いと思います。
※もちろん、監視対象ホストがZabbixServer AとBに通信可能である前提です
ZabbixServer AとBの設定上の差異がいまいち分かりませんが、
Aに登録されているホストとテンプレートがBには登録されていない、という認識でよかったでしょうか。
でしたら、エクスポート⇒インポートの手順で移動させれば、おおむね問題ないと思います。
細かい差異は手動で設定してください。
2
「zabbix server Bのホストグループに本番の zabbix agent A のホストを追加…」とありますが、
ホストグループはあくまで運用・管理上の区分けであり、監視(アイテム情報の取得)そのものには影響を与えません。
Zabbixのアクション設定で、ホストグループを条件に入れていれば、アクションへの影響はあります。
3
「リンクと保存データを削除」は、ホストに対するテンプレートを設定解除し、アイテムのヒストリとトレンドを削除する処理です。
テンプレートは削除されません。
TNK - 投稿数: 4719
1点だけ補足させて頂きます。
Zabbix上のホストの名前が異なるのであれば、本番環境からエクス
ポートしたしたものを、そのまま開発環境にインポートすることに
は注意が必要です。
例えば、すでに開発環境に同じ名前のホストが登録されている場合
は、そのままインポートすると上書きするかインポートできないか
のどちらかになるでしょう。
この場合は、エクスポートしたファイルを変更して、ホストの名前
を変更してから開発環境にインポートする必要があるでしょう。
また、同じ名前のホストが開発環境に登録されていないのであれば、
一度本番環境の名前でインポートしてしまって、インポート後に開
発環境上のWebインターフェース上で修正してください。
そして、その変更する名前に合わせて、zabbix_agentd.conf内の設
定のHostnameの設定も変更が必要です。
mino - 投稿数: 6
TNKさま、
ご回答ありがとうございます。
こちらのご回答は、監視対象サーバーのホスト名が接続先サーバー切り替え後に監視対象サーバーのホスト名を変更することを前提としてご回答頂いている認識で正しいでしょうか。
前述しております通り今回は監視対象サーバーのホスト名自体は変更予定がないため、この懸念も特になくなるかと認識しております。
mino - 投稿数: 6
Yasumiさま、
ご回答ありがとうございます。
>「現在の環境」とは「本番環境」のことでよろしかったでしょうか。
はい、ご認識のとおりです。
1
>「変更後も継続して開発/本番ともに監視を続ける」とありますが、
>これはZabbixServer AとB両方で、同じホストを同時に監視をしたいということでしょうか。
説明に不足があり申し訳ありません。
Zabbix Server A から Server B へ切り替え、及び、Server B から Server A への切り戻しは、通信経路変更に伴うもので片方としか通信できない状況となります。
”継続して”というのは、Server B 接続時(切り替え後)には Server B にて、Server A へ接続時(切り戻し後)には Server A にて対象サーバーを監視し続けることを示します。
そのため、同時ではございません。
>であれば、ZabbixAgentのconfファイルの項目「Server=」と「ServerActive=」に、
>ZabbixServer AとZabbixServer Bの両方のIPを「,」区切りで記述し、ZabbixAgentを再起動すれば良いと思います。
>※もちろん、監視対象ホストがZabbixServer AとBに通信可能である前提です
”Server=”及び”ServerActive=”にはホスト名を入れております。
今回切り替えでは、hostsファイルにある指定している Zabbix Server A のIPaddrを変更し、ホスト名は変えずにIPのみ変更する。という方法を実施予定です。
>ZabbixServer AとBの設定上の差異がいまいち分かりませんが、
>Aに登録されているホストとテンプレートがBには登録されていない、という認識でよかったでしょうか。
>でしたら、エクスポート⇒インポートの手順で移動させれば、おおむね問題ないと思います。
>細かい差異は手動で設定してください。
はい、ご認識の通りです。承知いたしました。
2,3についても承知いたしました。
mino - 投稿数: 6
TNKさま、
ご回答ありがとうございます。
説明に不足があり申し訳ありません。
監視対象のホスト名は異なり、また、ホスト名変更は想定しておりません。(zabbix agent A はホスト名 A で、zabbix agent B はホスト名 B のまま利用)
また、confファイル内のHostnameはコメントアウトして利用する方針です。
そのため、”同じ名前のホストが開発環境に登録されていない”が状況として正となります。
ここで念のため確認させて頂きたいのですが、
今回ご回答いただいた情報は、監視対象サーバーのホスト名が接続先サーバー切り替え後に監視対象サーバーのホスト名を変更することを前提としてご回答頂いている認識で正しいでしょうか。
前述しております通り監視対象サーバーのホスト名自体は変更予定がないため、この懸念も特になくなるかと認識しております。
Yasumi - 投稿数: 380
なるほど。confを変更せず、hostsでZabbixServerの向き先を変更してやろう、という案なのですね。
おそらく大丈夫かと思いますが、情報の取得に異変があれば、ZabbixAgentを再起動する必要があると思います。
TNKさんが記載していましたが、インポートで監視対象ホストを入れるのは若干気にするポイントですので、
台数が多くなければ手動で設定してあげるのも手でしょうね。
mino - 投稿数: 6
Yasumiさま、
承知しました。補足ありがとうございます!