虚拟机安装
1. linux安装
name=C81-5.0Gx-Dev
phyCPU=1
perCore=2
memSize=2048
diskSize=25
iface=br3
vncPort=5901
installISO="CentOS-8.1.1911-x86_64-dvd1.iso"
virt-install \
--name ${name} \
--vcpus sockets=${phyCPU},cores=${perCore},threads=1 --cpu host-model-only \
--memory ${memSize} \
--disk /home/KVM/${name}.qcow2,size=${diskSize},format=qcow2,bus=virtio,sparse=true \
--network bridge=${iface},model=virtio \
--cdrom /home/ISO/${installISO} \
--os-type=linux --os-variant=rhel8.0 \
--graphics vnc,listen=0.0.0.0,port=${vncPort} \
--noautoconsole
--extra-args='console=tty0 console=ttyS0,115200'
网卡以ethX命名方式的内核选项
biosdevname=0 net.ifnames=0
列出支持的操作系统类型
osinfo-query os
2. win10安装
name=Win10-5.0-Test-Dev
phyCPU=2
perCore=4
memSize=16384
diskSize=80
iface=br3
vncPort=5915
installISO="cn_windows_10_enterprise_ltsc_2019_x64_dvd_9c09ff24.iso"
virt-install \
--name ${name} \
--vcpus sockets=${phyCPU},cores=${perCore},threads=1 --cpu host-model-only \
--memory ${memSize} \
--disk /home/KVM/${name}.qcow2,size=${diskSize},format=qcow2,bus=virtio,sparse=true \
--network bridge=${iface},model=virtio \
--cdrom /home/ISO/${installISO} \
--cdrom /home/ISO/virtio-win-0.1.171.iso \
--os-type=windows --os-variant=win10 \
--graphics vnc,listen=0.0.0.0,port=${vncPort} \
--noautoconsole
# virtio 镜像驱动
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso
3. 虚拟机VNC端口
#端口信息,若禁用端口直接删除下面信息
<graphics type='vnc' port='5901' autoport='no' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
#开放端口
firewall-cmd --zone=public --add-port=5901/tcp --permanent && firewall-cmd --reload
firewall-cmd --zone=public --remove-port=5901/tcp --permanent && firewall-cmd --reload
4. 虚拟机删除
关机状态,删除所有配置文件、磁盘文件和快照文件,默认只删除配置文件
注意如果配置文件有光盘,会将光盘文件删除
virsh undefine <domain> --remove-all-storage --snapshots-metadata
5. 虚拟机克隆
virt-clone -o C81-5.0Gx-Dev -n C81-5.0G2-PTAC -f /home/KVM/C81-5.0G2-PTAC.qcow2
6. 虚拟机网卡
virsh domiflist Centos6.8
virsh attach-interface Centos6.8 --type bridge --source br3 --model virtio --persistent
virsh detach-interface Centos6.8 --type bridge --mac 52:54:10:f5:c5:6c --persistent
7. 创建虚拟网卡
cd /etc/libvirt/qemu/networks
vim ttbr0.xml
<network>
<name>ttbr0</name>
<bridge name='ttbr0' stp='on' delay='0'/>
</network>
virsh net-define ttbr0.xml #定义
virsh net-start ttbr0 #启动
virsh net-autostart ttbr0 #自启
virsh net-destroy ttbr0 #停止
virsh net-undefine ttbr0 #删除
8. 创建磁盘
qemu-img create -f qcow2 C81-Dev-Resource-Pool-FTP.qcow2 30G
选项
-o preallocation=off, metadata, falloc, full
off, metadata 稀疏磁盘格式; alloc策略,速度比full快
9. 磁盘空间压缩
开机:
cat /dev/zero >zero.fill; sync; sleep 1; sync; rm -f zero.fill
关机:
qemu-img convert -O qcow2 debian.qcow2 debian-new.qcow2
10. 磁盘空间扩容
qemu-img resize test01.qcow2 +2G
LVM
11. 时钟源
echo acpi_pm >/sys/devices/system/clocksource/clocksource0/current_clocksource
12. CPU核数
<cpu>
<topology sockets='1' cores='2' threads='1'/>
</cpu>
逻辑cpu:cpus = (sockets * cores * threads)
逻辑cpu必须等于
13. 快照
确保磁盘格式必须是QCOW2,RAW格式不支持快照
#创建
virsh snapshot-create test
virsh snapshot-create-as test test1_snap #创建快照时指定一个快照名,否则是随机数
#查看
virsh snapshot-list centos7_test1
#恢复
virsh snapshot-revert test 1378579737
#删除
virsh snapshot-delete test 1378579737
14. 禁止yum升级内核
在 /etc/yum.conf 的 [main] 后面添加
exclude=kernel*
exclude=centos-release*