Network High Availability Menggunakan Linux Bonding Driver Pada Centos 6.3

High Availability (HA) bisa diartikan sebagai ketersediaan tinggi, pada penerapannya berkaitan dengan Network HA bisa digambarkan sebagai berikut : Sebuah server memiliki lebih dari 1 Network Interface Card (NIC) atau yang biasa kita kenal dengan LAN Card, dan bisa juga lebih dari 1 Switch, dimana bila salah satu NIC/ Switch/ kabel LAN rusak/ putus, maka network tidak akan putus karena di backup oleh NIC/ Switch/ kabel LAN yang lain.



Berikut contoh konfigurasinya :
                |                                     |
                |port3                           port3|
          +-----+----+                          +-----+----+
          |          |port2       ISL      port2|          |
          | switch A +--------------------------+ switch B |
          |          |                          |          |
          +-----+----+                          +-----++---+
                |port1                           port1|
                |             +-------+               |
                +-------------+ host1 +---------------+
                         eth0 +-------+ eth1
Pada Centos 6.3, Linux Bonding Driver biasanya telah terinstal. Konsep Linux Bonding Driver adalah menggabungkan beberapa network interface menjadi sebuah logical interface yang diwakili oleh sebuah IP address. Ada beberapa mode bonding yang tersedia di Linux Bonding Driver, antara lain :
  • balance-rr atau 0
  • active-backup atau 1
  • balance-xor atau 2
  • broadcast atau 3
  • 802.3ad atau 4
  • balance-tlb atau 5
  • balance-alb atau 6
Secara umum, mode-mode diatas bisa digunakan untuk hot-standby (HA) dan load balancing. Mode yang bisa digunakan untuk High Availability adalah mode active-backup (0) dan broadcast (3). Sementara mode yang lain bisa digunakan untuk memaksimalkan jalur data (load balancing) yang mana tidak dibahas pada tulisan ini.
active-backup: Mode ini lebih umum digunakan, terutama pada bentuk konfigurasi seperti gambar di atas dimana kedua switch saling terhubung.
broadcast: Jika kedua switch tidak terhubung atau saling independen, maka mode broadcast lebih cocok digunakan. Dengan mode broadcast, jaringan cross-over juga bisa digabungkan dengan yang lain.
Berikut konfigurasi yang perlu dilakukan :
  1. Buat file bonding.conf di /etc/modprobe.d/
    File bonding.conf berisi :
    alias bond0 bonding
    options bond0 mode=broadcast miimon=100
    Jika kita menggunakan mode active-backup, dan menginginkan salah satu switch/ NIC menjadi yang utama / primary, maka kita bisa menambahkan opsi primary pada bonding.conf seperti dibawah ini :
    alias bond0 bonding
    options bond0 mode=active-backup miimon=100 primary=eth0
    Opsi miimon digunakan untuk memonitor NIC jikalau terjadi kegagalan.
  2. Pada /etc/sysconfig/network-script/ , buat file ifcfg-bond0, yang berisi :
    DEVICE=bond0
    IPADDR=192.168.1.1
    NETMASK=255.255.255.0
    ONBOOT=yes
    BOOTPROTO=none
    USERCTL=no
    Parameter yang digunakan dan nilainya, pada ifcfg-bond0 disesuaikan dengan kondisi masing-masing user.
  3. Pada /etc/sysconfig/network-script/ , ubah isi file ifcfg-eth0 seperti berikut :
    DEVICE=eth0
    USERCTL=no
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
    BOOTPROTO=none
    Dan ifcfg-eth1 seperti berikut :
    DEVICE=eth1
    USERCTL=no
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
    BOOTPROTO=none
    Parameter yang digunakan dan nilainya, pada ifcfg-eth0 dan ifcfg-eth1 disesuaikan dengan kondisi masing-masing user.
  4. Lalu restart komputer
    Beberapa tutorial menyebutkan, untuk mendapatkan efek dari perubahan konfigurasi yang kita lakukan, cukup dengan memberikan perintah berikut pada terminal :
    service network restart
    Namun dari pengalaman pribadi penulis, dengan me-restart network tidak cukup untuk mendapatkan efek maksimal dari perubahan konfigurasi diatas, yang terbaik adalah me-restart komputer.
    Hal yang sama juga pernah terjadi ketika penulis melakukan perubahan konfigurasi, seringkali dengan hanya me-restart service-nya tidak memberikan efek yang sebenarnya dari konfigurasi yang kita lakukan, efek yang sebenarnya baru tampak ketika kita me-restart komputer.
Untuk mengecek hasilnya, lakukan perintah berikut di terminal :
ifconfig
Jika berhasil, maka hasilnya kira-kira seperti ini :
# /sbin/ifconfig
bond0     Link encap:Ethernet  HWaddr 00:C0:F0:1F:37:B4
          inet addr:XXX.XXX.XXX.YYY  Bcast:XXX.XXX.XXX.255  Mask:255.255.252.0
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:7224794 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3286647 errors:1 dropped:0 overruns:1 carrier:0
          collisions:0 txqueuelen:0

eth0      Link encap:Ethernet  HWaddr 00:C0:F0:1F:37:B4
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:3573025 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1643167 errors:1 dropped:0 overruns:1 carrier:0
          collisions:0 txqueuelen:100
          Interrupt:10 Base address:0x1080

eth1      Link encap:Ethernet  HWaddr 00:C0:F0:1F:37:B4
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:3651769 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1643480 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          Interrupt:9 Base address:0x1400
Untuk test konfigurasi bisa dilakukan dengan cabut salah satu kabel LAN, jika berhasil maka seharusnya network tidak terputus. Ok, selamat mencoba :)
Referensi : http://www.kernel.org/doc/Documentation/networking/bonding.txt

0 comments:

Post a Comment

Please Enable JavaScript!
Mohon Aktifkan Javascript![ Enable JavaScript ]
close
iklan 120 x 600 kanan
close