リバースプロキシでのコマンドセンター(メタコンソール)設定
この記事では、サポート終了となっているオペレーティングシステムである CentOS 6 を使用しています。
概要
Pandora FMS が、コマンドセンター (メタコンソール) に直接アクセスできるクライアントにのみサービスを提供しているとします。コマンドセンターのみがパブリック IP で外部に公開されており、その下のノードには直接アクセスできない想定です。
コマンドセンター(メタコンソール):
ホスト名: meta.es、 79.151.30.102 (グローバルIP)、192.168.1.10 (プライベートIP)
Pandora FMS コマンドセンター (メタコンソール) パス:
http://meta.es/pandora_console
公開 URL:
http://meta.es/pandora_console
ノード 1:
ホスト名: node1.es、192.168.1.11 (プライベートIP)
Pandora FMS node1 パス:
http://node1.es/pandora_console
公開 URL:
http://meta.es/node1
ノード 2:
ホスト名: node2.es、 192.168.1.12 (プライベートIP)
Pandora FMS node2 パス:
http://node2.es/pandora_console
公開 URL:
http://meta.es/node2
ノード 3:
ホスト名: node3.es、 192.168.1.13 (プライベートIP)
Pandora FMS node3 パス:
http://node3.es/pandora_console
公開 URL:
http://meta.es/node3
ユーザは、コマンドセンター(メタコンソール)を通してすべてのノードにアクセスする必要がありますが、ノードは内部のIPのため初期設定時にはアクセスできません。 まずは、すべてのノードへアクセスできるように、apache の mod_proxy モジュールをコマンドセンター(メタコンソール)サーバで有効化します。以下では CentOS 6.7 と apache 2.2 を想定しています。
コマンドセンター(メタコンソール)設定
/etc/hosts
ファイルに、各ノードの情報を次のように記載します。
127.0.0.1 meta.es 192.168.1.11 node1.es 192.168.1.12 node2.es 192.168.1.13 node3.es
apache で mod_proxy
モジュールを有効化するには、設定ファイル httpd.conf
を開き、次の行が有効になっているか確認します。
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so LoadModule proxy_connect_module modules/mod_proxy_connect.so
次の設定を httpd.conf
に追加します。
ProxyRequests Off ProxyPreserveHost On ProxyPass /node1 http://node1.es/pandora_console ProxyPassReverse /node1 http://node1.es/pandora_console ProxyPass /node2 http://node2.es/pandora_console ProxyPassReverse /node2 http://node2.es/pandora_console ProxyPass /node3 http://node3.es/pandora_console ProxyPassReverse /node3 http://node3.es/pandora_console
これにより、以下にアクセスすると、
http://meta.es/node1
以下にリダイレクトされます。
http://node1.es/pandora_console
他のノードも同様です。HTTPS を有効化している場合は、以下も追加します。
SSLEngine on SSLProxyEngine On SSLCertificateFile /etc/httpd/ssl/ca.crt SSLCertificateKeyFile /etc/httpd/ssl/ca.key ProxyRequests Off ProxyPreserveHost On ProxyPass /node1 https://node1.es/pandora_console ProxyPassReverse /node1 https://node1.es/pandora_console ProxyPass /node2 https://node2.es/pandora_console ProxyPassReverse /node2 https://node2.es/pandora_console ProxyPass /node3 https://node3.es/pandora_console ProxyPassReverse /node3 https://node3.es/pandora_console
ノード1、2、3 の apache の ca.key
および ca.crt
を設定しています。
最後のステップとして、コマンドセンター(メタコンソール)の設定を行います。特定の方法で作成する必要がある唯一のパラメータは次のとおりです。
コンソール URL: 各ノードの httpd.conf ファイルでの設定と一致する各ノードの公開 URL を指定します。
http://meta.es/node1 , http://meta.es/node2 , http://meta.es/node3
コマンドセンター(メタコンソール)からノードへの接続を設定したあとは、次にそれぞれのノードの設定を行います。
http の代わりに https を利用している場合は、それぞれリンク先が異なります。
ノードの設定
各ノードに追加する必要がある唯一の特別な設定は、コンソールセットアップの公開 URL です。この URL は、最初に示したシナリオの各ケースで示されている公開 URL を使用して設定する必要があります。ノード 1 の例:
http の代わりに https を利用している場合は、それぞれリンク先が異なります。