Actif/passif
Deux VM identiques sur le même réseau : l’active porte une IP flottante et rend le service, la passive tient une copie à jour et prend la main si l’active tombe. Le service revient en moins de 2 minutes ; les appels en cours sont perdus.
Ce qui est copié
- La base, entière, en continu (réplication de PostgreSQL) : quelques secondes de retard au plus. Les enregistrements des téléphones en font partie : après une bascule, ils n’ont pas à se réenregistrer.
- Les fichiers (messagerie, annonces, musiques, enregistrements) et le trousseau : chaque minute. Une bascule peut perdre la dernière minute de messages vocaux.
- La configuration : copiée à l’appairage.
L’IP flottante est l’adresse du service : SIP, voix, portail, API et trunks. Le DNS, les téléphones et les fournisseurs ne voient qu’elle.
Mettre en place
Deux VM installées depuis l’image, chacune avec son adresse fixe, plus une adresse libre pour l’IP flottante. Entre elles : VRRP (protocole IP 112), PostgreSQL (5432) et SSH (22). En root :
# Active 192.0.2.11, passive 192.0.2.12, IP flottante 192.0.2.10.
centrex bascule cle # sur la passive : affiche sa clé SSH publique
centrex bascule preparer --ip-flottante 192.0.2.10/24 --autre 192.0.2.12 \
--cle-autre "ssh-ed25519 …" # sur l'active
centrex bascule rejoindre --actif 192.0.2.11 --cle-actif "ssh-ed25519 …" # sur la passive
preparer affiche la commande rejoindre complète. Options : --temoin (adresse que chaque VM
doit joindre pour garder ou prendre l’IP ; par défaut la passerelle) et --routeur
(identifiant VRRP, 51 par défaut, unique sur le réseau).
La réplication de PostgreSQL entre les deux VM n’est pas chiffrée : reliez-les par un réseau privé.
Bascule
- L’active annonce sa présence chaque seconde ; après 3 secondes de silence, la passive prend l’IP.
- Un contrôle de santé (PostgreSQL, FreeSWITCH, centrex) tourne sur l’active ; trois échecs de suite, et elle rend l’IP.
- Une VM qui ne joint plus le témoin rend l’IP et s’arrête : une VM isolée ne se promeut jamais.
- Une ancienne active qui revient reste passive : pas de retour automatique.
Exploiter
| Commande | Pour |
|---|---|
centrex bascule etat | Rôle de la VM, état des deux bases, témoin, services, retard de réplication, dernière copie des fichiers. |
centrex bascule ceder | Sur l’active : la passive prend la main (maintenance, mise à jour). |
- Journal :
/var/log/centrex-bascule.log. - Mise à jour : la passive d’abord, puis
cedersur l’active, puis l’ancienne active (Mises à jour). - Supervision : sur l’active,
centrex_bascule_passives_connectees(1 en régime établi) etcentrex_replication_retard_secondes(Supervision).