相关信息
系统:Centos 7.6
准备工作
- 验证CPU是否支持虚拟化,查询结果中有vmx(Intel)或svm(AMD)字样,则说明支持虚拟化;
egrep '(vmx|svm)' /proc/cpuinfo
- 关闭SElinux;
setenforce 0 #临时关闭
vim /etc/sysconfig/selinux
SELinux=enforcing 修改为 SELinux=disabled #永久关闭(重启服务器生效)
- 系统是最小化安装,所以需要安装部分软件;
yum install epel-release net-tools vim unzip wget net-tools -y
- 安装KVM相关服务;
yum install qemu-kvm libvirt virt-install bridge-utils -y
- 验证安装结果,下图说明已经成功安装了;
lsmod | grep kvm
6. 启动服务,并且设置其开机自动启动,并检查服务是否正常启动;
systemctl start libvirtd
systemctl enable libvirtd
systemctl status libvirtd
- 配置网桥模式,先将 /etc/sysconfig/network-scripts/ ,目录下的网卡配置文件备份一份(根据实际情况配置,以下配置仅供参考);
vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.1.95
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.254
vim /etc/sysconfig/network-scripts/ifcfg-em1
DEVICE=em1
TYPE=Ethernet
ONBOOT=yes
BRIDGE=br0
NM_CONTROLLED=yes
重启网络服务,并查看网络连接:
systemctl restart network
brctl show
#如果配置成功,会有以下输出:
bridge name bridge id STP enabled interfaces
br0 8000.000c29adb531 no eno16777736 vnet1
virbr0 8000.fe5400ee5160 yes vnet0
#检查ip转发是否开启
cat /etc/sysctl.conf |grep ip_forward
net.ipv4.ip_forward = 1
#如果没有开启,则:
vim /etc/sysctl.conf
修改net.ipv4.ip_forward = 1
/sbin/sysctl -p
安装虚拟机
- 上传镜像到 /data/kvm-iso;
- 创建虚拟机硬盘;
qemu-img create -f qcow2 /data/kvm-data/Test1.img 5G #创建硬盘(此方法会直接占用硬盘空间)
qemu-img info /data/kvm-data/Test1.img #查看创建的硬盘信息
virt-install --name=Test3 --memory=2048 --vcpus=1 --disk path=/data/kvm-data/Test1.img,size=5,format=qcow2,bus=virtio --cdrom /data/kvm-iso/CentOS-7-x86_64-Minimal-1511.iso --network bridge=br0,model=virtio --vnc --vncport=5910 --vnclisten=0.0.0.0
#创建虚拟机
这里解释一下主要的几个参数含义:
--name 给虚拟机起个名字
--ram 分配给虚拟机的内存,单位MB
--vcpus 分配给虚拟机的cpu个数
--cdrom 指定安装文件的全路径
--disk 指定虚拟机img文件路径,如果虚拟机使用lvm分区,这里就指向到lvm的分区就行
size 虚拟机文件大小,单位GB
bus 虚拟机磁盘使用的总线类型,为了使虚拟机达到好的性能,这里使用virtio
cache 虚拟机磁盘的cache类型
--network bridge 指定桥接网卡
model 网卡模式,这里也是使用性能更好的virtio
- 打开防火墙5910端口,用于VNC连接;
firewall-cmd --zone=public --add-port=5910/tcp --permanent
firewall-cmd --reload
- 使用VNC连接该虚拟机,进行虚拟机操作系统的安装,直接到VNC官网上下载最新版的VNC Viewer即可;
- 安装完CentOS,系统要求重启;
virsh list --all #Test3为shutdown状态
virsh start Test3 #启动
其他
#挂载块设备安装虚拟机
virt-install --name JK-t --memory=32768 --vcpus=16 --os-type=linux --cdrom /root/CentOS-7-x86_64-Minimal-1511.iso -f /dev/dom0/vmlinux,bus=virtio --bridge=br1,model=virtio --vnc --vncport=5910 --vnclisten=0.0.0.0
一定要注意其中的-f /dev/dom0/vmlinux参数,这个是用来指定硬盘的
结语
记录一次kvm安装过程,知识的积累,源于点滴记录。