Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
informatique:systeme:ha:drbd [2010/02/15 15:59] – Reprise ancien Wiki bn8 | informatique:systeme:ha:drbd [2015/10/26 14:51] (Version actuelle) – [Agrandir une ressource] bn8 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== | + | ====== |
- | resource disk-semele | + | |
- | + | ||
- | protocol C; | + | ===== Procédure |
+ | ==== Mode Primaire/ | ||
+ | |||
+ | | ||
+ | * Créer le fichier de configuration de la ressource : /// | ||
+ | protocol C; | ||
+ | |||
+ | handlers { | ||
+ | |||
+ | } | ||
+ | |||
+ | startup { | ||
+ | degr-wfc-timeout 120; | ||
+ | outdated-wfc-timeout 2; | ||
+ | } | ||
+ | |||
+ | | ||
+ | on-io-error detach; | ||
+ | } | ||
+ | |||
+ | net { | ||
+ | | ||
+ | after-sb-1pri consensus; | ||
+ | after-sb-2pri disconnect; | ||
+ | rr-conflict disconnect; | ||
+ | cram-hmac-alg " | ||
+ | shared-secret " | ||
+ | } | ||
+ | |||
+ | syncer { | ||
+ | rate 90M; | ||
+ | al-extents 257; | ||
+ | } | ||
+ | |||
+ | on srvvirt1 { | ||
+ | device | ||
+ | | ||
+ | address 172.20.0.6: | ||
+ | meta-disk | ||
+ | } | ||
+ | |||
+ | on srvvirt2 { | ||
+ | device | ||
+ | disk / | ||
+ | address 172.20.0.7: | ||
+ | meta-disk | ||
+ | } | ||
+ | }</ | ||
+ | |||
+ | * Initialiser les devices via la commande : < | ||
+ | * Lancer drbd : < | ||
+ | * Sur une des deux machines, forcer en primary : < | ||
+ | |||
+ | ==== Mode Primaire/ | ||
+ | |||
+ | * Installation de drbd : < | ||
+ | * Créer le fichier de configuration de la ressource : /// | ||
+ | | ||
+ | |||
+ | handlers { | ||
+ | |||
+ | } | ||
+ | |||
+ | startup { | ||
+ | degr-wfc-timeout 120; | ||
+ | outdated-wfc-timeout 2; | ||
+ | become-primary-on both; | ||
+ | } | ||
+ | |||
+ | disk { | ||
+ | on-io-error detach; | ||
+ | } | ||
+ | |||
+ | net { | ||
+ | after-sb-0pri discard-younger-primary; | ||
+ | after-sb-1pri consensus; | ||
+ | after-sb-2pri disconnect; | ||
+ | rr-conflict disconnect; | ||
+ | allow-two-primaries; | ||
+ | cram-hmac-alg " | ||
+ | shared-secret " | ||
+ | } | ||
+ | |||
+ | syncer { | ||
+ | rate 90M; | ||
+ | al-extents 257; | ||
+ | } | ||
+ | |||
+ | on srvvirt1 { | ||
+ | device | ||
+ | disk / | ||
+ | address 172.20.0.6: | ||
+ | meta-disk | ||
+ | } | ||
+ | |||
+ | on srvvirt2 { | ||
+ | device | ||
+ | disk / | ||
+ | address 172.20.0.7: | ||
+ | meta-disk | ||
+ | } | ||
+ | }</ | ||
+ | |||
+ | * Initialiser les devices via la commande : < | ||
+ | * Lancer drbd : < | ||
+ | < | ||
+ | * Sur une des deux machines, forcer en primary : < | ||
+ | * La synchro commence, elle peut être suivie dans /// | ||
+ | ===== Supprimer une ressource ===== | ||
+ | drbdadmin remove /dev/drbd0 | ||
| | ||
- | | + | ===== Agrandir une ressource ===== |
- | pri-on-incon-degr "echo o > / | + | |
- | + | Partons du principe qu'une ressource //myvol// partagé entre les machines //hyp01// et //hyp02// dans un LV //myvol// des VG LVM respectifs // | |
- | | + | |
- | + | * On commence par redimensionner les LV LVM sous DRBD (avec **[size]** la taille en //Go//), sur chacune des machines : < | |
- | | + | * Un fois les LV agrandi, il faut que DRBD le prenne en compte. La commande si après ne doit être fait que si **UN SEUL** des noeuds est **PRIMAIRY**, |
- | } | + | * La machine // |
- | + | ===== Trucs et astuces ===== | |
- | startup { | + | ==== Triggers ==== |
- | degr-wfc-timeout 120; # 2 minutes. | + | |
- | } | + | Exemple : |
- | + | ||
- | disk { | + | |
- | on-io-error | + | pri-on-incon-degr "echo o > / |
- | } | + | pri-lost-after-sb "echo o > / |
- | + | local-io-error "echo o > / | |
- | net { | + | |
- | after-sb-0pri disconnect; | + | |
- | after-sb-1pri disconnect; | + | |
- | after-sb-2pri disconnect; | + | |
- | rr-conflict disconnect; | + | |
- | } | + | |
- | + | ||
- | syncer { | + | |
- | rate 80M; | + | |
- | al-extents 257; | + | |
- | } | + | |
- | + | ||
- | on toto { | + | |
- | device | + | |
- | disk / | + | |
- | address | + | |
- | # | + | |
- | meta-disk | + | |
- | } | + | |
- | + | ||
- | on titi { | + | |
- | device | + | |
- | disk / | + | |
- | address | + | |
- | meta-disk internal; | + | |
- | } | + | |
} | } | ||
- | ====== Supprimer | + | ==== Reconnecter |
- | | + | |
+ | Lorsque la communication entre les serveurs a été interrompu et que les périphériques DRBD sont donc désynchronisé, | ||
+ | |||
+ | | ||
+ | * sur la machine contenant les données invalides, lancer les commandes : < | ||
+ | drbdadm -- --discard-my-data connect r0</code> | ||
+ | * sur la machine contenant les données valides, lancer la commande : < | ||
+ | |||
+ | La synchronisation des données démarre alors, on peut suivre son état via la comande : < | ||
+ | |||
+ | ==== En cas de blocage en état Consistent alors qu'un seul des deux nœuds est présent ==== | ||
+ | |||
+ | < | ||