Configuration d'un cluster OpenSearch pour Pandora FMS

Introduction

Il s'agit d'un guide de configuration pour installer plusieurs nœuds de travail OpenSearch, avec éventuellement des certificats auto-signés et une connexion SSL. Vous pouvez partir d'un nœud existant avec des données ou d'un cluster complètement nouveau. Une fois l'installation réussie, des fonctionnalités supplémentaires très utiles pourront également être ajoutées.

Il a été testé sur :

  1. CentOS® 8.4 et 8.5.
  2. Rocky Linux® 8.4, 8.5, 8.6, 8.7 et 9.5.
  3. RedHat® 8.5 et 9.5.

Il est recommandé de distribuer le serveur Pandora FMS et OpenSearch sur des serveurs indépendants.

Installation du script

Le processus d'installation requis pour chaque nœud qui fonctionnera avec Pandora FMS s'effectue en téléchargeant et en exécutant (qui peut être personnalisé) le fichier suivant:

bash pandorafms-opensearch-el

Variables d'environnement par défaut

  • [ “$CLUSTER_NAME” ], valeur par défaut: CLUSTER_NAME='pandora_opensearch' .
  • [ “$OPENSEARCH_PASS” ], valeur par défaut: OPENSEARCH_PASS=“P4nd0r4!FMS” .
env CLUSTER_NAME="pandora_opensearch" \
OPENSEARCH_PASS="P4nd0r4!FMS" \
bash -c "$(curl -SsL https://pfms.me/pandorafms-opensearch-el)"

Configuration sur tous les nœuds

Bien que ces instructions doivent être suivies pour chaque nœud, certains aspects doivent être personnalisés pour chaque nœud: la mémoire de chaque périphérique et s'il s'agit d'un nœud existant avec des données.

  • Désactiver le pare-feu réseau sur chaque nœud:
systemctl stop firewalld
  • À l'aide de votre éditeur de texte préféré, ouvrez le fichier /etc/opensearch/opensearch.yml et effectuez plusieurs modifications.

Commentez (ou supprimez) la ligne suivante:

discovery.type: single-node                                                    │

Ajoutez la ligne suivante à la fin pour désactiver temporairement la sécurité:

plugins.security.disabled: true

Configurez les discovery hosts par adresse IP ou DNS. La ligne doit avoir la structure suivante, en remplaçant, en ajoutant ou en supprimant selon chaque cas de réseau et jusqu'à ce que tous ses éléments de réseau soient complets:

discovery.seed_hosts: ["172.42.42.101", "172.42.42.102", "172.42.42.103"]

Configurez chaque manager host en fonction de chaque cas de réseau. La ligne doit avoir la structure suivante, en remplaçant, supprimant ou ajoutant chacune d'elles (vous devez mettre le hostname de la machine qui est utilisée par défaut comme indicateur de nœud ou l'identifiant de nœud personnalisé du YAML, le cas échéant):

cluster.initial_cluster_manager_nodes: ["rocky8-node1", "rocky8-node2", "rocky8-node3"]

Les modifications doivent être enregistrées et l'éditeur de texte quitté.

  • Configuration de la mémoire sur chaque nœud.

La configuration de la mémoire doit être inférieure à la mémoire disponible moins la mémoire nécessaire au système, donc si vous devez configurer 4 gigaoctets pour OpenSearch, le système doit avoir au moins 6 Go (4 pour OpenSearch et 2 libres pour le système).

Une fois ce calcul effectué, la taille de la mémoire est précisée dans le fichier /etc/opensearch/jvm.options en la remplaçant par la valeur numérique obtenue:

-Xms4g
-Xmx4g

Les modifications doivent être enregistrées et l'éditeur de texte quitté.

  • Supprimer le répertoire de données sur les nœuds propres.

Si le cluster se développe à partir d'un seul nœud avec des données, nettoyez simplement le répertoire de données pour les nouveaux nœuds, pas celui avec les données.

Arrêtez le service OpenSearch et effacez les données si le nœud est nouveau :

systemctl stop opensearch
rm -rf /var/lib/opensearch/*

Redémarrez le service OpenSearch:

systemctl restart opensearch
  • Vérification de chaque nœud localement.
curl "http://127.0.0.1:9200/_cat/nodes?v"

Vous devriez obtenir un résultat similaire à:

Paramètres de sécurité pour la connexion SSL

  • Activer le pare-feu et ajouter des règles.
systemctl start firewalld
firewall-cmd --zone=public --add-port=9300/tcp --permanent
firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --reload
  • Activer la sécurité dans OpenSearch.

À l'aide de votre éditeur de texte préféré, ouvrez le fichier /etc/opensearch/opensearch.yml et définissez la valeur sur false sur la ligne suivante:

plugins.security.disabled: false

Pour les certificats auto-signés, ajoutez la ligne suivante à la fin du fichier:

plugins.security.ssl.transport.enforce_hostname_verification: false

Les modifications doivent être enregistrées et l'éditeur de texte quitté.

  • Copie des certificats.

Les certificats auto-signés générés lors de l'étape d'installation seront utilisés. Copiez les certificats du nœud maître vers les autres.

Au nœud 1 (remplacez node_n par chacun des autres nœuds):

tar cvzf certs.tar.gz /etc/opensearch/*.pem
scp certs.tar.gz root@node_n:

Exécutez ensuite sur chacun des autres nœuds:

tar xvzf certs.tar.gz
cp etc/opensearch/* /etc/opensearch/

Sur chacun des autres nœuds, le service OpenSearch doit être redémarré:

systemctl restart opensearch

Vérification du nœud:

curl -XGET -ku admin:'P4nd0r4!FMS' "https://127.0.0.1:9200/_cat/nodes?v"

Une vérification d'appel au cluster similaire à la précédente doit être effectuée en utilisant à la fois HTTPS et une authentification avec nom d'utilisateur et mot de passe.

À ce stade, vous devriez avoir le cluster OpenSearch avec connexion SSL entièrement fonctionnel. Pour configurer Pandora FMS avec OpenSearch, consultez «Collecte et supervision des journaux».

Répartition de la charge et haute disponibilité pour un cluster OpenSearch

Après avoir installé avec succès un cluster OpenSearch, il peut être configuré pour qu'un serveur principal répartisse la charge de travail de manière équitable (ou selon les besoins) entre les nœuds enregistrés dans le cluster. Cela est connu sous le nom de répartition de la charge, et des serveurs secondaires peuvent également être ajoutés, qui commenceront à fonctionner si le principal échoue. Cette fonctionnalité est appelée haute disponibilité.

Tout ce qui précède est abordé dans le sujet “Répartition de la charge du cluster OpenSearch avec HAProxy”.

Retour à l'index de la documentation de Pandora FMS