Rabu, 25 Maret 2015

menigkatkan bandwidth 2 ethernet

Bonding 2 buah Ethernet untuk meningkatkan Bandwidth dan Redundansi

Bonding ethernet atau dikenal dengan nama channel bonding, merupakan penggabungan 2 buah ethernet fisik menjadi satu channel. Dengan cara seperti ini ada beberapa keuntungan yang bisa kita peroleh, yakni peningkatan bandwidth dimana channel dilalui, selain itu channel tersebut bisa menjadi redundan, sehingga apabila salah satu ethernet terputus, channel akan tetap tersambung melalui ethernet lain (failover). Terlebih dahulu kita periksa ethernet yang terdapat dalam server kita.

[root@PAJAJARAN ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:8E:6D:D3
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe8e:6dd3/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1224 errors:0 dropped:0 overruns:0 frame:0
          TX packets:897 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:111007 (108.4 KiB)  TX bytes:201085 (196.3 KiB)

eth1      Link encap:Ethernet  HWaddr 00:0C:29:8E:6D:DD
          inet addr:192.168.100.100  Bcast:192.168.100.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe8e:6ddd/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:240 (240.0 b)  TX bytes:1440 (1.4 KiB)

eth2      Link encap:Ethernet  HWaddr 00:0C:29:8E:6D:E7
          inet addr:192.168.10.100  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe8e:6de7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1 errors:0 dropped:0 overruns:0 frame:0
          TX packets:33 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:60 (60.0 b)  TX bytes:2006 (1.9 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          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)


 Dalam server terdapat 3 buah ethernet, tapi saya akan mencoba menggabungkan 2 buah ethernet saja, yakni eth1 dan eth2 kedalam satu channel. Untuk eth0 akan digunakan untuk keperluan remote. Untuk alamat ip akan kita gunakan 192.168.100.100/24. Berikut ilustrasi seperti gambar dibawah: 


TAHAP PERTAMA

Sebelum melakukan konfigurasi, kita install dulu beberapa paket yang diperlukan, yakni : bind-utils dan ethtool. Untuk memudahkan instalasi, kita gunakan yum.

[root@PAJAJARAN ~]# yum install bind-utils ethtool


Apabila kedua paket tersebut sudah terinstall sebelumnya, maka tahap ini bisa dilewati. Selanjutnya kita buat file master bonding dengan nama bond0. File ini merupakan file konfigurasi network yang berfungsi sebagai master dari eth1 dan eth2 yang akan dibonding.

[root@PAJAJARAN ~]# nano /etc/sysconfig/network-scripts/ifcfg-bond0


Isi file tersebut seperti dibawah ini:

DEVICE="bond0"
NAME="System bond0"
NM_CONTROLLED="no"
USERCTL=no
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
PEERDNS=no
PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
IPADDR=192.168.100.100
NETMASK=255.255.255.0
BROADCAST=192.168.100.255


Simpan file tersebut, dan keluar dari editor nano. Tahap selanjutnya kita akan melakukan perubahan pada file konfigurasi eth1 dan eth2.

Untuk eth1:

[root@PAJAJARAN ~]# nano /etc/sysconfig/network-scripts/ifcfg-eth1


Ubah seperti dibawah ini:

DEVICE=eth1
BOOTPROTO=none
TYPE=Ethernet
HWADDR=00:0c:29:8e:6d:dd
IPV6INIT=no
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes


Untuk eth2: 

[root@PAJAJARAN ~]# nano /etc/sysconfig/network-scripts/ifcfg-eth2


Ubah seperti dibawah ini:

DEVICE=eth2
BOOTPROTO=none
TYPE=Ethernet
HWADDR=00:0c:29:8e:6d:e7
ONBOOT=yes
MASTER=bond0
SLAVE=yes


Dari kedua ethernet tersebut, intinya kita hilangkan baris IPADDR dan NETMASK, lalu tambahkan baris MASTER=bond0 dan SLAVE=yes. Ini artinya kedua ethernet tersebut bertindak sebagai slave dari channel utama bond0.


TAHAP KEDUA 

Selanjutnya, kita akan membuat modul konfigurasi bonding dengan nama bonding.conf dimana akan kita tempatkan di lokasi /etc/modprobe.d/

[root@PAJAJARAN ~]# nano /etc/modprobe.d/bonding.conf


Lalu isikan parameter seperti dibawah ini:

alias bond0 bonding
options bond0 mode=5 miimon=100


Mode diatas yakni mode tipe 5 bonding yang dipilih. Untuk mode bonding selengkapnya bisa dilihat pada sumber berikut ini. Angka 100 merupakan polling intervals 100 ms. Simpan perubahan, lalu keluar dari editor nano.

Tahap selanjutnya, kita harus melakukan registrasi terhadap modul bonding yang sudah dibuat diatas agar dikenal sebagai device oleh Server Centos.

[root@PAJAJARAN ~]# modprobe bonding


Restart service networking:

[root@PAJAJARAN ~]# service network restart
Shutting down interface bond0:                             [  OK  ]
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface bond0:                               [  OK  ]
Bringing up interface eth0:                                [  OK  ]


Dari hasil output diatas, semua tampak berjalan lancar. Kita lihat kembali keseluruhan ethernet pada server Linux Centos setelah dilakukan konfigurasi bonding: 

[root@PAJAJARAN ~]# ifconfig
bond0     Link encap:Ethernet  HWaddr 00:0C:29:8E:6D:DD
          inet addr:192.168.100.100  Bcast:192.168.100.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe8e:6ddd/64 Scope:Link
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:15 errors:0 dropped:0 overruns:0 frame:0
          TX packets:72 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:936 (936.0 b)  TX bytes:4368 (4.2 KiB)

eth1      Link encap:Ethernet  HWaddr 00:0C:29:8E:6D:DD
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:10 errors:0 dropped:0 overruns:0 frame:0
          TX packets:31 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:618 (618.0 b)  TX bytes:1914 (1.8 KiB)

eth2      Link encap:Ethernet  HWaddr 00:0C:29:8E:6D:DD
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:5 errors:0 dropped:0 overruns:0 frame:0
          TX packets:41 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:318 (318.0 b)  TX bytes:2454 (2.3 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          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)


Terlihat bahwa bond0 sudah dikenal sebagai device, dimana dia berfungsi sebagai master channel dari kedua ethernet didalamnya, yakni eth1 dan eth2

Tidak ada komentar:

Posting Komentar