service.support
UID 14
精華
0
積分 0
帖子 523
閱讀權限 200
註冊 2006-10-2
狀態 離線
|
Linux 如何設定兩個以上的網卡作 HA (High availablity)
Linux 如何設定兩個以上的網卡作 HA (High availablity)
說明:
我們利用 Linux Kernel 2.4 就內建的功能(Linux Ethernet Bonding), 透過設定產生一個 bond0 的網路介面, 然後將 eth0, eth1 Bind 至 Bond0 後, 而且 eth0 與 eth1 分別連接到 Switch 上的兩個孔位, 那麼當啟用此功能後, 不管是 eth0 或 eth1 斷線, 會自動換另一張網卡來出去。
注意:
1. Linux Kernel 以及網卡需支援 mii-tool
2. 目前 iSherlock 尚無介面設定, 需手動設定
3. bind0 中的 MAC Address 會是從 eth0 或 eth1 中挑一個, 看那一個先 UP 起來, 接著 bind0, eth0, eth1 皆是使用相同的 MAC Address
步驟:
1. 設定載入模組 Bonding
# vi /etc/rc.d/rc.modules
新增下列幾行:
/sbin/modprobe eth0
/sbin/modprobe eth1
/sbin/modprobe bonding mode=1 miimon=100 >&/dev/null
## 這是為了確保 eth0, eth1 先 Load 至 kernel module, 然後再載入 bonding
## mode 與 miimon 是要作 HA 所必設的參數, 相關涵義請自行參考文件
查詢是否有載入成功
# lsmod
刪除載入的 bonding
# rmmod bonding
2. 建立此 bond0 的網路設定
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
HWADDR=000:68:0A:95:19 (Teddy 建議在這裡先指定 eth0 or eth1 的 MAC Address 到 bond0)
IPADDR=192.168.8.126
NETMASK=255.255.255.0
NETWORK=192.168.8.0
BROADCAST=192.168.8.255
ONBOOT=yes
BOOTPROTO=static
BONDSLAVE="eth0 eth1"
修改 eth0 的網路設定
DEVICE=eth0
BOOTPROTO=static
IPADDR=0.0.0.0
ONBOOT=yes
修改 eth1 的網路設定
DEVICE=eth1
BOOTPROTO=static
IPADDR=0.0.0.0
ONBOOT=yes
3. 手動修改 /sbin/ifup 加入以下啟動程序, 於最後一個 fi 之前加入以下序述:
if [ -n "${BONDSLAVE}" ] ; then
echo "ifenslave ${DEVICE} ${BONDSLAVE}"
ifenslave ${DEVICE} ${BONDSLAVE}
fi
注意: 在新版的 initscripts-5.00-10EH.i386.rpm 中的 /sbin/ifup 已經改為這個樣子, 所以就可省略此步驟
4. 重新啟動系統
參考文件:
1. http://www.kernel.org/pub/linux/ ... working/bonding.txt
|
|