Sebagai bagian awal dari implementasi Linux High Availability pada openSUSE/SUSE Linux Enterprise, saya akan menuliskan bagian pertama dari beberapa seri tulisan terkait dengan Linux HA. Tulisan kali ini akan menjelaskan cara implementasi DRBD (Distributed Replicated Block Device), salah satu mekanisme backup yang berfungsi seperti network RAID. Penjelasan lebih detail mengenai DRBD dapat dibaca pada artikel saya sebelumnya : DRBD, HeartBeat, OpenAIS & Pacemaker untuk Linux High Availability Server
Tutorial kali ini menggunakan sistem SUSE Linux Enterprise Server 11. Untuk tutorial yang sama menggunakan openSUSE 11.1 atau openSUSE 11.2 akan saya publish setelah artikel ini. Saya juga sudah membuat remastering openSUSE 11.2 HA versi JeOS yang akan saya sediakan untuk diujicoba dan tersedia dalam format ISO, LiveUSB, VMWare/VirtualBox dan Xen Hypervisor guest.
Berikut adalah langkah-langkah instalasi dan konfigurasinya :
- Download file iso SUSE® Linux Enterprise High Availability Extension dari link ini. Download bisa dilakukan menggunakan free register account. Seperti halnya SLES 11, SUSE® Linux Enterprise High Availability Extension dapat digunakan tanpa biaya jika tidak membutuhkan support dan update dari Novell. Pilih file iso sesuai arsitektur processor (misalnya saya memilih iso versi x86_64 untuk server 64 bit saya).
- Install 2 buah sistem SLES 11. Saya menggunakan nama alpha.vavai.com untuk server pertama dan bravo.vavai.com untuk server kedua. Nama ini akan menjadi rujukan konfigurasi DRBD. Silakan pilih apakah ingin menggunakan GUI atau text mode. Saya menggunakan IP 192.168.1.20 untuk alpha.vavai.com dan IP 192.168.1.21 untuk bravo.vavai.com. Untuk instalasi kedua sistem tersebut, saya menggunakan Xen Hypervisor. Proses instalasi juga dapat dilakukan menggunakan VirtualBox atau VMWare atau KVM atau mekanisme virtual appliance lainnya.
- Tambahkan harddisk virtual kedalam masing-masing sistem. Harddisk virtual ini nantinya akan menjadi device DRBD yang akan disinkronisasi via network. Ingat, jangan format/partisi harddisk ini karena partisi akan dilakukan setelah DRBD dikonfigurasi
- Tambahkan Repo High Availability. Jika file iso yang didownload pada tahap pertama sudah diburn ke CD, gunakan CD tersebut sebagai addon repo dan aktifkan melalui YAST | Software | Software Repositories. Jika masih dalam bentuk ISO, tambahkan file iso tersebut sebagai media repo dengan cara yang sama, hanya saja memilih tipe “Local ISO” instead of CD/DVD.
- Install Pattern “High Availability” Melalui YAST. Buka YAST | Software | Software Management dan berikan tanda centang pada pattern High Availability, kemudian klik Accept. Setelah selesai, tutup YAST.
Sebagai catatan, berikut adalah beberapa konfigurasi yang saya gunakan :
Konfigurasi Network Server :
[code language=’cpp’]
alpha:~ # ifconfig
eth0 Link encap:Ethernet HWaddr 00:16:3E:13:14:40
inet addr:192.168.1.20 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:57926 errors:0 dropped:0 overruns:0 frame:0
TX packets:605 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:8216139 (7.8 Mb) TX bytes:191596 (187.1 Kb)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
[/code]
[code language=’cpp’]
alpha:~ # tail /etc/hosts
fe00::0 ipv6-localnet
ff00::0 ipv6-mcastprefix
ff02::1 ipv6-allnodes
ff02::2 ipv6-allrouters
ff02::3 ipv6-allhosts
127.0.0.2 alpha.vavai.com alpha
192.168.1.21 bravo.vavai.com bravo
[/code]
[code language=’cpp’]
alpha:~ # tail /etc/resolv.conf
# See also the netconfig(8) manual page and other documentation.
#
# Note: Manual change of this file disables netconfig too, but
# may get lost when this file contains comments or empty lines
# only, the netconfig settings are same with settings in this
# file and in case of a “netconfig update -f” call.
#
### Please remove (at least) this line when you modify the file!
search vavai.com
nameserver 192.168.1.254
[/code]
Konfigurasi Harddisk Server
[code language=’cpp’]
alpha:~ # fdisk -l
Disk /dev/xvda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0008f08c
Device Boot Start End Blocks Id System
/dev/xvda1 1 206 1654663+ 82 Linux swap / Solaris
/dev/xvda2 * 207 1305 8827717+ 83 Linux
Disk /dev/xvdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Disk /dev/xvdb doesn’t contain a valid partition table
[/code]
Keterangan : Disk /dev/xvdb dinyatakan tidak memiliki partisi yang valid karena memang belum dibuatkan partisi. Saya menggunakan kapasitas masing-masing sebesar 10 GB untuk harddisk virtual pertama maupun harddisk virtual kedua
Artikel berlanjut ke bagian kedua. Saya akan update linknya di artikel ini begitu artikel kedua dipublikasikan.
12 Comments
mantab nih mas vavai
rajin ngulik dan nulis top deh
“SUSE® Linux Enterprise High Availability Extension dapat digunakan tanpa biaya jika tidak membutuhkan support dan update dari Novell.”
Mas vavai, maksudnya tidak membutuhkan update itu bagaimana? Update dalam arti update security fix dll atau bagaimana?
Update daily mas. Untuk SLES, Novell biasanya mengeluarkan update gabungan melalui Service Pack. Untuk tambahan update app baru bisa menggunakan paket dari openSUSE Build Service atau file rpm dari openSUSE.
Hm, ic. Jadi kalo pake SLES tanpa berlangganan tidak mendapatkan update apapun? termasuk security update?
Untuk yg pengen tanpa berlanggan berarti menggunakan OpenSUSE ya?
Skema-nya seperti RedHat ya?
Trims atas penjelasannya mas vavai.
mas vavai mau tanya… maklum newbie.
gimana cara menambahkan hardisk virtual jika saya cuma menggunakan 1 hardisk. apakah harus ada hardisk tambahan untuk membuat virtual hardisk tersebut?
@Ade,
Bisa menggunakan partisi lain, tapi tapi partisi tersebut jangan diformat. Lebih fleksibel pakai virtualization jadi mudah menambahkan harddisk virtualnya
Mas Vavai,
Saya Bonni untuk cluster ini mana yang lebih baik bila saya menggunakan HA+GFS2 atau HA+DBRD.
Kebetulan saya melakukan implementasi di Centos / Red Hat, setau saya ini sama saja HAnya. Dan yang pernah saya lakukan adalah menggunakan GFS2, mana yang lebih menjamin integritas data ketika terjadi penulisan?
Mohon penjelasannya yah mas
Terima Kasih
Hi mas Bonni,
Secara prinsip keduanya tidak ada issue, sepanjang tidak terjadi down di semua node. Saya terbiasa pakai DRBD namun beberapa rekan terutama yang basisnya CentOS/Red Hat menggunakan GFS.
Jika koneksi antar nodenya kurang bagus, di DRBD sering terjadi split-brain