Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes | ||
informatique:systeme:ha:drbd [2010/12/06 17:02] – [Fichier de configuration type] bn8 | informatique:systeme:ha:drbd [2012/09/18 14:37] – [Mode Primaire/Primaire] nico | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== | + | ====== |
- | * Installation de drbd | + | |
- | * Créer le fichier de configuration de la ressource : / | + | |
- | < | + | |
+ | ===== Procédure de mise en place ===== | ||
+ | ==== Mode Primaire/ | ||
+ | |||
+ | * Installation de drbd : < | ||
+ | * Créer le fichier de configuration de la ressource : /// | ||
+ | protocol C; | ||
+ | |||
+ | handlers { | ||
+ | |||
+ | } | ||
+ | |||
+ | startup { | ||
+ | degr-wfc-timeout 120; | ||
+ | outdated-wfc-timeout 2; | ||
+ | } | ||
+ | |||
+ | disk { | ||
+ | on-io-error detach; | ||
+ | } | ||
+ | |||
+ | net { | ||
+ | after-sb-0pri discard-younger-primary; | ||
+ | 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 | ||
+ | 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 : < | ||
+ | |||
+ | ==== Mode Primaire/ | ||
+ | |||
+ | * Installation de drbd : < | ||
+ | * Créer le fichier de configuration de la ressource : /// | ||
protocol C; | protocol C; | ||
Ligne 32: | Ligne 87: | ||
syncer { | syncer { | ||
rate 90M; | rate 90M; | ||
+ | al-extents 257; | ||
} | } | ||
Ligne 49: | Ligne 105: | ||
}</ | }</ | ||
- | * Initialiser les devices via la commande : drbdadm create-md r0 | + | |
- | * Lancer drbd : / | + | * Lancer drbd : < |
- | * Sur une des deux machines, forcer en primary : drbdadm -- --overwrite-data-of-peer primary r0 | + | < |
- | ====== Supprimer une ressource | + | |
+ | * La synchro commence, elle peut être suivie dans /// | ||
+ | ===== Supprimer une ressource ===== | ||
drbdadmin remove /dev/drbd0 | drbdadmin remove /dev/drbd0 | ||
+ | |||
+ | ===== Trucs et astuces ===== | ||
+ | ==== Triggers ==== | ||
+ | |||
+ | Exemple : | ||
+ | |||
+ | handlers { | ||
+ | pri-on-incon-degr "echo o > / | ||
+ | pri-lost-after-sb "echo o > / | ||
+ | local-io-error "echo o > / | ||
+ | } | ||
+ | |||
+ | ==== Reconnecter une ressource après incident ==== | ||
+ | |||
+ | Lorsque la communication entre les serveurs a été interrompu et que les périphériques DRBD sont donc désynchronisé, | ||
+ | |||
+ | * décider quelle machine contient les données valides (à priori la dernière machine ayant été active) | ||
+ | * sur la machine contenant les données invalides, lancer les commandes : < | ||
+ | drbdadm -- --discard-my-data connect r0</ | ||
+ | * 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 : < | ||
+ | |||