在centos7的时候,我们习惯了em1这样的网络设备命名,在centos8发现网络设备变成了eno1这样的命名。
centos这种变化的原因是由于systemd和udev引入了一种新的网络设备命名方式:
一致网络设备命名(CONSISTENT NETWORK DEVICE NAMING)
服务器通常有多块网卡,有板载集成的,同时也有插在PCIe插槽的。
Linux系统的命名原来是eth0,eth1这样的形式,但是这个编号往往不一定准确对应网卡接口的物理顺序。
为解决这类问题,dell开发了biosdevname方案(systemd v197版本中将dell的方案作了进一步的一般化拓展)。
目前的Centos既支持dell的biosdevname,也支持systemd的方案。
为了满足我们k8s集群相应的网络名称统一,统一使用eno 模式(按centos 8的名称来)
具体操作
biosdevname的命名规范为:
实际的例子:
em1 板载网卡
p3p4 pci网卡
p3p4_1 虚拟网卡
net.ifnames命名规范为:设备类型+设备位置+数字
设备类型:
en 表示Ethernet
wl 表示WLAN
ww 表示无线广域网WWAN
这两个参数都可以在grub配置中提供,biosdevname=0是系统默认值(dell服务器默认是1),net.ifnames=1是系统默认值。
我们服务器是dell 的所以最终的规则可以配置为下图
grub2-mkconfig -o /boot/grub2/grub.cfg
cd /etc/sysconfig/network-scripts/
mv ifcfg-em3 ifcfg-eno3
vim ifcfg-eno3
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NAME=eno3
DEVICE=eno3
ONBOOT=yes
IPADDR=192.168.8.205
reboot 重启系统就可以生效了
参考文章
https://www.cnblogs.com/yanh0606/p/10910808.html