Metaconsole avec proxy inverse
Cet article utilise CentOS 6, un système d'exploitation qui a déjà atteint son cycle de vie (End-of-life product).
Introduction
Supposons que Pandora FMS dessert des clients qui n'ont qu'un accès direct à la Metaconsole qui est la seule à être opérationnelle à l'extérieur avec leur adresse IP publique et qui n'ont pas d'accès direct aux nœuds en dessous. Tel serait le scénario envisagé à ce stade.
Métaconsole
Hostname: meta.artica.es, 79.151.30.102 (IP Pública), 192.168.1.10 (IP Privada), http://meta.artica.es/pandora_console (chemin Métaconsole de Pandora FMS) http://meta.artica.es/pandora_console (URL Publique)
Noeud 1 :
Hostname: node1.artica.es, 192.168.1.10 (IP Privada), http://node1.artica.es/pandora_console (chemin node1 de Pandora FMS) http://meta.artica.es/node1 (URL Publique)
Noeud 2 :
Hostname: node2.artica.es, 192.168.1.11 (IP Privada), http://node2.artica.es/pandora_console (chemin node2 de Pandora FMS) http://meta.artica.es/node2 (URL Publique)
Noeud 3 :
Hostname: node3.artica.es, 192.168.1.12 (IP Privada), http://node3.artica.es/pandora_console (chemin node3 de Pandora FMS) http://meta.artica.es/node3 (URL Publique)
Le client devra avoir accès via la Métaconsole à tous les nœuds, mais initialement il ne peut pas, car ceux-ci ont des IP internes et de l'extérieur il n'y a pas de connectivité avec eux. Pour ce faire, activez le module mod_proxy dans l'apache de la Métaconsole afin qu'il puisse accéder directement à tous les nœuds. La configuration indiquée est sur apache 2.2 en Centos 6.7.
Configuration de la Métaconsole
Tout d'abord, ajoutez dans le fichier /etc/hosts toutes les adresses des différents nœuds en laissant quelque chose comme ceci :
127.0.0.1 meta.artica.es 192.168.10.1 node1.artica.es 192.168.10.2 node2.artica.es 192.168.10.3 node3.artica.es
Pour activer le mod_proxy sur le serveur apache, accédez au fichier de configuration apache (httpd.conf) et vérifiez d'abord que toutes ces lignes sont activées :
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
Une fois cela fait, ajoutez les lignes suivantes au fichier httpd.conf :
ProxyRequests Off ProxyPreserveHost On ProxyPass /node1 http://node1.artica.es/pandora_console ProxyPassReverse /node1 http://node1.artica.es/pandora_console ProxyPass /node2 http://node2.artica.es/pandora_console ProxyPassReverse /node2 http://node2.artica.es/pandora_console ProxyPass /node3 http://node3.artica.es/pandora_console ProxyPassReverse /node3 http://node3.artica.es/pandora_console
Avec cela, vous indiquez que lorsque quelqu'un accède à http://meta.artica.es/node1, il sera automatiquement redirigé vers http://node1.artica.es/pandora_console et ainsi de suite avec tous les nœuds.
Dans le cas où HTTPS est activé, ajoutez cette configuration :
SSLEngine on SSLProxyEngine On SSLCertificateFile /etc/httpd/ssl/ca.crt SSLCertificateKeyFile /etc/httpd/ssl/ca.key ProxyRequests Off ProxyPreserveHost On ProxyPass /node1 https://node1.artica.es/pandora_console ProxyPassReverse /node1 https://node1.artica.es/pandora_console ProxyPass /node2 https://node2.artica.es/pandora_console ProxyPassReverse /node2 https://node2.artica.es/pandora_console ProxyPass /node3 https://node3.artica.es/pandora_console ProxyPassReverse /node3 https://node3.artica.es/pandora_console
Les certificats ca.key et ca.crt sont utilisés par les serveurs apache des nœud1, nœud2 et nœud3.
La dernière étape à effectuer est la configuration de la Métaconsole. Le seul paramètre que vous devez effectuer de manière spécifique est :
Console URL : Indiquez les URL publiques de chacun des nœuds qui correspondront au lien configuré dans le fichier httpd.conf pour chacun des nœuds. (http://meta.artica.es/node1[[http://meta.artica.es/node1|,]] http://meta.artica.es/node2, http://meta.artica.es/node3)
Une fois la Métaconsole configurée pour contacter les nœuds, l'étape suivante consiste à configurer chacun des nœuds.
Les liens varient dans chaque cas si vous utilisez https au lieu de http.
Configuration des nœuds
Le seul paramètre spécial à ajouter à chaque nœud est l'URL publique dans la configuration de la console. Configurez cette URL avec l'URL publique que vous indiquez dans chaque cas dans le scénario que nous avons présenté au début. Exemple au nœud 1 :
Les liens varient dans chaque cas si vous utilisez https au lieu de http.