热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

#Centos7.4#Linux虚拟机KVM配置网卡【Requestedoperationisnotvalid:network'br0'isnotactive】

案例:【2018121810:25事故描述】jump宿主机服务器172.16.20.16死机,联系机房管理员重启,拨通机房vpn后ssh连接不上【2018121911:25现场问题

案例:

【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 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
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 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
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 mtu 1500
inet6 fe80::226:6cff:fef5:a514 prefixlen 64 scopeid 0x20
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 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
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配置文件###

1、virsh edit centos73 (更改前要将virsh shutdown centos73 ) 找到“memory”和“vcpu”标签,将 >centos73> >2220a6d1-a36a-4fbb-8523-e078b3dfe795> ='KiB'>2097152> ='KiB'>2097152> ='static'>1> 改为: >centos73> >2220a6d1-a36a-4fbb-8523-e078b3dfe795> ='KiB'>3145728> ='KiB'>3145728> ='static'>2> virsh define /etc/libvirt/qemu/centos73.xml 重定义使配置生效 重启虚拟机 virsh start centos73 --console 查看原配置信息 [root@localhost kvm]# virsh dominfo centos734 Id: - Name: centos73 UUID: 2220a6d1-a36a-4fbb-8523-e078b3dfe795 OS Type: hvm State: shut off CPU(s): 1 Max memory: 2097152 KiB Used memory: 2097152 KiB Persistent: yes Autostart: disable Managed save: no Security model: none Security DOI: 0 调整后信息: [root@localhost kvm]# virsh dominfo centos73 Id: - Name: centos73 UUID: 2220a6d1-a36a-4fbb-8523-e078b3dfe795 OS Type: hvm State: shut off CPU(s): 2 Max memory: 3145728 KiB Used memory: 3145728 KiB Persistent: yes Autostart: disable Managed save: no Security model: none Security DOI: 0

参考连接:

http://blog.sina.com.cn/s/blog_625fcb0b0102wayc.html
http://blog.51cto.com/13570993/2061254

https://blog.csdn.net/hnhuangyiyang/article/details/50902223

 

推荐阅读
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • 本文介绍了Java后台Jsonp处理方法及其应用场景。首先解释了Jsonp是一个非官方的协议,它允许在服务器端通过Script tags返回至客户端,并通过javascript callback的形式实现跨域访问。然后介绍了JSON系统开发方法,它是一种面向数据结构的分析和设计方法,以活动为中心,将一连串的活动顺序组合成一个完整的工作进程。接着给出了一个客户端示例代码,使用了jQuery的ajax方法请求一个Jsonp数据。 ... [详细]
author-avatar
克乄浪木守
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有