Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

8.10.2. 使用 teamd 创建网络团队

注意
使用 teamd 创建的配置不具有持久性,因此可能需要使用 第 8.10.1 节 “使用 nmcli 配置网络合作”第 8.10.3 节 “使用 ifcfg 文件创建网络团队” 中定义的步骤创建团队。
若要创建网络组,需要 JSON 格式配置文件作为端口组或链接的接口的虚拟接口。快速方法是复制示例配置文件,然后使用以 root 特权运行的编辑器编辑这些文件。要列出可用的示例配置,请输入以下命令:
~]$ ls /usr/share/doc/teamd-*/example_configs/
activebackup_arp_ping_1.conf  activebackup_multi_lw_1.conf   loadbalance_2.conf
activebackup_arp_ping_2.conf  activebackup_nsna_ping_1.conf  loadbalance_3.conf
activebackup_ethtool_1.conf   broadcast.conf                 random.conf
activebackup_ethtool_2.conf   lacp_1.conf                    roundrobin_2.conf
activebackup_ethtool_3.conf   loadbalance_1.conf             roundrobin.conf
要查看包含的文件之一,如 activebackup_ethtool_1.conf,请输入以下命令:
~]$ cat /usr/share/doc/teamd-*/example_configs/activebackup_ethtool_1.conf
{
	"device":	"team0",
	"runner":	{"name": "activebackup"},
	"link_watch":	{"name": "ethtool"},
	"ports":	{
		"enp1s0": {
			"prio": -10,
			"sticky": true
		},
		"enp2s0": {
			"prio": 100
		}
	}
}
创建用于存储 teamd 配置文件的工作配置目录。例如,作为普通用户,输入带有以下格式的命令:
~]$ mkdir ~/teamd_working_configs
将您选择的文件复制到您的工作目录中,并根据需要进行编辑。例如,您可以使用带有以下格式的命令:
~]$ cp /usr/share/doc/teamd-*/example_configs/activebackup_ethtool_1.conf \ ~/teamd_working_configs/activebackup_ethtool_1.conf
要编辑该文件以适应您的环境,例如要将接口更改为网络团队的端口,请打开该文件以进行编辑,如下所示:
~]$ vi ~/teamd_working_configs/activebackup_ethtool_1.conf
进行任何必要的更改并保存文件。有关使用 vi 编辑器或使用您首选编辑器的帮助,请参见 vi (1) 手册页。
请注意,要用作组中端口的接口不得处于活动状态,也就是说,在将它们添加到组设备时,它们必须关闭。要检查其状态,请运行以下命令:
~]$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 52:54:00:d5:f7:d4 brd ff:ff:ff:ff:ff:ff
3: em2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
  link/ether 52:54:00:d8:04:70 brd ff:ff:ff:ff:ff:ff
在本示例中,我们计划使用的接口都是 UP
要关闭接口,以 root 用户身份以以下格式发出命令:
~]# ip link set down em1
根据需要为每个接口重复此操作。
要以 root 用户身份基于配置文件创建组接口,请更改到工作配置目录(本例中为teamd_working_configs ):
~]# cd /home/userteamd_working_configs
然后以以下格式发出命令:
~]# teamd -g -f activebackup_ethtool_1.conf -d
Using team device "team0".
Using PID file "/var/run/teamd/team0.pid"
Using config file "/home/user/teamd_working_configs/activebackup_ethtool_1.conf"
g 选项用于调试消息 ,-f 选项指定要加载的配置文件,而 -d 选项则使进程在启动后作为守护进程运行。有关其他选项,请参阅 teamd(8) 手册页。
要检查团队的状态,以 root 身份运行以下命令:
~]# teamdctl team0 state
setup:
  runner: activebackup
ports:
  em1
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
  em2
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
runner:
  active port: em1
要将地址应用到网络组接口,team0,以 root 用户身份以以下格式发出命令:
~]# ip addr add 192.168.23.2/24 dev team0
要检查组接口的 IP 地址,请按如下所示发出命令:
~]$ ip addr show team0
4: team0:  <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
    link/ether 16:38:57:60:20:6f brd ff:ff:ff:ff:ff:ff
    inet 192.168.23.2/24 scope global team0
       valid_lft forever preferred_lft forever
    inet6 2620:52:0:221d:1438:57ff:fe60:206f/64 scope global dynamic
       valid_lft 2591880sec preferred_lft 604680sec
    inet6 fe80::1438:57ff:fe60:206f/64 scope link
       valid_lft forever preferred_lft forever
要激活组接口,或者要启动它,以 root 用户身份以以下格式发出命令:
~]# ip link set dev team0 up
要临时停用组接口或将其关闭,以 root 用户身份以以下格式发出命令:
~]# ip link set dev team0 down
root 用户身份终止或终止团队守护进程实例,以以下格式发出命令:
~]# teamd -t team0 -k
k 选项指定与设备关联的守护进程实例 team0 将被终止。有关其他选项,请参阅 teamd(8) 手册页。
要获得 teamd 命令行选项的帮助,请运行以下命令:
~]$ teamd -h
此外,请参阅 teamd(8)man page。