diff --git a/HowtoDRBD.md b/HowtoDRBD.md index fcf5e1aa..e7f71e53 100644 --- a/HowtoDRBD.md +++ b/HowtoDRBD.md @@ -697,18 +697,6 @@ tac# drbdsetup primary 44 > *Note* : cela nécessite d'utiliser le protocole C et d'avoir configuré `allow-two-primaries;` -### Réplication sans synchronisation de données initiales - -Une fois les nœuds connectés, au lieu de faire `--overwrite-data-of-peer` sur l'un des serveurs : - -~~~ -tic# drbdadm -- --clear-bitmap new-current-uuid foo -tic# drbdadm primary foo -~~~ - -### Réplication truck-base - -Plus fort que l'[IPoAC](https://fr.wikipedia.org/wiki/IP_over_Avian_Carriers), DRBD décrit la [réplication truck-based](https://www.drbd.org/en/doc/users-guide-84/s-truck-based-replication) ### Détruire les _metadatas_ @@ -722,3 +710,67 @@ Do you really want to wipe out the DRBD meta data? Wiping meta data... DRBD meta data block successfully wiped out. ~~~ + +### Migration d'un disque existant avec DRBD + +On peut migrer les données d'un disque existant en créant un volume DRBD avec des _metadatas_ stockées en externe. Par exemple, [Gitlab a migré 9To de données en quelques jours](https://about.gitlab.com/2015/03/09/moving-all-your-data/). + +Voici la configuration d'un volume avec les _metadatas_ en externe : + +~~~ +volume 0 { + device minor 42; + disk /dev/sdz1; + meta-disk /dev/sdx1; +} +~~~ + +> *Note* : _meta-disk_ doit indiquer un périphérique [d'une taille suffisante](https://www.drbd.org/en/doc/users-guide-84/ch-internals#s-meta-data-size), on peut utiliser /dev/loop* + +Comme pour la [création d'une ressource avec un seul volume](#ressource-avec-un-seul-volume) on ajoute la configuration sur chaque serveur, puis : + +~~~ +tic# drbdadm create-md foo +tac# drbdadm create-md foo + +tic# drbdadm adjust foo +tac# drbdadm adjust foo +~~~ + +Sur le serveur avec le disque existant, il faut remonter le périphérique via `/dev/drbd42` (cela prend quelques secondes) : + +~~~ +tic# umount /dev/sdz1 +tic# drbdadm -- --overwrite-data-of-peer primary foo +tic# mount /dev/drbd42 /mnt +~~~ + +> *Note* : à confirmer si le create-md ne doit pas être fait après le umount… + +La synchronisation va ensuite se faire (et prendre des heures voire des jours) + +Une fois terminée, on pourra _remounter_ le volume sans DRBD sur l'autre serveur et supprimer DRBD : + +~~~ +tic# umount /dev/drbd42 +tic# drbadm secondary foo +tic# drbadm down foo +tic# rm /etc/drbd.d/foo.res + +tac# drbadm down foo +tac# mount /dev/sdz1 /mnt +tac# rm /etc/drbd.d/foo.res +~~~ + +### Réplication sans synchronisation de données initiales + +Une fois les nœuds connectés, au lieu de faire `--overwrite-data-of-peer` sur l'un des serveurs : + +~~~ +tic# drbdadm -- --clear-bitmap new-current-uuid foo +tic# drbdadm primary foo +~~~ + +### Réplication truck-base + +Plus fort que l'[IPoAC](https://fr.wikipedia.org/wiki/IP_over_Avian_Carriers), DRBD décrit la [réplication truck-based](https://www.drbd.org/en/doc/users-guide-84/s-truck-based-replication) \ No newline at end of file