CentOS 7中搭建KVM虚拟化并使用桥接网络
一、kvm
1、查cpu是否支持VT
egrep '(vmx|svm)' --color=always /proc/cpuinfo
2、检查内核模块是否加载
lsmod | grep kvm
3、查看Selinux状态
sestatus
如果是启用状态
# vi /etc/sysconfig/selinux
SELINUX=disabled
reboot
4、安装 KVM(在centos7里面有些软件包已经没有了)
yum install -y qemu-kvm qemu-kvm-tools virt-manager virt-install libvirt
注:
qemu-kvm:虚拟化软件,虚拟网络和硬盘等 用户态
libvirt:虚拟化工具统一接口(libvirt API,libvirt daemon,用户态工具)
virsh、virt-manager、virt-viewer、virt-install 、other-tools是libvirt用户态的工具
二、桥接(eth0网卡是代称,我实际弄机器时是enp1s0)
服务器上弄kvm,装虚拟机什么的,需要弄桥接,所以
需要用到brctl这个命令、centos7上默认已经有了,
前面他们让我弄的时候,只是给了我一个文本,ifcfg-br0里面的内容,没有说要用brctl这个命令,我搞了好久都没搞定
1、
brctl addbr br0 #创建网桥
brctl addif br0 eth0 #把br0和eth0网卡绑定
brctl stp br0 on #有关stp协议的
2、在/etc/sysconfig/network-scripts/创建 ifcfg-br0
内容如下:
DEVICE=br0
TYPE=Bridge
BOOTRPOTO=static
IPADDR=192.168.1.165
NETMASK=255.255.255.0
DNS1=8.8.8.8
DNS2=8.8.4.4
DNS3=114.114.114.114
ONBOOT=yes
STP=no
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME="Bridge br0"
UUID=d2d68553-f97e-7549-7a26-b34a26f29318
修改ifcfg-eth0文件
BOOTRPOTO=none
追加 BRIDGE=br0
完整的如下所示:注释部分是没弄br0前弄得
都弄好后service network restart
正常情况下就好了
三、使用KVM创建虚拟机
1、使用qemu-img命令创建硬盘
qemu-img create -f raw /vdir/c1.raw 10G //创建一个10G的硬盘,名称为c1.raw
2、使用virt-install创建名称为c1(自定义)的虚拟机,此前需将centos7的镜像放置虚拟机中。
virt-install --name c1 \ //虚拟机名称
--virt-type kvm \ //类型
--ram 512 \ //内存大小
--cdrom=/iso/CentOS-7-x86_64-Minimal-1810.iso \ //镜像路径
--disk path=/vdir/c1.raw \ //磁盘路径
--network bridge=br0 \ //使用桥接网卡
--graphics vnc,listen=0.0.0.0 \ //使用VNC连接
--noautoconsole
3、关闭防火墙和安全功能,使用TightVNC Viewer工具连接主机192.168.1.165
systemctl stop firewalld.service setenforce 0 //关闭防火墙和安全功能
使用TightVNC Viewer 连接服务器
安装步骤和平时安装操作系统的方法一样,安装完成后重启,TightVNC Viewer便断掉,在linux中可查看到虚拟机c1的状态是关闭的
virsh list --all
启动虚拟机
virsh start c1
再用TightVNC Viewer进行连接,便可以使用账号密码进行登录
下面列出常用命令:
查看所有虚拟机列表级状态:
virsh list --all
查看运行虚拟机列表:
virsh list
启动虚拟机系统:
virsh start C1
关闭虚拟机系统:
virsh shutdown C1
重启虚拟机:
virsh reboot C1
强行关闭某虚拟机:
virsh destroy C1
标记虚拟机为自动开始:
virsh autostart C1
关闭虚拟机为自动开始:
virsh autostart --disable C1
连接终端虚拟机:
virsh console C1
挂起虚拟机:
virsh suspend C1
恢复虚拟机:
virsh resume C1
编辑虚拟机配置文件:
virsh edit c1
导出(备份)虚拟机XML配置文件:
virsh dumpxml c1 > /root/c1_dump_xml
四、删除一个虚拟机:
1:关闭该虚拟机:virsh shutdown c1
2:如果虚拟机关闭失败,可以强制关机:virsh destroy c1
3:Undefine 虚拟机配置:virsh undefine c1
4:删除虚拟机磁盘文件:
rm -rf /vdir/c1.raw
5:查看虚拟机信息:virsh dominfo centos7