PAF
...Une brique dans la mare de la HA
Qui suis-je ?
- Jehan-Guillaume de Rorthais
- aka. ioguix
- utilise PostgreSQL depuis 2007
- dans la communauté depuis 2008
- @dalibo depuis 2009
- intro sur la HA
- intro sur Pacemaker
- pourquoi PAF
- Fonctionnalités de PAF
Haute Disponibilité

Rappels sur la HA
- High Availability, aka. Haute disponibilité
- Intégrée dans un Plan de Continuité de Service
- En gros, on double tout
- Bascule automatique ou non ?
Bascule auto: techniquement
Complexe à mettre en œuvre:
- comment détecter une vraie défaillance ?
- le maître ne répond plus ?
- est-il vraiment éteint ?
- est-il vraiment inactif ?
- comment réagir à une panne réseau ?
- comment éviter les split brain ?
Bascule auto: apprentissage
La route est (presque) droite mais la pente forte:
- plusieurs problèmes/mécaniques à comprendre: quorum, fencing, watchdog, ...
- configuration pointue
- maintenances complexes
- documenter, documenter, documenter
- tester, tester, tester
Si vous ne voulez pas de complexité, n'en faites pas.
Pacemaker
Apprentissage difficile...
...Toute résistance est futile.
Généralités sur Pacemaker
- est LA référence de la HA sous Linux
- est un "Cluster Resource Manager"
- supporte les fencing, quorum et watchdog
- multi-service, avec dépendances, ordre, contraintes, règles, etc
- s'interface avec n'importe quel service
- chaque service a son Resource Agent
- RA stateless ou multi-state
- API possibles: script OCF, upstart, systemd, LSB
Archi Pacemaker

Mécanique du CRM
- sorte d'automate
- 4 états: arrêté, démarré, slave ou master
- calcul de transitions pour passer d'un état à l'autre
- API classique (eg. systemd): start, stop, monitor(status)
- API OCF: start, stop, promote, demote, monitor, notify
- cas d'une ressource multi-state:

Action notify
- seulement possible avec RA OCF
- déclenchés avant et après chaque action
- permet au RA d'effectuer des opérations
