drbd: storage live migration
Um VMs zwischen HDD und SSD zu migrieren wäre ein „lvmove“ äquivalent ganz praktisch. Dies kann es aber nicht geben, da der Pfad zum lv dann auch angepasst werden muss. Um meine Master Slave Setup dennoch Live migrieren zu können, habe ich ein neues gleich großes lv erstellt, die Platte ausgehangen und die neue wie folgt eingegangen.
Zunächst habe ich geprüft ob ich Master oder Slave bin (ro:Secondary)
grep -A1 '^11:' /proc/drbd 11: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r----- ns:1176552 nr:236 dw:1176788 dr:233640 al:194 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
Dann habe ich dem DRBD Verbund die Storage aus gehangen:
drbdadm detach drbdvm11 grep -A1 '^11:' /proc/drbd 11: cs:Connected ro:Secondary/Primary ds:Diskless/UpToDate C r----- ns:1176552 nr:272 dw:1176824 dr:233640 al:194 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
Dies DRBD Config Datei editiert und bei der localen node das neue lv auf der neuen vg eingetragen.
vim /etc/drbd.d/drbdvm11.res disk /dev/mapper/vg2-drbdvm11;
Danach muss das neue lv von DRBD initialisiert werden:
drbdadm create-md drbdvm11 initializing activity log NOT initializing bitmap Writing meta data... New drbd meta data block successfully created. success
Anschließend wird alles wieder gestartet und die Synchronisation begibt automatisch.
drbdadm attach drbdvm11 grep -A2 '^11:' /proc/drbd 11: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r----- ns:0 nr:184320 dw:184320 dr:0 al:194 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:7155452 [>...................] sync'ed: 9.4% (116080/127996)M grep -A1 '^11:' /proc/drbd 11: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r----- ns:0 nr:7339804 dw:7339804 dr:0 al:194 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0