Saturday, June 20, 2020

Belajar RAID - Part 1

Kali ini saya mau bikin catetan soal RAID. Alhamdulillah dapet voucher gratis icip huawei cloud. Terimakasih banyak praxis academy dan huawei cloud indonesia yang kemaren ngadakan workshop dan share beberapa voucher huawei cloud buat peserta. :D

Saya masih sedikit banget ilmu tentang raid, makanya saya semangat buat explore tentang raid. Catatan ini akan saya buat beberapa part, karena raid ada banyak dan catatan-catatannya otomatis ada banyak. Biar enak gitu bacanya.

Seperti biasa, first thing first. berikut adalah environment :
OS : Ubuntu Server 18.04.4 LTS
Tools: mdadm (v4.1-rc1),hdparm (v9.54)
Disk : 4 @10GB
Platform : Huawei Cloud
Pertama tentu install terlebih dahulu mdadm,
sudo apt-get install -y mdadm

Tentunya buat terlebih dahulu disk yang akan kita RAID. Kalo di huawei Cloud kurang lebih tampilannya akan seperti berikut

Attach masing-masing disk ke instance, kemudian bisa cek dengan perintah :
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT


Cek status raid dengan perintah :
cat /proc/mdstat
jika tidak ada raid yang berjalan, output yang dihasilkan kurang lebih sebagai berikut :



Membuat RAID - 0
sebagai catatan, membuat dari disk yang fresh baru di buat.

mdadm --create --verbose /dev/md212 --level=0 --raid-devices=2 /dev/vdc /dev/vdd


cek kembali dengan perintah
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT


Bisa kita lihat device vdc dan vdd adalah linux_raid_member

eit, belum selesai, kita perlu memformat raid yang sudah kita buat tadi.
sesuai kan dengan id raid yang kita buat tadi
mkfs.ext4 /dev/md212


selanjutnya kita bisa mount raid yang sudah di buat
mount /dev/md212 /path/to/mount/raid/
kemudian cek dengan command df
df -h
output yang dihasillkan seharusnya menunjukkan dimana md212 di mount (raid saya muncul di bagian paling bawah)


Selanjutnya kita coba membuat file di raid tersebut, saya menggunakan command touch
touch another-sample{1..10}

Kemudian kalo kita cek kembali status dari mdadm dengan perintah
cat /proc/mdstat

Nah.. sampai disini, kita sudah membuat raid0 dan mencoba menggunakannya. :D

Benchmark Performa

Untuk benchmarking kita menggunakan tool hdparm. yang akan kita bandingkan adalah raid md212 dan disk vdb

perintah yang digunakan adalah
hdparm -tT /dev/vdb
untuk raid, kita sesuaikan path device nya
hdparm -tT /dev/
Berikut adalah hasil benchmarking

wait, tapi kan size nya beda berarti, yang vdb 10GB, yang md212 20GB.
oke, kita buat satu disk lagi sebesar 20GB kalo gitu :D

buat disk baru via dashboard, attach, lalu pastikan disk terbaru sudah terbaca (disk terbaru ada di baris paling bawah)
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT


kemudian format menjadi ext4 dengan perintah
mkfs.ext4 /dev/vdf
oke, sekarang kita benchmark ulang dan berikut adalah hasilnya



Mengembalikan RAID
sebelum mengembalikan raid, pastikan data yang ada pada raid sudah diamankan. selanjutnya cek status raid dengan perintah :
cat /proc/mdstat
selanjutnya kita unmount raid dengan perintah :
umount -l/dev/md212
dan pastikan ulang raid tidak ada dalam daftar disk dengan perintah
df -h
output yang dihasilkan kurang lebih sebagai berikut :


sebagai penanda atau pembanding, jika kita list saat kondisi raid, struktur block device nya akan nampak sebagai berikut.


selanjutnya kita stop layanan raid dengan perintah (sesuaikan id raid yang digunakan):
mdadm --stop /dev/md212
kemudian
mdadm --remove /dev/md212

Catatan Behaviour Raid
Berikut adalah beberapa catatan selama uji coba raid0 :
  1. raid bisa digunakan untuk disk yang memiliki kapasitas berbeda (pada gambar raid disk 10GB dan 20GB)
  2. raid tidak bisa di stop apabila posisi raid masih termounting
  3. jika raid di stop, kemudian raid dibuat ulang dengan member device yang sama maka data akan tetap. meskipun id raid diubah data tidak mengalami perubahan.
  4. jika raid di stop, kemudian dibuat raid baru dengan penambahan disk baru. maka proses mount akan error.
  5. dan error yang terjadi pada point nomor 3. apabila kita stop raid yang sudah dibuat. kemudian kita kembalikan ke raid awal (hanya 2 device), data masih utuh. artinya jika raid berhasil dibuat, tapi gagal di mounting. data masih aman.
Semoga bermanfaat.

Referensi :

No comments:

Post a Comment