#Centos7.4#Linux虚拟机KVM配置网卡【Requested operation is not valid: network 'br0' is not active】
案例:
【20181218 10:25 事故描述】
jump宿主机服务器172.16.20.16死机,联系机房管理员重启,拨通机房vpn后ssh连接不上
【20181219 11:25 现场问题排查】
网卡显示ip是172.16.20.161,没有kvm桥接网卡br0,
启动kvm虚拟机报错:Requested operation is not valid: network 'br0' is not active
#ifconfig
enp1s0f0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.20.161 netmask 255.255.255.0 broadcast 172.16.20.255
inet6 fe80::226:6cff:fef5:a514 prefixlen 64 scopeid 0x20<link>
ether 00:26:6c:f5:a5:14 txqueuelen 0 (Ethernet)
RX packets 31936 bytes 1780910 (1.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2511 bytes 364044 (355.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
【解决问题】
1、##kvm网桥网卡br0配置##
brctl addbr br0 #创建网桥
brctl addif br0 eth0 #把br0和eth0网卡绑定
brctl stp br0 on #有关stp协议的
2、在/etc/sysconfig/network-scripts/目录cp ifcfg-enp1s0f0 ifcfg-br0
3、修改配置网卡信息 ifcfg-enp1s0f0 和ifcfg-br0信息
【ifcfg-enp1s0f0】
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp1s0f0
UUID=b4a34022-21d9-4f88-80c3-f4a625c16d5d
DEVICE=enp1s0f0
ONBOOT=yes
BRIDGE=br0
【ifcfg-br0】
TYPE=Bridge
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=172.16.20.16
NETMASK=255.255.255.0
GATEWAY=172.16.20.1
DNS1=114.114.114.114
4、
5、
6、#virsh start jumpserver 启动kvm虚拟机jumpserver
【修改后的宿主机配置】
#ifconfig
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.20.16 netmask 255.255.255.0 broadcast 172.16.20.255
inet6 fe80::226:6cff:fef5:a514 prefixlen 64 scopeid 0x20<link>
ether 00:26:6c:f5:a5:14 txqueuelen 0 (Ethernet)
RX packets 31936 bytes 1780910 (1.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2511 bytes 364044 (355.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp1s0f0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::226:6cff:fef5:a514 prefixlen 64 scopeid 0x20<link>
ether 00:26:6c:f5:a5:14 txqueuelen 1000 (Ethernet)
RX packets 9445502 bytes 584441758 (557.3 MiB)
RX errors 0 dropped 94 overruns 0 frame 0
TX packets 137325 bytes 32258671 (30.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0xfafe0000-faffffff
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 7217 bytes 410182 (400.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7217 bytes 410182 (400.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
操作票
1、virsh net-list --all
##kvm网桥网卡配置##
brctl addbr br0 #创建网桥
brctl addif br0 eth0 #把br0和eth0网卡绑定
brctl stp br0 on #有关stp协议的
cp ifcfg-eth0 ifcfg-br0
【修改前ifcfg-eth0】
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=b4a34022-21d9-4f88-80c3-f4a625c16d5d
DEVICE=eth0
ONBOOT=yes
IPADDR=172.16.20.16
NETMASK=255.255.255.0
GATEWAY=172.16.20.1
DNS1=114.114.114.114
修改ifcfg-eth0文件
BOOTRPOTO=none
追加 BRIDGE=br0
###
【修改后ifcfg-br0和ifcfg-eth0】
[root@BD-PRD-Docker network-scripts]# cat ifcfg-br0
TYPE=Bridge
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=172.16.20.16
NETMASK=255.255.255.0
GATEWAY=172.16.20.1
DNS1=114.114.114.114
[root@BD-PRD-Docker network-scripts]# cat ifcfg-enp1s0f0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp1s0f0
UUID=b4a34022-21d9-4f88-80c3-f4a625c16d5d
DEVICE=enp1s0f0
ONBOOT=yes
#IPADDR=172.16.20.16
#NETMASK=255.255.255.0
#GATEWAY=172.16.20.1
#DNS1=114.114.114.114
BRIDGE=br0
service network restart
【可能用到的命令】
brctl addbr br0 #创建网桥
brctl addif br0 eth0 #把br0和eth0网卡绑定
brctl stp br0 on #有关stp协议的
brctl delif br0 eth0 #解除绑定
ifconfig br0 down #关闭br0,不关闭删不掉
brctl delbr br0 #删除br0
关闭NetworkManager
#service NetworkManager stop
#chkconfig NetworkManager off
#kvm命令
#virsh 进入kvm控制台
##list --all显示所有kvm虚拟机
##console id或者name 进入kvm机子
virsh net-list --all显示所有网络接口,default接口是默认的nat转发
virsh net-destroy default 关闭default网络接口
virsh net-undefine default 删除default网络接口
service libvirtd restart 重启kvm服务
virsh shutdown jumpserver 关闭kvm虚拟机
virsh start jumpserver 启动kvm虚拟机
【修改kvm虚拟机的资源大小cpu、内存、硬盘】
# virsh list --all
Id Name State
-------------------------------------------------
- bbotte shut off
# virsh setvcpus bbotte --maximum 4 --config
# virsh setmaxmem bbotte 1048576 --config
# virsh dominfo bbotte
Id: 2
Name: bbotte
UUID: bd22f444-ee7f-7f00-3d1b-1bb0d0857e43
OS Type: hvm
State: running
CPU(s): 4
CPU time: 152.3s
Max memory: 1048576 KiB
Used memory: 524288 KiB
Persistent: yes
Autostart: disable
Managed save: no
Security model: none
Security DOI: 0
####修改xml配置文件###
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· [翻译] 为什么 Tracebit 用 C# 开发
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· 刚刚!百度搜索“换脑”引爆AI圈,正式接入DeepSeek R1满血版