Centos配置网卡时存在对应配置文件但未生效
Centos虚拟机创建后,网卡对应配置文件未生效,重启依旧。
问题背景:
虚拟机系统:PVE
操作系统:Centos 7.9 使用cloud-init初始化
网络管理:NetworkManager(禁用netwrok)
问题现象:
配置了几台虚拟机,但是其中有2台不能ssh连接,通过控制台查看,IP是通过DHCP获取的地址,并不是使用cloud-init初始化配置的IP地址,所以不能连接。尝试重启。问题依旧。
问题排查:
使用nmtui 查看网卡配置,发现有5个网卡配置。其中System eth*是使用Cloud-init配置的。另外2个配置不知道哪里来的。
继续查看,其中Wired connection2 在使用中。
我们的ssh使用的IP地址是配置在eth0上的,所以查看eth0的详细信息,发现网卡未使用System eth0配置,使用的是Wired connection2配置。
排查message日志,发现服务启动的时候加载了ifcfg-eth0配置文件。那Wired connection2配置到底哪里来的呢?对应的配置文件目录/etc/sysconfig/network-scripts/中并不存在多余的配置文件。继续排查日志。
最后查看了如下现象:
1:NetworkManager发现了一个新设备ens18,添加了接口Wired connection2,并且自动生成配置,然后使用起来了。所以本地不存在Wired connection2配置文件。
2:由于系统相关初始化,把ens18网卡重命名成了eth0了。
3:所以eth0本身配置文件存在,但是生效的却不是ifcfg-eth0
解决方法:
使用nmcli con delete 删除对应的配置。就发现eth0的配置文件生效了。并且重启也正确生效了。
问题根因:
个人感觉应该是使用cloud-init制作虚拟机模板的使用,有一些问题。因为查看cloud-init的日志,明显能看到有关ens18设备相关的动作。
更多推荐
所有评论(0)