Centreon-HA Overview
Introductionâ
Centreon-HA est la seule solution officielle et supportée pour mettre en place un cluster de supervision en haute disponibilité. Il inclut les éléments suivants :
- Une documentation, principalement pour décrire comment mettre en place votre Cluster sur votre solution Centreon.
- Une collection de scripts permettant une gestion sûre et efficace des ressources liées à Centreon.
- Des fichiers additionnels qui étendront les capacités par défaut de Centreon.
Cette architecture s'appuie sur les composants pacemaker et corosync de ClusterLabs, permettant une tolérance aux pannes sur les composants suivants :
- Daemons applicatifs du serveur central
- centreon-engine (ordonnanceur)
- centreon-Broker (multiplexeur)
- centreon-Gorgone (gestionnaire de tĂąches)
- centreon-central-sync (réplication des fichiers de configuration)
- snmptrapd et centreontrapd (systĂšme et processus applicatifs de gestion des traps SNMP)
- Daemons tiers du serveur central
- php-fpm (cache FastCGI PHP)
- apache server (serveur web)
- Bases de données
- Réplication active/passive de binlogs (stockage)
- Défaillances des hÎtes
- Machines virtuelles ou serveurs physiques
Avertissement: Si vous disposez d'une IT ou Business edition, veuillez contacter votre reprĂ©sentant commercial Centreon ou votre responsable de compte technique avant de le mettre en place. Les extensions ont besoin de fichiers de licence spĂ©cifiques pour fonctionner sans problĂšme sur les deux nĆuds.
Conceptsâ
La solution met en Ćuvre trois types de ressources diffĂ©rentes :
- Ressources multi-state, fonctionnant sur les deux nĆuds avec des rĂŽles diffĂ©rents.
- Ressources clone, fonctionnant Ă la fois sur le nĆud principal et le nĆud secondaire.
- Ressources unique, faisant partie d'un groupe et fonctionnant sur un seul nĆud.
Les services du cluster sont divisés en deux groupes fonctionnels.
Groupe fonctionnel MariaDBâ
Le groupe fonctionnel ms_mysql
est une ressource multi-state. Cette ressource peut ĂȘtre en mode
actif/primaire sur un nĆud et en mode secondaire/passif sur l'autre nĆud.
La méta-ressource ms_mysql-master
est affectée à la base de données primaire.
Groupe fonctionnel Centreonâ
Le groupe fonctionnel centreon
rassemble toutes les ressources Centreon pour les gérer.
Description du type de ressourcesâ
Toutes ces ressources sont décrites dans le tableau ci-dessous.
Nom | Type | Description |
---|---|---|
ms_mysql | ressource multi-state | GÚre le processus mysql et la réplication des données. |
ms_mysql-master | location | Définir la préférence de rÚgle du serveur maßtre MariaDB |
php7 | service clone | Service gestionnaire des processus FastCGI (rh-php73-php-fpm ) |
cbd_rrd | service clone | Service du Broker RRD (cbd ) |
centreon | groupe | Groupe des "services primitifs" de Centreon |
vip | service primitif | Adresse de la VIP pour Centreon |
http | service primitif | Service Apache (httpd24-httpd ) |
gorgone | service primitif | Service Gorgone (gorgoned ) |
centreon_central_sync | service primitif | Service de synchronisation des fichiers |
cbd_central_broker | service primitif | Service du Broker Central (cbd-sql ) |
centengine | service primitif | Service Centreon-Engine (centengine ) |
centreontrapd | service primitif | Service de gestion des traps SNMP (centreontrapd ) |
snmptrapd | service primitif | Service d'écoute des traps SNMP (snmptrapd ) |
Note: Les ressources du groupe centreon
sont démarrées les unes aprÚs les autres dans l'ordre de la liste.
Contraintes de resourcesăïŒâ
Pacemaker propose différents types de contraintes :
- Location : oĂč la ressource doit ou ne doit pas s'exĂ©cuter.
- Colocation : comment les ressources se comportent les unes par rapport aux autres.
Par exemple, Centreon-HA utilise des contraintes de location pour spĂ©cifier Ă Pacemaker que le processus de base de donnĂ©es dois ĂȘtre opĂ©rationnel sur les nĆuds backend, mais pas sur les nĆuds frontend.
En ce qui concerne les contraintes de colocation, ils peuvent s'assurer qu'une IP virtuelle (VIP) est attribuĂ©e aux nĆuds primaires. Par consĂ©quent, les utilisateurs, les Collecteurs et les DĂ©mons interagissent constamment avec le nĆud primaire.
QDevice et votesâ
La configuration d'un qdevice est obligatoire pour Ă©viter le split-brain et autres situations auxquelles personne ne veut ĂȘtre
confronté dans un Cluster. Le serveur avec le rÎle quorum-device
vise à obtenir une majorité absolue lors d'un vote
pour Ă©lire un nĆud maĂźtre ou un rĂŽle ressource.
Supportâ
Logiciels et systĂšmes d'exploitationâ
Centreon supporte officiellement le Clustering sur les produits suivants :
- Toutes les éditions sous licence de Centreon
- Serveur de Centreon-Map
Et sur les systĂšmes d'exploitation suivants :
- CentOS 7
- RHEL 7
Important: Pour installer les paquets pacemaker et corosync sur les systÚmes RedHat, les serveurs doivent avoir accÚs au dépÎt sous licence Red Hat Enterprise Linux High Availability.
Le seul systÚme de base de données officiel pris en charge par Centreon est MariaDB.
Néanmoins, notez que nous avons validé que l'ensemble de la solution peut fonctionner sur MySQL 8 avec quelques modifications, seule la communauté (ou vos DBA) peut vous aider et vous supporter dans l'exécution d'un Cluster sur un serveur Oracle MySQL.
Pour MariaDB et Oracle MySQL, la configuration de la rĂ©plication peut ĂȘtre intrusive. Nous vous dĂ©conseillons fortement de mettre en place un Cluster sur un serveur contenant d'autres bases de donnĂ©es d'applications, nous ne le supporterons pas.
Architecturesâ
Centreon prend en charge les architectures Ă 2 et 4 nĆuds. Nous recommandons l'utilisation d'une architecture Ă deux nĆuds, sauf si votre organisation exige une sĂ©paration systĂ©matique des serveurs frontend et backend ou si votre pĂ©rimĂštre de supevision est supĂ©rieur Ă 5k hĂŽtes.
Les schémas ci-dessous montrent à la fois la structure de l'architecture et les flux réseau entre les serveurs. Pour obtenir la matrice complÚte des flux, reportez-vous à la page d'installation de l'architecture dédiée.
- Cluster-deux-nĆuds
- Cluster-quatre-nĆuds
AccĂ©der Ă cette page pour commencer votre installation Ă deux nĆuds !
AccĂ©der Ă cette page pour commencer votre installation Ă quatre nĆuds !
Informations complĂ©mentairesâ
Placement des serveursâ
La mise en place d'un cluster Centreon-HA peut s'avĂ©rer excessive ou du moins non-optimale lorsque tous vos serveurs fonctionnent dans le mĂȘme datacenter, voir dans la mĂȘme baie.
Dans un monde parfait, les nĆuds primaires et secondaires fonctionnent sur des sites (gĂ©ographiques) diffĂ©rents, et le QDevice communique avec les deux sites indĂ©pendamment. Ăvidemment, tous les nĆuds doivent communiquer entre eux.
RĂŽle du serveur central Centreonâ
Dans le cas d'une architecture hautement disponible, le cluster central Centreon ne doit pas ĂȘtre utilisĂ© comme Poller.
En d'autres termes, il ne doit pas surveiller les ressources. Sa capacitĂ© de supervision ne doit ĂȘtre utilisĂ©e que pour surveiller ses Pollers.
Si cette recommandation n'est pas suivie, le service centengine
prendrait trop de temps à redémarrer
et il pourrait provoquer le basculement du groupe fonctionnel centreon
.
VIP et Basculeâ
Centreon recommande d'utiliser des adresses virtuelles.
L'utilisation d'un load balancer est une option, mais il doit prendre en charge des rÚgles personnalisées afin d'acheminer les flux d'applications.
Par exemple, dans une configuration Ă quatre nĆuds, un load balancer peut s'appuyer sur :
- frontend-vip: le port d'écoute ou l'état du processus apache pour acheminer les communications des utilisateurs et des Collecteurs vers les serveurs frontend.
- backend-vip: la valeur de l'indicateur "read_only" sur les deux serveurs de base de données pour déterminer lequel est le serveur primaire.