環境:CentOS 7.6圖形界面
1、首先將防火牆關閉,否則后面使用VNC Viewer無法連接
1 systemctl stop firewalld.service #關閉防火牆
2 systemctl disable firewalld.service #關閉開機自啟
2、編寫xml配置文件(以centos7-0.xml為例)
1 <domain type='kvm'> #使用kvm創建
2 <name>centos7-0</name> #虛擬機名稱
3 <memory unit='KiB'>2048576</memory> #虛擬機內存大小
4 <currentMemory unit='KiB'>2048576</currentMemory> #虛擬機在開機時分配的內存大小,最好同memory一致
5 <vcpu placement='static'>2</vcpu> #cpu個數
6 <os>
7 <type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>
8 <boot dev='cdrom'/> #啟動方式 cdrom為從光盤啟動(ISO鏡像),后面會再次修改啟動方式
9 </os>
10 <features>
11 <acpi/>
12 <apic/>
13 </features>
14 <cpu mode='custom' match='exact'>
15 <model fallback='allow'>Nehalem</model>
16 </cpu>
17 <clock offset='localtime'/>
18 <on_poweroff>destroy</on_poweroff>
19 <on_reboot>restart</on_reboot>
20 <on_crash>restart</on_crash>
21 <devices>
22 <emulator>/usr/libexec/qemu-kvm</emulator>
23 <disk type='file' device='disk'>
24 <driver name='qemu' type='qcow2'/>
25 <source file='/opt/image/centos7-0.qcow2'/> #虛擬硬盤
26 <target dev='hda' bus='ide'/>
27 </disk>
28 <disk type='file' device='cdrom'>
29 <source file='/mnt/ISO/CentOS-7-x86_64-DVD-1810.iso'/> #ISO鏡像路徑
30 <target dev='hdb' bus='ide'/>
31 </disk>
32 <interface type='network'> #網絡連接模式為nat方式 使用默認的網絡
33 <source network='default' bridge='virBR0'/> //此處要和自己虛擬交換機的配置對應 配置文件為/etc/libvirt/qemu/networks/ 目錄下的xml文件
34 </interface>
35 <input type='tablet' bus='usb'/>
36 <input type='mouse' bus='ps2'/>
37 <input type='keyboard' bus='ps2'/>
38 <graphics type='vnc' port='5905' autopart='no' listen='0.0.0.0' keymap='en-us'/> #5905為端口號
39 </devices>
40 </domain>
關於虛擬硬盤的創建
qemu-img create -f qcow2 /opt/image/centos7-0.qcow2 20G #此處的路徑與上方xml文件中的硬盤路徑一致
3、創建虛擬機
virsh define centos7-0.xml #定義虛擬機
virsh start centos7-0 #啟動虛擬機
提示virsh命令無法執行的話,重新安裝一下libvirt
查看是否啟動

4、連接VNC Viewer -> 宿主機IP:端口號
5、連接以后進入安裝系統界面,安裝完成以后,要將虛擬機的開機方式改為從硬盤啟動(否則將一直重復系統安裝引導)
virsh shutdown centos7-0 #將虛擬機關機
// 關機后先查看一下虛擬機的狀態,如果還是運行態,則進行強制關機
// virsh destroy centos7-0
virsh undefine centos7-0 #取消定義
然后重新編輯xml文件
重新創建虛擬機
virsh define centos7-0.xml
virsh start centos7-0
至此完成