一、准备工作
在创建虚拟机之前,需要先完成以下准备工作:
1、安装kvm和相关的软件包:
yum install qemu-kvm libvirt virt-install bridge-utils
2、查看计算机是否支持kvm:
egrep -c '(vmx|svm)' /proc/cpuinfo
如果输出非0,则说明系统支持kvm。
3、创建网络桥接,用于虚拟机的网络通信:
vi /etc/sysconfig/network-scripts/ifcfg-br0
在文件中添加以下内容:
DEVICE=br0
TYPE=Bridge
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
然后重启网络服务:
systemctl restart network
二、创建虚拟机
接下来,我们就可以开始创建虚拟机了。
1、创建磁盘
首先,我们需要先创建虚拟机的磁盘。
qemu-img create -f qcow2 /var/lib/libvirt/images/vm1.qcow2 10G
2、编写xml文件
接着,我们需要编写虚拟机的xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<domain type="kvm">
<name>vm1</name>
<memory unit="KiB">1048576</memory>
<currentMemory unit="KiB">1048576</currentMemory>
<vcpu placement="static" current="1">1</vcpu>
<os>
<type arch="x86_64" machine="pc-i440fx-2.9">hvm</type>
<boot dev="hd"/>
</os>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/var/lib/libvirt/images/vm1.qcow2'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
<interface type='bridge'>
<mac address='52:54:00:00:00:01'/>
<source bridge='br0'/>
<target dev='vnet0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<console type='pty'>
<target type='serial' port='0'/>
</console>
</devices>
</domain>
可以让virsh自动创建xml文件,命令如下:
virt-install --name vm1 --memory 1024 --vcpus 1 --cdrom /data/CentOS-8.3.2011-x86_64-dvd1.iso --disk size=10 --os-variant=centos8.2 --network bridge=br0 --graphics none --console pty,target_type=serial
3、创建虚拟机
创建虚拟机的命令如下:
virsh create vm1.xml
三、管理虚拟机
虚拟机创建完后,可以通过以下命令对其进行管理。
1、启动虚拟机
启动虚拟机的命令如下:
virsh start vm1
2、关闭虚拟机
关闭虚拟机的命令如下:
virsh shutdown vm1
3、删除虚拟机
删除虚拟机的命令如下:
virsh undefine vm1
4、虚拟机迁移
虚拟机迁移可以使用命令virsh migrate。
迁移虚拟机到另外一台kvm主机:
virsh migrate --live --copy-storage-all --undefinesource --target-uri qemu+ssh://username@192.168.x.x/system vm1
四、小结
本文主要介绍了如何使用kvm创建虚拟机,并通过几个方面对kvm进行了详细阐述。通过此文,相信大家对于kvm创建虚拟机已经有了更深的认识和理解。