Cách thiết lập bonding interface trong RHEL6

Bonding Interface in RHEL6

RHEL (Redhat enterprise Linux) cho phép quản trị hệ thống kết hợp nhiều network interface vào thành 1 interface sử dụng bonding module của Linux kernel và một interface bonding. Điều này cho phép 2 network interface hoạt động như 1 interface. Điều này đem lại 2 lợi ích.

Tăng độ tin cậy. Bonding module có thể cho phép 2 interface hoạt động ở chế độ active-standby. Khi đường truyền active interface bị lỗi, dẫn đến việc không truyền tải được nội dung, Linux kernel sẽ tự động chuyển qua standby interface.
Tăng bandwidth. Nếu là cable G thì thông lượng tối đa của 1 Giga NIC là 1Gbps. Bằng việc load-balancing qua 2 NIC, ta có thể tăng thông lượng truyền tải lên 2Gbps.

Cách cài đặt bonding

Yêu cầu

  • Máy tính phải có 2 card mạng, tương đương với 2 cổng mạng
  • Mỗi cổng phải được cắm vào 1 đường truyền khác nhau (switch khác nhau)

Cách cài đặt

Bước 1: Load module bonding

Bước 2: Tạo bond channel

Tạo 1 file ifcfg-bondN ở đây là N là 1 số thứ tự của device (ví dụ 0) có nội dung gần như sau:

Ở đây IP cần cài cho bond sẽ là 192.168.10.25

BONDING_OPTS có thể cài các giá trị sau: BONDING_OPTS=”miimon=100 mode=1″

mode của bond có thể là 1 trong các lựa chọn sau:

  • mode = 1: active – backup
  • mode = 2: balance – xor
  • mode = 3: broadcast
  • mode = 4: 802.3ad
  • mode = 5: balance – tlb
  • mode = 6: balance – alb

miimon: là giá trị tính bằng milisecond (ms) chỉ thời gian giám sát MII của NIC.

Bước 3: Cấu hình slave

Như ở ảnh đầu bài viết, 1 bond sẽ có 2 slave là eth0 và eth1. 2 slaves này sẽ được cấu hình để cùng trỏ đến master là bond. Nội dung file cầu hình của eth0 và eth1 như sau:

Chú ý slave = yesmaster = bond0

Bước 4: Khởi động lại mạng và kiểm tra

Trong trường hợp NIC (ethX) của bạn chưa được khởi tạo, bạn có thể cần reboot lại máy.

Trong ví dụ trên mình có 2 NIC được “bó với nhau” qua bond0. NIC hiện tại đang active là eth0. Mỗi NIC có bandwidth là 1Gbps. Mình sử dụng active-backup mode 1. Với cách cấu hình này, khi 1 NIC / switch bị hỏng, network của máy chủ không bị gián đoạn.

Bạn có thể kiểm tra tính đúng đăn của cấu hình bằng cách thử rút 1 dây mạng và quan sát Linux tự động failover NIC từ eth0 sang eth1 và ngược lại. Log của quá trình này được ghi ra syslog (/var/log/messages).

Kết luận

Sử dụng tính năng bonding của Linux cho phép ta tăng độ tin cậy của hệ thống và tăng được bandwidth. Nếu bạn có nhiều và có nhiều port thì không tội gì không dùng bonding (trừ phi tiết kiệm switch :D)

Tham khảo

  1. https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-networkscripts-interfaces-chan.html
  2. https://www.kernel.org/pub/linux/kernel/people/marcelo/linux-2.4/Documentation/networking/bonding.txt

Leave a Reply

Be the First to Comment!

Notify of
avatar
wpDiscuz