openstack 虚拟机网卡被重名为cirename0
虚拟机网卡被重名为cirename0
在虚拟机挂载多网卡情况下,你在虚拟机上卸载网卡后,再创建新的port挂给虚拟机使用,如果虚拟机不经过重启的话,是不会有任何问题的。但是,如果虚拟机重启了,你可能会发现没有了原来的eth0或者eth1,而多了一个 cirename0 的网卡。这就是cloudinit搞的鬼,在cloudinit的local阶段,好像会记录之前的mac地址,如果发现不一致,就会触发rename_interface。当然你在创建新的port再挂给虚拟机使用时,上去把新的网卡配置文件配置好,比如HWADDR要配置对应的mac地址,可以得到解决。
问题现象
虚拟机实际网卡的对应MAC地址:
| eth0 mac地址 | fa:16:3e:15:84:55 |
|---|---|
| eth1 mac地址 | fa:16:3e:62:a6:a4 |
$ ip add
2: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether fa:16:3e:15:84:55 brd ff:ff:ff:ff:ff:ff
inet 10.100.43.184/24 brd 10.0.43.255 scope global dynamic eth1
valid_lft 86266sec preferred_lft 86266sec
inet6 fe80::f816:3eff:fe15:8455/64 scope link
valid_lft forever preferred_lft forever
3: cirename0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether fa:16:3e:62:a6:a4 brd ff:ff:ff:ff:ff:ff
# 根据以上ip add信息,很明显eth0名字是变了,变为cirename0了。且eth0(cirename0)和eth1的MAC地址也不对应。
解决问题
1、修改udevs文件, 把网卡对应的MAC地址对应上。
$ cat /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="fa:16:3e:62:a6:a4", NAME="eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="fa:16:3e:15:84:55", NAME="eth0"
2、修改eth0和eth1配置文件,这里要把获取IP方式要写成静态和网卡对应MAC地址也要写上。因为后面我们会把cloud-init关掉。
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Created by cloud-init on instance boot automatically, do not edit.
BOOTPROTO=none
IPADDR=10.100.43.184
PREFIX=24
GATEWAY=10.100.43.1
DEVICE=eth0
HWADDR=fa:16:3e:15:84:55 # 一定要配置上MAC
MTU=1500
ONBOOT=yes
STARTMODE=auto
TYPE=Ethernet
USERCTL=no
DEFROUTE=no
$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
# Created by cloud-init on instance boot automatically, do not edit.
BOOTPROTO=none
IPADDR=192.168.100.120
PREFIX=24
GATEWAY=192.168.100.1
DEVICE=eth1
HWADDR=fa:16:3e:62:a6:a4 # 一定要配置上MAC
MTU=1500
ONBOOT=yes
STARTMODE=auto
TYPE=Ethernet
USERCTL=no
DEFROUTE=yes
3、关闭cloud-init相关服务和重新reset网卡名,然后reboot主机
$ systemctl disable cloud-init.service cloud-init-local.service cloud-final.service cloud-config.service
# 本环境遇到的是eth0网卡名变为cirename0,其它环境具体问题具体修改网卡。
$ ip link set cirename0 name eth0
$ reboot
参考文献
openstack 虚拟机网卡被重名为cirename0的更多相关文章
- OpenStack虚拟机快照和增量备份实现
1 快照的概念一般对快照的理解就是能够将系统还原到某个瞬间,这就是快照的作用.快照针对要保存的数据分为内存快照和磁盘快照,内存快照就是保存当前内存的数据,磁盘快照就是保存硬盘的数据.快照针对保存方式又 ...
- 034-openstack中虚拟机启动后主机名设置问题
openstack中虚拟机启动后主机名设置问题,在centos7中设置hostname后怎么都是原来的hostname,根本无效. 方法一: 在centos7中除了修改hosts文件和network文 ...
- OpenStack虚拟机网络问题
当发现你的OpenStack虚拟机网络有问题,不妨先试一下这16个步骤 1. Security Group全部打开,这是最基本的,但是很多人容易忘记 其实遇到过无数这种场景了,Debug了半天网络 ...
- 当Azure里的虚拟机网卡被禁用
当Azure里的虚拟机网卡被禁用了之后…… 这样的想法来自于一个假设,如果网卡被禁用之后,用户该如何处理,Azure又该如何处理,对于设置在虚拟机中的禁用网卡选项是否还有存在的意义?通常情况下,点选了 ...
- vmware克隆Centos6.7虚拟机网卡无法启动问题
快速处理办法: cat /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i '/UUID/d' /etc/sysconfig/network-script ...
- OpenStack虚拟机冷迁移与热迁移
一.虚拟机迁移分析 openstacvk虚拟机迁移分为冷迁移和热迁移两种方式. 1.1冷迁移: 冷迁移(cold migration),也叫静态迁移.关闭电源的虚拟机进行迁移.通过冷迁移,可以选择将关 ...
- vmware克隆Centos6.4虚拟机网卡无法启动问题
vmware克隆Centos6.4虚拟机网卡无法启动问题 2014-02-26 16:44:54 标签:老男孩培训 vmware克隆问题 网卡无法启动 ...
- (转)vmware克隆Centos6.4虚拟机网卡无法启动问题
vmware克隆Centos6.4虚拟机网卡无法启动问题 原文:http://blog.51cto.com/oldboy/1363853 快速处理办法: cat /etc/sysconfig/netw ...
- VirtualBox 安装CentOS虚拟机网卡配置
VirtualBox虚拟机网络设置(NAT+HOST-ONLY) 目标: 虚拟机可以像宿主机一样访问互联网和其他主机 宿主机和虚拟机可以相互访问 使用NAT实现目标一 使用Host-Only实现目标二 ...
随机推荐
- muduo源码分析之muduo简单运用
今天不先实现muduo项目,我们先来看下muduo库的基本使用,只有了解了如何用,才能在写代码的时候知道自己写的找个函数是干嘛的,实际上是怎么使用的这个函数.首先说简单点,就是定义一个Server,设 ...
- Django基础之Form和ModelForm组件
https://www.cnblogs.com/clschao/articles/10486468.html 1.创建django项目 2.创建py文件 3.导入form from django im ...
- VsCode[Git] | 配置Gitee和Github | 不使用全局用户名和邮箱
(VsCode[Git] | 配置Gitee和Github | 不使用全局用户名和邮箱 | 2021-04-11) 目录 一 .安装Git / VsCode配置Git / Win10系统 二.Git配 ...
- 2.Docker安装
CentOS Docker 安装 前提条件 目前,CentOS 仅发行版本中的内核支持 Docker.Docker 运行在CentOS 7 (64-bit)上, 要求系统为64位.Linux系统内核版 ...
- C程序设计(谭浩强)第五版课后题答案 第一章
大家好,这篇文章分享了C程序设计(谭浩强)第五版课后题答案,所有程序已经测试能够正常运行,如果小伙伴发现有错误的的地方,欢迎留言告诉我,我会及时改正!感谢大家的观看!!! 1.什么是程序?什么是程序设 ...
- 535. Encode and Decode TinyURL - LeetCode
Question 535. Encode and Decode TinyURL Solution 题目大意:实现长链接加密成短链接,短链接解密成长链接 思路:加密成短链接+key,将长链接按key保存 ...
- JAVA - 如何判断一个类是无用的类
JAVA - 如何判断一个类是无用的类 方法区主要回收的是无用的类,那么如何判断一个类是无用的类的呢? 判定一个常量是否是"废弃常量"比较简单,而要判定一个类是否是"无用 ...
- 利用shell脚本自动化备份数据库与手动备份还原数据库操作
1.在linux操作系统上手动备份数据库 mysqldump -h 服务器IP地址 -u root -p数据库密码 --databases 所要备份的数据库名称 > /路径/数据库.sql(自定 ...
- mybatis-plus对空字段 时间进行填充
package com.tanhua.sso.handler; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; imp ...
- ThreadLocal模板
public class UserIdThreadLocal { private static final ThreadLocal<Long>LOCAL=new ThreadLocal&l ...