• Mengapa
  • My Toys
  • Tentang

Ulun Rapuy Debian

~ Hanyu Rapuy, Aku Jua Rapuy

Tag Archives: RAID

Instalasi RAID 1 Pada System Debian Wheezy yang Telah Berjalan

19 Sabtu Okt 2013

Posted by bisaku in instalasi, script, setting

≈ 2 Komentar

Tag

RAID

Setelah instalasi dilakukan kami ingin melakukan setting RAID 1.

Pada saat instalasi kami memiliki dua buah hardisk masing-masing memiliki ukuran 1 TB dan dikenali sebagai /dev/sda dan /dev/sdb. Kami telah melakukan instalasi pada /dev/sda dan akan menambahkan /dev/sdb sebagai bagian dari RAID 1.

Berikut ini adalah layout partisi yang ada di /dev/sda …

/dev/sda1   <-- / - root - ext4
/dev/sda2   <-- extended
/dev/sda5   <-- SWAP
/dev/sda6   <-- /home - ext4

Ringkasan yang dilakukan adalah:

– INSTALASI PAKET PENDUKUNG
– MEMPERSIAPKAN /dev/sdb
– MEMBUAT RAID ARRAY
– UPDATE /etc/fstab
– SETTING DAN INSTALASI GRUB 2
– COPY FILE DARI /dev/sda KE /dev/sdb
– REBOOT MESIN
– MESIN TIDAK BISA MELAKUKAN REBOOT
– MESIN BISA MELAKUKAN REBOOT
– MENAMBAHKAN /dev/sda KE RAID ARRAY
– FINISHING dan SARAN
– SUMBER

INSTALASI PAKET PENDUKUNG

# apt-get install initramfs-tools mdadm rsync

Saat muncul pilihan pada instalasi mdadm kurang lebih berisi “MD arrays needed for the root file system: ” masukkan pilihan dengan nilai “all”.

Kemudian lakukan load pada module kernel …

# modprobe linear
# modprobe raid0
# modprobe raid1
# modprobe raid5
# modprobe raid6
# modprobe raid10

Sekarang lakukan check up apakah mdadm berjalan dengan perintah …

# cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
unused devices: <none>

MEMPERSIAPKAN /dev/sdb

Sampai disini langkah selanjutnya adalah mempersiapkan /dev/sdb.

Agar bisa digunakan maka /dev/sda dan /dev/sdb harus memiliki layout yang sama untuk partisinya. Disini akan dilakukan copy terhadap layout partisi yang dimiliki oleh /dev/sda ke /dev/sdb dengan perintah:

# sfdisk -d /dev/sda | sfdisk --force /dev/sdb

Apabila proses copy berhasil maka saat dilakukan perintah fdisk -l semestinya layout partisi yang dimiliki /dev/sdb sama dengan /dev/sda!

Selanjutnya type partisi milik /dev/sdb haruslah memiliki tipe fd ( Linux raid autodetect ). Berikut langkah yang dilakukan pada permasalahan ini:

# fdisk /dev/sdb

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): <-- t
Partition number (1-6): <-- 1
Hex code (type L to list codes): <-- fd
Changed system type of partition 1 to fd (Linux raid autodetect)

Command (m for help): <-- t
Partition number (1-6): <-- 5
Hex code (type L to list codes): <-- fd
Changed system type of partition 5 to fd (Linux raid autodetect)

Command (m for help): <-- t
Partition number (1-6): <-- 6
Hex code (type L to list codes): <-- fd
Changed system type of partition 6 to fd (Linux raid autodetect)

Command (m for help): <-- w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Perhatikan bahwa yang diset tidak termasuk partisi extended, sehingga untuk partisi nomor 2 tidak diset tipenya dan hanya dilakukan pada bagian 1, 5 dan 6. Dalam hal ini adalah untuk /dev/sdb1, /dev/sdb5 dan /dev/sdb6.

Untuk meyakinkan bahwa di /dev/sdb tidak terdapat informasi terhadap setting RAID lain sebelumnya (dan seharusnya tidak ada), maka dilakukan perintah zero-sized-superblock:

# mdadm --zero-superblock /dev/sdb1
# mdadm --zero-superblock /dev/sdb5
# mdadm --zero-superblock /dev/sdb6

Apabila muncul pesan error, hal tersebut menandakan tidak ada info mengenai RAID pada /dev/sdb, dan demikian sebaliknya.

MEMBUAT RAID ARRAY

Dalam hal ini kita akan membuat 3 buah RAID array, yaitu /dev/md0 untuk /dev/sdb1 dan /dev/sda1, /dev/md1 untuk /dev/sdb5 dan /dev/sda5, dan /dev/md2 untuk /dev/sdb6 dan /dev/sda6.

Karena /dev/sda masih digunakan oleh system maka kita set mode RAID ini sebagai degraded mode dengan mendeklarasikan salah satu disk ( ingat ini RAID 1 = 2 disk ) sebagai ‘missing’.

# mdadm --create /dev/md0 --level=1 --raid-disks=2 missing /dev/sdb1
# mdadm --create /dev/md1 --level=1 --raid-disks=2 missing /dev/sdb5
# mdadm --create /dev/md2 --level=1 --raid-disks=2 missing /dev/sdb6

Sekarang coba check status RAIDnya …

# cat /proc/mdstat

Tanda [_U] menandakan bahwa RAID array dalam mode degraded, atau ada salah satu hardisk yang tidak masuk dalam array RAID 1 dari yang seharusnya ada 2 DISK.

Lalu kita format device array tersebut dengan /dev/md1 dijadikan sebagai swap ( /dev/sda5 merupakan swap di /dev/sda ).

# mkfs.ext4 /dev/md0
# mkswap /dev/md1
# mkfs.ext4 /dev/md2

Kemudian konfigurasi mdadm kita update dengan setting RAID yang dimiliki, dengan sebelumnya kita simpan konfigurasi aslinya.

# cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf-ORI
# mdadm --examine --scan >> /etc/mdadm/mdadm.conf

Pastikan agar pada baris akhir /etc/mdadm/mdadm.conf terdapat baris baru yang merupakan konfigurasi RAID arraynya, atau pastikan dengan perintah diff dengan file aslinya.

# diff /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf-ORI

Selain itu tambahkan nilai pada /etc/mdadm/mdadm.conf setting berikut:

DEVICE /dev/sda* /dev/sdb*

Lakukan rekonfigurasi mdadm dan check status RAID sekarang …

# dpkg-reconfigure mdadm
# cat /proc/mdstat

UPDATE /etc/fstab

Seperti yang dijelaskan diatas bahwa terdapat 3 buah partisi dengan

– /dev/sda1 untuk root ( / )
– /dev/sda5 untuk swap
– /dev/sda6 untuk home ( /home )

Maka harus diubah agar mounting Debian akan merujuk ke array RAID 1 yang dimiliki, sehingga untuk masing-masing setting di /etc/fstab diubah :

– /dev/sda1 untuk root diubah menjadi /dev/md0
– /dev/sda5 untuk swap diubah menjadi /dev/md1
– /dev/sda6 untuk home diubah menjadi /dev/md2

Apabila yang tampil di fstab berupa UUID maka untuk memastikan yang mana bagian /dev/sda1 dst bisa di check dengan perintah

# blkid

SETTING DAN INSTALASI GRUB 2

Karena tidak menggunakan UUID lagi maka di setting /etc/default/grub diubah dengan nilai:

GRUB_DISABLE_LINUX_UUID=true
GRUB_TERMINAL=console

Lalu untuk membuat menu custom:

# cp /etc/grub.d/40_custom /etc/grub.d/09_swraid1_setup
# nano /etc/grub.d/09_swraid1_setup

Isinya adalah …

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Debian RAID GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
    insmod raid
    insmod mdraid1x
	insmod part_msdos
	insmod ext2
	set root='(md/0)'
	echo	'Loading Linux 2.6.32-5-amd64 ...'
	linux	/boot/vmlinuz-2.6.32-5-amd64 root=/dev/md0 ro quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initrd.img-2.6.32-5-amd64
}

Perhatikan nilai dari 2.6.32-5-amd64 diatas agar digantikan dengan nilai dari kernel yang digunakan saat ini. Atau bisa dipastikan dengan perintah ..

uname -r

Kemudian karena /dev/md0 adalah root maka di bagian set root diberikan nilai ‘(md/0)’ serta pada bagian loading kernel di set root=/dev/md0!

Lalu edit file /etc/initramfs-tools/conf.d/mdadm (kalau tidak ada tambahkan) …

nano /etc/initramfs-tools/conf.d/mdadm

Berikan nilai berikut …

BOOT_DEGRADED=true

Kemudian update grub agar menuliskan setting yang dituliskan di /etc/grub.d/09_swraid1_setup ke /boot/grub/grub.cfg …

# update-grub

Lalu update ram disk agar menyesuaikan dengan setting baru …

# update-initramfs -u

Pastikan pula grub terinstall di kedua hardisk …

# grub-install /dev/sda
# grub-install /dev/sdb

COPY FILE DARI /dev/sda KE /dev/sdb

Disini yang diperlukan berdasarkan kondisi partisi adalah proses copy dari /dev/sda1 ke /dev/md0 dan /dev/sda6 ke /dev/md2.

Pertama kita lakukan mounting /dev/md0 dan /dev/md1 …

# mkdir /mnt/md0
# mkdir /mnt/md2
# mount /dev/md0 /mnt/md0
# mount /dev/md2 /mnt/md2

Lalu kita gunakan rsync …

# rsync -auHxv --exclude=/proc/* --exclude=/sys/* --exclude=/tmp/* /* /mnt/md0/
# rsync -auHxv /home/* /mnt/md2/

Tunggu hingga complete dan kemudian setelah itu mesin di reboot …

REBOOT MESIN

# reboot

Sampai disini BERDOALAH DENGAN SANGAT KUAT agar proses booting berjalan sempurna 😀

MESIN TIDAK BISA MELAKUKAN REBOOT

Apabila booting tidak berjalan di loading GRUB, biasanya ada beberapa hal …

– perhatikan kode kernel
– perhatikan device yang diload sebagai root

Pada saat loading awal di pilihan bisa kita tekan tombol “e” dan kemudian dirubah setting partisi yang harus dipilih.

Apabila tidak bisa juga, gunakan DEBIAN RESCUE MODE dan edit /etc/grub/grub.cfg di /dev/sda1 dan hilangkan tambahan dari file /etc/grub.d/09_swraid1_setup.

Intinya adalah: pastikan bahwa mesin melakukan reboot dari hardisk pertama yaitu /dev/sda lagi.

MESIN BISA MELAKUKAN REBOOT

Apabila ini yang terjadi, SELAMAT 😀

Sekarang gunakan perintah “df -h” atau “mount” dan pastikan bahwa:

– nilai device yang merujuk ke / (root) adalah /dev/md0
– nilai device yang merujuk ke swap adalah /dev/md1
– nilai device yang merujuk ke /home adalah /dev/md2

Apabila demikian maka proses instalasi dan setting berjalan baik.

MENAMBAHKAN /dev/sda KE RAID ARRAY

Setelah bisa dipastikan semua aplikasi berjalan sempurna menggunakan RAID maka sekarang waktunya untuk menambahkan /dev/sda ke dalam RAID array ( ingat bahwa sampai langkah ini RAID 1 dalam kondisi degraded ).

Tambahkan /dev/sda1 ke /dev/md0, /dev/sda5 ke /dev/md1, dan /dev/sda6 ke /dev/md2:

# mdadm /dev/md0 -a /dev/sda1
# mdadm /dev/md1 -a /dev/sda5
# mdadm /dev/md2 -a /dev/sda6

Sampai disini maka semua data yang ada di /dev/sda bisa dipastikan hilang 😀 dan langkah selanjutnya adalah menunggu proses sinkronisasi diantara /dev/sda dan /dev/sdb selesai dilakukan. Untuk melihat prosesnya bisa dilihat dengan melakukan perintah …

# cat /proc/mdstat

Atau agar bisa dilihat secara terus menerus dengan perintah …

# watch -n 10 cat /proc/mdstat

Pastikan proses tersebut selesai dilakukan dan Lamanya waktu tergantung dari besar data serta kecepatan akses diantara 2 hardisk tersebut. Pada hardisk dengan besar 1 TB menghabiskan waktu hingga lebih kurang 5 jam.

FINISHING dan SARAN

Setelah proses sinkronisasi selesai dilakukan maka langkah selanjutnya adalah menghapus /etc/grub.d/09_swraid1_setup, melakukan update untuk GRUB.

# rm /etc/grub.d/09_swraid1_setup
# update-grub
# update-initramfs -u
# grub-install /dev/sda
# grub-install /dev/sdb

Lalu reboot system …

# reboot

Check lagi setting partisi dan juga status RAID …

# df -h
# cat /proc/mdstat

Langkah selanjutnya yaitu testing, tapi langkah ini menunggu saat penulisan berikutnya 😀

Selain itu saran yang bisa diberikan adalah:
– seharusnya pada saat implementasi sebelumnya dilakukan survey dahulu tentang kompabilitas distro linux yang kita gunakan dengan mesin
– RAID akan lebih mudah diinstall apabila dilakukan instalasi SEJAK PERTAMA KALI PADA WAKTU INSTALASI linux

SUMBER:
– http://feeding.cloud.geek.nz/posts/setting-up-raid-on-existing/
– http://blog.devplug.org/2013/01/12/debian-how-to-set-upraid1-soft-madadm-remotely-on-running-system/
– http://www.howtoforge.com/how-to-set-up-software-raid1-on-a-running-system-incl-grub2-configuration-debian-squeeze
– http://www.ducea.com/2009/03/08/mdadm-cheat-sheet/

Iklan

RAID Controller HP ML310e Gen 8 v2 Tidak Dikenali Debian 7 Wheezy

19 Sabtu Okt 2013

Posted by bisaku in artikel

≈ 1 Komentar

Tag

RAID

Di salah satu tempat client kami melakukan instalasi untuk keperluan aplikasi berbasis web yang termasuk dalam aplikasi kritis. Akan tetapi saat mesin yang dijadikan sebagai server menggunakan HP ML310e Gen 8 v2, Debian Wheezy tidak dapat mengenali RAID controller yang dimiliki oleh bawaan HP tersebut ( kami berencana untuk melakukan instalasi menggunakan RAID 1 ) dikarenakan permasalahan driver di Debian.

Hal ini mengakibatkan pada saat instalasi, installer hanya dapat mengenali hardisk sebagai dua physical yang terpisah dan tidak lagi sebagai sebuah RAID ( yang biasanya dikenali pada sistem bawaan HP sebagai device dengan nama /dev/csi* ). Menggunakan distro lain saat ini bukanlah pilihan karena kewajiban dan masalah lisensi yang mengharuskan menggunakan debian.

Pada saat instalasi Debian mendeteksi 2 buah hardisk yang dikenali sebagai /dev/sda dan /dev/sdb.

Karena beberapa kepentingan lainnya yang mendesak kami memutuskan untuk melakukan instalasi pada /dev/sda TANPA melakukan pula setting RAID 1. Well, saya bayangkan ini sebagai sesuatu yang agak bodoh karena sejatinya proses instalasi RAID dapat lebih mudah dilakukan pada saat instalasi.

Namun, tidak ada hal yang sia-sia bukankah demikian?

Disaat instalasi selesai dilakukan kemudian permasalahan berikutnya muncul. Saat GRUB melakukan load ternyata GRUB gagal menentukan bagian partisi yang bisa untuk diload. Muncul error kira-kira berbunyi file system tidak dapat dikenali 😦

Dari googling dan lain-lain hingga proses gonta-ganti setting GRUB melalui DVD rescue mode pun tidak mendapatkan hasil yang bisa dijalankan.

Hingga kami melakukan pergantian item pada BIOS yang mengatur setting controller pada hardisk agar menggunakan SATA legacy, dan tidak menggunakan smart array.

GRUB pun berjalan dengan normal dan kami lanjutkan dengan instalasi berbagai aplikasi yang diperlukan.

Namun, tantangan berikutnya lebih menantang; yaitu bagaimana melakukan instalasi RAID 1 pada sistem yang berjalan.

Sebuah Dokumentasi

Situs ini berisi dokumentasi pekerjaan yang saya lakukan saat mulai dengan serius mempelajari Linux.

Halaman

  • Mengapa
  • My Toys
  • Tentang

Tulisan Terakhir

  • Shorewall Di Stretch Tidak Otomatis Berjalan Setelah Sistem Restart
  • Screen: Alat Remote Bermanfaat
  • Upgrade Postgresql 9.6 Ke 10 Pada Debian Stretch
  • fail2ban Bermasalah Setelah Upgrade Debian 8 Ke Debian 9
  • Shorewall Bermasalah Setelah Upgrade Ke Debian 9
  • Upgrade Debian 8 Ke Debian 9
  • Mengakses Komputer Lokal Dari Internet Tanpa IP Publik
  • Reload nginx Setelah Letsencrypt Berhasil Terupdate
  • rsnapshot Menyebabkan Hardisk Full Karena Hardisk Eksternal Gagal Di Mount Oleh autofs
  • Remote Backup Menggunakan rsnapshot dengan Login Root

Kategori

  • artikel (42)
  • instalasi (52)
  • script (18)
  • setting (54)
  • Uncategorized (10)

Komentar Terbaru

Aracelis pada Uninstall Bind9
firman pada Upgrade Postgresql 9.6 Ke 10 P…
Shorewall Di Stretch… pada Shorewall Bermasalah Setelah U…
Upgrade Postgresql 9… pada Upgrade Debian 8 Ke Debian…
Upgrade Postgresql 9… pada Upgrade PostgreSQL v 9.1 to v…
fail2ban Bermasalah… pada Upgrade Debian 8 Ke Debian…
Shorewall Bermasalah… pada Upgrade Debian 8 Ke Debian…
Upgrade Debian 8 Ke… pada Remote Backup Menggunakan rsna…
BestEdward pada Sharing Full Access dan Read-O…
bisaku pada Backup Data dan Aplikasi SPSE…

Arsip

Tulisan Teratas

  • Hak Akses/Perijinan File di Linux
  • Gateway Internet, Masalah Koneksi 2 Jaringan Lg?!
  • Menambahkan Account Zimbra Secara Massal
  • Koneksi Secure Melalui Public WIFI menggunakan SSH
  • Memindahkan Lokasi Default Postgresql Data Path ke Folder Lain Dengan symlink
  • Zimbra Error: Unable to determine enabled services from ldap
  • rclone dan Google Drive
  • Tentang
  • Backup Data dan Aplikasi SPSE Ke Google Drive Menggunakan rclone
  • Mengakses Komputer Lokal Dari Internet Tanpa IP Publik

adzap apache autofs backup catalina centos compressing DansGuardian device boot dig dns DNS Server fail2ban find GPT home backup http jessie Kartu Jaringan kvm letsencrypt linux mint logging lpse lubuntu modsecurity monit mount munin mysql nas4free nginx ngrok openvz php ping postgresql postgresrest proxmox Proxy Server python RAID RAID 5 rclone reset password restore rm root routing rsnapshot rsync rufus samba screen script secure sgdisk shorewall spse squid squidanalyzer ssh sshfs stretch SystemRescueCD tomcat tunelling Ubuntu upgrade uuid vps web wink xampp zimbra

Blogroll

  • WordPress.com
  • WordPress.org

Meta

  • Daftar
  • Masuk
  • RSS Entri
  • RSS Komentar
  • WordPress.com
Iklan

Buat situs web atau blog gratis di WordPress.com.

Privasi & Cookie: Situs ini menggunakan cookie. Dengan melanjutkan menggunakan situs web ini, Anda setuju dengan penggunaan mereka.
Untuk mengetahui lebih lanjut, termasuk cara mengontrol cookie, lihat di sini: Kebijakan Cookie