Resize Harddisk Virtual DRBD untuk Cluster & Fail Over
Hari Senin, 13 Juni 2011 saat sedang memberikan materi workshop Linux Fundamental di Pangkal Pinang-Bangka Belitung saya menerima telepon mengagetkan dari salah satu klien. Klien ini merupakan sebuah institusi pemerintahan di kawasan Bogor. Admin IT-nya mengabarkan bahwa mail server down karena ia melakukan accident : resize ukuran partisi harddisk virtual dari 100 GB menjadi 110 GB.
Akibat resize harddisk virtual ini, DRBD (Dynamic Replicate Block Device) yang digunakan untuk melakukan sinkronisasi online data ke server yang lain tidak dapat mengenali harddisknya. Celakanya lagi, server kedua yang mestinya berfungsi sebagai fail over mengalami kendala networking sehingga data tidak direplikasi sejak beberapa waktu sebelumnya.
Karena saya sedang berada di Pangkal Pinang, saya meminta untuk dibukakan akses SSH dan setelah melihat kondisi ESXi yang menjadi sistem operasi pada Blade Server, saya melakukan langkah-langkah sebagai berikut :
- Melakukan backup data harddisk virtual yang terlanjur di di resize. Hal ini merupakan tindakan preventif agar jika saya melakukan kesalahan saat restore, masih ada cadangan harddisk virtual
- Mencoba melakukan restore. Ternyata caranya relatif mudah (namun menemukan solusinya butuh searching ke beberapa tempat 😛 ), yaitu dengan membuat metadata ulang, menjalankan DRBD, menjadikannya sebagai primary dan kemudian melakukan mounting data
Membuat metadata ulang dan menjalankan DRBD relatif mudah :
drbdadm create-md r0
service drbd start
Saat diperintahkan untuk membuat metadata, DRBD akan mendeteksi bahwa ukuran harddisk sekarang berubah dari 100 GB menjadi 110 GB. DRBD juga akan mendeteksi bahwa sudah ada data 100 GB yang menggunakan partisi Ext3.
Setelah harddisknya bisa dikenali, saya mencoba memerintahkan DRBD agar dijadikan primary supaya bisa dimount.
drbdadm primary r0
Ternyata perintah ini gagal dilakukan karena status harddisk=Inconsistent. DRBD bisa dijadikan primary jika status datanya UpToDate. Untuk mengatasinya, saya menggunakan perintah :
drbdsetup /dev/drbd0 primary --overwrite-data-of-peer
Setelah status data=UpToDate dan bisa dijadikan Primary, saya bisa melakukan proses mount :
mount -t ext3 /dev/drbd0 /opt
Pemeriksaan awal, data sudah bisa dikenali dan kembali ke kondisi seperti sedia kala. Mission Accomplished 😉
Bagi rekan-rekan yang ingin mempelajari implementasi DRBD untuk dijadikan media replikasi data secara online sekaligus bagian dari Linux High Availability Server, silakan merujuk pada tulisan berikut :
ESXi di blade ? kenape enggak pake vmotion nya bawaan vmware dari pada pake DRBD
.