OndrejHome.ha-cluster-lvm
ha-cluster-lvm
Rôle pour activer la configuration LVM hautement disponible (HA-LVM) dans un cluster Pacemaker. Ce rôle peut également créer des volumes logiques (LV) et des groupes de volumes (VG) pour les variantes de tagging et de clvm, consultez les exemples pour voir comment faire.
Le code spécifique à rgmanager a été retiré de ce rôle et déplacé dans un rôle séparé - ondrejhome.ha_cluster_lvm_rgmanager.
Exigences
RHEL : Il est prévu que les machines soient déjà enregistrées et abonnées pour accéder aux canaux 'Haute Disponibilité' ou 'Stockage Résilient'.
Variables du Rôle
type de HA-LVM :
(EL6, EL7) options possibles : 'tagging' ou 'clvm'
(EL8, EL9) options possibles : 'systemid' ou 'lvmlockd'
valeur par défaut : 'tagging'
HALVMtype: 'tagging'
(optionnel) - ceci s'applique uniquement lorsque le mode 'tagging' est sélectionné. Liste des VG à inclure dans 'volume_list' en plus du VG sur lequel se trouve le système de fichiers racine. Par défaut, cette liste est vide. L'exemple ci-dessous montre comment spécifier la liste des VG.
local_vg_list: [ 'vg1', 'vg2' ]
(RHEL uniquement) activer les dépôts contenant les paquets nécessaires :
sur RHEL6 activer
rhel-rs-for-rhel-6-server-rpms
sur RHEL7 activer
rhel-rs-for-rhel-7-server-rpms
sur RHEL8 activer
rhel-8-for-x86_64-resilientstorage-rpms
sur RHEL9 activer
rhel-9-for-x86_64-resilientstorage-rpms
enable_repos: true
(RHEL uniquement) activer les dépôts de mises à jour prolongées (EUS) contenant les paquets nécessaires :
sur RHEL6 activer
rhel-rs-for-rhel-6-server-eus-rpms
sur RHEL7 activer
rhel-rs-for-rhel-7-server-eus-rpms
sur RHEL8 activer
rhel-8-for-x86_64-resilientstorage-eus-rpms
sur RHEL9 activer
rhel-9-for-x86_64-resilientstorage-eus-rpms
enable_eus_repos: false
Exemple de Playbook
Exemple de playbook pour le tagging HA-LVM.
- hosts: servers
roles:
- { role: 'ondrejhome.ha-cluster-lvm' }
Exemple de playbook pour le tagging HA-LVM avec des noms de VG locaux supplémentaires 'vg_local'.
- hosts: servers
roles:
- { role: 'ondrejhome.ha-cluster-lvm', local_vg_list: [ 'vg_local' ] }
Exemple de playbook pour la variante clvm de HA-LVM.
- hosts: servers
roles:
- { role: 'ondrejhome.ha-cluster-lvm', HALVMtype: 'clvm' }
Exemple de playbook pour la variante systemid de HA-LVM.
- hosts: servers
roles:
- { role: 'ondrejhome.ha-cluster-lvm', HALVMtype: 'systemid' }
Exemple de playbook pour la variante lvmlockd de HA-LVM.
- hosts: servers
roles:
- { role: 'ondrejhome.ha-cluster-lvm', HALVMtype: 'lvmlockd' }
Exemple de playbook pour la variante tagged avec un VG et un LV sur l'ensemble du VG.
- hosts: servers
vars:
tagging_vgs:
- name: 'vg_shared'
pvs: '/dev/sdb'
lvs:
- name: 'lv_name5'
size: '200M'
roles:
- { role: 'ondrejhome.ha-cluster-lvm' }
Exemple de playbook pour la variante clvm combinée avec la variante tagging et la création de VG/LV pour les VG clusterisés et tagging.
- hosts: servers
vars:
local_vg_list:
- 'vg_clvm'
clvm_vgs:
- name: 'vg_clvm'
pvs: '/dev/sdb2'
lvs:
- name: 'lv_name1'
size: '200M'
- name: 'lv_name2'
size: '100M'
tagging_vgs:
- name: 'vg_shared'
pvs: '/dev/sdb1'
lvs:
- name: 'lv_name3'
size: '200M'
- name: 'lv_name4'
size: '100M'
roles:
- { role: 'ondrejhome.ha-cluster-lvm', HALVMtype: 'clvm' }
Exemple de playbook pour la variante systemid avec un VG et un LV sur l'ensemble du VG.
- hosts: servers
vars:
systemid_vgs:
- name: 'vg_systemid'
pvs: '/dev/sdb'
lvs:
- name: 'lv_name5'
size: '200M'
roles:
- { role: 'ondrejhome.ha-cluster-lvm', HALVMtype: 'systemid' }
Exemple de playbook pour la variante lvmlockd avec un VG et un LV sur l'ensemble du VG.
- hosts: servers
vars:
lvmlockd_vgs:
- name: 'vg_lvmlockd'
pvs: '/dev/sdb'
lvs:
- name: 'lv_name6'
size: '200M'
roles:
- { role: 'ondrejhome.ha-cluster-lvm', HALVMtype: 'lvmlockd' }
Licence
GPLv3
Informations sur l'Auteur
Ce rôle a été testé manuellement sur un nombre limité de plateformes et peut ne pas couvrir tous les cas particuliers.
- 2022-09 testé sur : RHEL 8.2/8.6/9.0, AlmaLinux 8.6/9.0 avec l'approche systemid
- 2022-10 testé sur : CentOS 6.10, RHEL 6.10 avec les approches tagging et clvm
Pour contacter l'auteur, vous pouvez utiliser l'email ondrej-xa2iel8u@famera.cz ou créer un problème sur GitHub pour demander une fonctionnalité.
Setup HA-LVM (tagging/clvmd/systemid/lvmlockd) on pacemaker cluster on EL6/7/8/9
ansible-galaxy install OndrejHome.ha-cluster-lvm