暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

网卡改名重启服务器后名字丢失问题

原创 jasonwong 2022-02-22
1346

案例分析:

个人笔记本上虚拟机安装RAC,需要各个节点对应网卡的名称必须相同,以达到网络和服务负载均衡的作用。

 

linux的命令ip可对network interface  改名,命令格式是 ip link set ether_name name ether_name_new,比如在RAC集群里为使得各个节点的网卡名称一致,把一个节点上虚拟机自动生成的一个网卡名称修改:ip link set ens38 name ens37,然后在/etc/sysconfig/network-scripts/ifcfg-ens37里完成配置,但虚拟机重启后通过ip addr命令看到的还是ens38,新名字ens37没有了当然ip address网卡地址也丢失。

 

配置

CentOS7使用了“一致性网络命名方法”,这里举例,将网卡名截断为前5个字符,如eno16777736改为eno16。

 

1、 更改网卡配置文件名

 

mv  /etc/sysconfig/network-scripts/ifcfg-ens38 /etc/sysconfig/network-scripts/ifcfg-ens37

 

 

2、关闭“一致性网络设备命名法”

 cat /etc/sysconfig/grub

GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"

GRUB_DEFAULT=saved

GRUB_DISABLE_SUBMENU=true

GRUB_TERMINAL_OUTPUT="console"

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"

GRUB_DISABLE_RECOVERY="true"

[root@localhost ~]#

添加net.ifnames=0 biosdevname=0后

 

cat /etc/sysconfig/grub

GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"

GRUB_DEFAULT=saved

GRUB_DISABLE_SUBMENU=true

GRUB_TERMINAL_OUTPUT="console"

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap

net.ifnames=0 biosdevname=0 rhgb quiet"

GRUB_DISABLE_RECOVERY="true"

更新GRUB、内核配置

 

 grub2-mkconfig -o /boot/grub2/grub.cfg

Generating grub configuration file ...

Found linux image: /boot/vmlinuz-3.10.0-327.el7.x86_64

Found initrd image: /boot/initramfs-3.10.0-327.el7.x86_64.img

Found linux image: /boot/vmlinuz-0-rescue-f034e6e19df748b7a27fad77b06e3179

Found initrd image: /boot/initramfs-0-rescue-f034e6e19df748b7a27fad77b06e3179.img

done

3、添加设备规则配置文件

(1) host: sgeappdb01 192.168.59.137

节点192.168.59.137修改/etc/udev/rules.d/70-persistent-net.rules,没有该文件则新建文件

 

内容如下

 

cat /etc/udev/rules.d/70-persistent-net.rules

 

ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="?*00:0c:29:15:90:9d", NAME="ens33"

ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="?* 00:0c:29:15:90:a7", NAME="ens37"

ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="?* 00:50:56:27:bf:33", NAME="ens39"

 

注意MAC地址与NAME相匹配(可以用ip addr查看)

(2) host: sgeappdb02 192.168.59.138

cat /etc/udev/rules.d/70-persistent-net.rules

 

ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="?* 00:50:56:3a:67:f2", NAME="ens33"

ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="?* 00:50:56:32:1f:db", NAME="ens37"

ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="?* 00:50:56:27:8d:69", NAME="ens39"

 

4、重启

reboot

 

检查:

仍存在问题,临时用ip link set 命令补救。但需要知道的是, linux系统的配置只通过命令可立即生效但系统重启后失效,必须得修改配置文件才可使得系统重启后仍生效。


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论