標籤:bonding centos7 nmcli
NIC Bonding on CentOS 7 with nmcli
當系統管理員希望增加可用頻寬,並提供冗餘和Server Load Balancer的資料轉送,核心支援bonding允許以彙總的方式實現。簡單地說,綁定意味著將兩個或多個物理網路介面(稱為奴隸)彙總成一個單獨的邏輯節點(稱為主網路)。如果一個特定的NIC(網路介面卡)的經驗問題,通訊不受影響只要其他保持活躍。
1.先決條件
預設情況下,bonding核心模組沒有啟用。因此,我們將需要載入它並確保它持久。使用modprobe--first-time載入bonding模組,如果載入模組失敗,會發出警告。
# modprobe --first-time bonding
以上的命令僅載入bondiing模組為當前會話,伺服器重啟後模組不會自動載入。為了確保持續載入,建立/etc/modules-load.d/bonding.conf檔案放置於檔案夾/etc/modules-load.d目錄中,確保每次伺服器重啟時載入bonding模組。
# echo "# Load thebonding kernel module at boot" > /etc/modules-load.d/bonding.conf
# echo "bonding">> /etc/modules-load.d/bonding.conf
伺服器重啟之後確保bonding模組自動載入
# lsmod|grep bonding
bonding 136705 0
#
2、nucli建立bond
查看現有串連及可用的網路裝置
# nmcli connection show
NAME UUID TYPE DEVICE
# nmcli device status
DEVICE TYPE STATE CONNECTION
eno16777736 ethernet disconnected --
eno33554992 ethernet disconnected --
bond0 bond unmanaged --
lo loopback unmanaged --
#
建立bond
# nmcli con add type bond con-name bond0 ifname bond0 ip4 192.168.31.108/24 mode balance-rr
Connection ‘bond0‘ (599582b0-346b-48d3-8f1d-f3bcee5deca7) successfully added.
# nmcli connection add type bond-slave con-name slave1 ifname eno16777736 master bond0
Connection ‘slave1‘ (6a1dd331-bb90-4e92-9af6-654ed8b2d2ca) successfully added.
# nmcli connection add type bond-slave con-name slave2 ifname eno33554992 master bond0
Connection ‘slave2‘ (e31f40c9-4a1c-45d5-9832-8a1705f0b1f7) successfully added.
#nmcli con mod bond0 ipv4.method manual
#nmcli con mod bond0 ipv4.gateway 192.168.31.1
#nmcli connection modify bond0 ipv4.dns 192.168.31.1
#nmcli connection modify bond0 bond.options mode=balance-rr,miimon=100,downdelay=0,updelay=0
建立後重啟網路服務
#systemctl restart network
# nmcli device status
DEVICE TYPE STATE CONNECTION
bond0 bond connected bond0
eno16777736 ethernet connected slave1
eno33554992 ethernet connected slave2
lo loopback unmanaged --
再次查看網路連結與網路裝置
# nmcli connection show
NAME UUID TYPE DEVICE
bond0 599582b0-346b-48d3-8f1d-f3bcee5deca7 bond bond0
slave1 6a1dd331-bb90-4e92-9af6-654ed8b2d2ca 802-3-ethernet eno16777736
slave2 e31f40c9-4a1c-45d5-9832-8a1705f0b1f7 802-3-ethernet eno33554992
# ip addr list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP qlen 1000
link/ether 00:0c:29:51:e8:75 brd ff:ff:ff:ff:ff:ff
3: eno33554992: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP qlen 1000
link/ether 00:0c:29:51:e8:75 brd ff:ff:ff:ff:ff:ff
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 00:0c:29:51:e8:75 brd ff:ff:ff:ff:ff:ff
inet 192.168.31.108/24 brd 192.168.31.255 scope global bond0
valid_lft forever preferred_lft forever
inet6 fe80::233b:2da9:bddd:c8dc/64 scope link tentative dadfailed
valid_lft forever preferred_lft forever
inet6 fe80::875c:5f79:646d:8446/64 scope link tentative dadfailed
valid_lft forever preferred_lft forever
inet6 fe80::bf1c:1978:9c5:6ed7/64 scope link tentative dadfailed
valid_lft forever preferred_lft forever
#
本文出自 “技術成就夢想!” 部落格,請務必保留此出處http://dreamsanqin.blog.51cto.com/845412/1886212
NIC Bonding on CentOS 7 with nmcli