1. centos6 实现bonding:
友情提示:
需要两个相同类型网卡(在虚拟机上尽量使用仅主机模式)
网卡配置文件中关闭NetworManager(NetworManager=no)
bonding 0,5,6模式不需要交换机做配置,实现难度小。其他模式在虚拟机上不配交换机的情况下偶尔实验结果会有偏差
实验步骤:
1.1 新建ifcfg-bond0并配置
vim ifcfg-bond0 DEVICE=bond0 BONDING_OPTS= "mode=0 miion=100" #bonding0模式 ,俩网卡确定心跳间隔100毫秒 IPADDR=172.18.97.97 PREFIX=16 GATEWAY=172.18.0.1 NetworManager=no
1.2 修改两个网卡配置文件
vim ifcfg-eth1 DEVICE=eth1 MASTER=bond0 SLAVE=yes 复制:cp ifcfg-eth1 ifcfg-eth0 vim ifcfg-eth0 修改DEVICE=eth0
1.3 测试
service network restart #重启服务
ip a 查看网卡配置信息发现eth0,eth1网卡mac地址相同
用同网段另一台主机ping 172.18.97.97 关闭一块网卡观察是否还能ping通
查看网卡工作状态:
cat /proc/net/bonding/bond0
查看网卡bonding模式:
cat /sys/class/net/bond0/bonding/mode
2. centos7使用nmcli 实现bonding:
实验步骤:
2.1 添加bonding接口
nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup nmcli connection modify bond0 ipv4.method manual ipv4.addresses 192.168.43.71/24 ipv4.gateway 192.168.43.71
2.2 添加从属接口
nmcli connection add type bond-slave ifname ens34 master bond0 nmcli connection add type bond-slave ifname ens37 master bond0
注:如无为从属接口提供连接名,则该名称是接口名称加类型构成
2.3 要启动绑定,则必须首先启动从属接口
nmcli connection up bond-slave-ens34 nmcli connection up bond-slave-ens37
2.4 启动绑定
nmcli connection up bond0
2.5 拆除步骤
nmcli connection down bond0 #做完这一步实际已经删除了bonding 再手动将生成的三个配置文件删除即可(需nmcli connection reload同步),或者如下命令删 nmcli connection delete bond0 nmcli connection delete bond-slave-ens37 nmcli connection delete bond-slave-ens34
3. centos7使用nmcli 实现网络组TEAM:
工作特性:
网络组不同于旧版中bonding技术,提供更好的性能和扩展性
网络组由内核驱动和teamd守护进程实现.
多种方式runner
broadcast
roundrobin
activebackup
loadbalance
lacp (implements the 802.3ad Link Aggregation Control Protocol)
启动网络组接口不会自动启动网络组中的port接口
启动网络组接口中的port接口总会自动启动网络组接口
禁用网络组接口会自动禁用网络组中的port接口
没有port接口的网络组接口可以启动静态IP连接
启用DHCP连接时,没有port接口的网络组会等待port接口的加入
方法步骤:
创建网络组接口
nmcli con add type team con-name CNAME ifname INAME [config JSON]
CNAME 连接名, INAME 接口名
JSON 指定runner方式
格式: ‘{"runner": {"name": "METHOD"}}‘
METHOD 可以是broadcast, roundrobin,activebackup, loadbalance, lacp
创建port接口
nmcli con add type team-slave con-name CNAME ifname INAME master TEAM
CNAME 连接名
INAME 网络接口名
TEAM 网络组接口名
连接名若不指定,默认为team-slave-IFACE
nmcli dev dis INAME
nmcli con up CNAME
INAME 设备名 CNAME 网络组接口名或port接口
实例演示:
1. 创建网络组
nmcli connection add type team con-name team0 ifname team0 config ‘{"runner":{"name":"loadbalance"}}‘
2. 创建port接口
nmcli connection add type team-slave ifname ens34 master team0 nmcli connection add type team-slave ifname ens37 master team0
3. 启动网络组接口
nmcli connection up team-slave-ens37 up nmcli connection up team-slave-ens34 up
4. 查看网络组状态
teamdctl team0 status
本文出自 “linux运维” 博客,请务必保留此出处http://arm2012.blog.51cto.com/2418467/1976571
原文地址:http://arm2012.blog.51cto.com/2418467/1976571