欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Centos7安装部署KVM虚拟机

程序员文章站 2022-05-10 10:45:55
...

简介

虚拟化分为两种类型:1)Hypervisor直接运行在硬件上(kvm) 2)ypervisor运行在OS上 (vmware)
KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。
使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等

前期准备

配置CPU
设置虚拟机的处理器个数(至少为两个),开启处理器中的虚拟化 Intel VT-x/EPT或AMD-V/RVI(V)选项
启动虚拟机并查看机器是否支持KVM

#当出现vmx或者svm的字样即说明CPU支持KVM
[aaa@qq.com ~]# egrep '(vmx|svm)' /proc/cpuinfo

配置网卡
宿主机需要配置一个使用桥接模式的网卡,因此在虚拟机上部署了两块网卡,分别为NAT模式和桥接模式
获取镜像
从官网上下载Centos6的安装镜像

安装部署KVM

#安装kvm及其依赖
[aaa@qq.com ~]# yum install qemu-kvm libvirt virt-install bridge-utils -y
#查看安装情况
[aaa@qq.com ~]# lsmod | grep kvm
kvm_intel             188688  0 
kvm                   636969  1 kvm_intel
irqbypass              13503  1 kvm
#启动服务
[aaa@qq.com ~]# systemctl start libvirtd

配置网络信息

设置桥接模式的网卡桥接到br0上

[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens37
BOTPROTO=none
DEVICE=ens37
NM_CONTROLLED=no
ONBOOT=yes
BRIDGE=br0

配置br0网卡信息

[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-br0 
BOOTPROTO=static
DEVICE=br0
TYPE=Bridge
NM_CONTROLLED=no
IPADDR=192.168.1.109 #设置IP地址
GATEWAY=192.168.1.1 #设置网关
DNS1=4.2.2.2 #设置DNS服务器
DNS2=8.8.8.8
#重启网络
[aaa@qq.com ~]# systemctl restart network

命令行部署KVM虚拟机

#创建KVM虚拟机目录
#kvm文件夹用于放置虚拟机文件
#iso文件夹用于存放KVM虚拟机的安装镜像
[aaa@qq.com ~]# mkdir -p /mybak/{iso,kvm}
#安装KVM虚拟机
[aaa@qq.com ~]# virt-install --name=mycentos --memory=512,maxmemory=1024 --vcpus=1,maxvcpus=1 --os-type=linux --os-variant=rhel6 --location=/mykvm/iso/CentOS-6.10-x86_64-bin-DVD1.iso --disk path=/mykvm/kvm/mycentos.img,size=10 --bridge=br0 --graphics=none --console=pty,target_type=serial  --extra-args="console=tty0 console=ttyS0"
参数说明
--name:虚拟机的名称
--memory:分配给虚拟机的内存资源大小 maxmemory:最大内存资源大小
--vcpus:分配给虚拟机的CPU核心数量 maxvcpus:最大CPU核心数量
--os-type:虚拟机安装的操作系统类型
--os-variant:系统的发行版本
--location:镜像文件所在的路径
--disk path:虚拟硬盘所存放的路径及名称,size:硬盘的可用大小,单位是G
--bridge:使用的桥接网卡
--graphics:是否开启图形
--console:定义终端的属性,target_type:是定义终端的类型
--extra-args:定义终端额外的参数

根据引导指示进行虚拟机的安装和配置
常用命令

#查看虚拟机状态
[aaa@qq.com ~]# virsh list --all
#开启虚拟机
[aaa@qq.com ~]# virsh start mycentos
#关闭虚拟机
[aaa@qq.com ~]# virsh shutdown mycentos
#进入虚拟机
[aaa@qq.com ~]# virsh console mycentos
#退出虚拟机
ctrl + ]

可视化部署KVM虚拟机

安装virt-manager

[aaa@qq.com ~]# yum install virt-manager -y
#启动virt-manager
[aaa@qq.com ~]# virt-manager

Centos7安装部署KVM虚拟机
选择创建新的虚拟机
Centos7安装部署KVM虚拟机
选择安装虚拟机的方式及iso位置
Centos7安装部署KVM虚拟机
Centos7安装部署KVM虚拟机
基础配置
Centos7安装部署KVM虚拟机
Centos7安装部署KVM虚拟机
Centos7安装部署KVM虚拟机
开始安装并按照提示进行虚拟机的配置和安装

配置KVM虚拟机网络

#配置eth0网卡信息
[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
HWADDR=52:54:00:41:ED:6B
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR="192.168.1.110"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS1="192.168.1.1"
#重启网络
[aaa@qq.com ~]# service network restart

测试验证

#连接宿主机
[aaa@qq.com ~]# ping 192.168.1.109 -c 2
PING 192.168.1.109 (192.168.1.109) 56(84) bytes of data.
64 bytes from 192.168.1.109: icmp_seq=1 ttl=64 time=0.202 ms
64 bytes from 192.168.1.109: icmp_seq=2 ttl=64 time=0.706 ms

--- 192.168.1.109 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1019ms
rtt min/avg/max/mdev = 0.202/0.454/0.706/0.252 ms
#连接百度
[aaa@qq.com ~]# ping www.baidu.com -c 2
PING www.a.shifen.com (182.61.200.6) 56(84) bytes of data.
64 bytes from 182.61.200.6: icmp_seq=1 ttl=50 time=55.9 ms
64 bytes from 182.61.200.6: icmp_seq=2 ttl=50 time=52.2 ms

--- www.a.shifen.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1060ms
rtt min/avg/max/mdev = 52.293/54.102/55.912/1.824 ms
#自此网络配置成功

自此KVM虚拟机部署成功