前言
本篇是记录通过命令行创建一个虚拟机的测试环境
创建过程
下载ISO镜像
wget https://mirrors.tuna.tsinghua.edu.cn/centos/7.7.1908/isos/x86_64/CentOS-7-x86_64-DVD-1908.iso
安装虚拟化相关的软件
yum install virt-install libvirt qemu-kvm
配置桥接网络
yum install bridge-utils
修改配置文件,把onboot改错no,也就是开机不启动
/etc/sysconfig/network-scripts/ifcfg-ens33
ONBOOT="no"
修改/etc/rc.local
ifconfig ens33 down
ifconfig ens33 0.0.0.0
brctl addbr br0
brctl addif br0 ens33
ifconfig br0 192.168.0.101/24 up
brctl stp br0 off
route add default gw 192.168.0.1 br0
chmod +x /etc/rc.d/rc.local
还原
ifconfig ens33 down
ifconfig br0 down
brctl delif br0 ens33
brctl delbr br0
ifconfig ens33 192.168.0.101/24 up
route add default gw 192.168.0.1 ens33
创建磁盘
qemu-img create -f qcow2 ./node1.qcow2 100G
创建虚拟机
virt-install --name=ubuntu16 --vcpus=16 --ram=8192 --disk path=node1.qcow2,format=qcow2,bus=virtio --network bridge=br0 --cdrom /home/CentOS-7-x86_64-DVD-1908.iso --graphics vnc,listen=0.0.0.0,port=5900 --force --autostart
上面为做的网桥模式,如果使用默认nat模式
virt-install --name=ubuntu16 --vcpus=16 --ram=8192 --disk path=node1.qcow2,format=qcow2,bus=virtio --network network=default --cdrom /home/CentOS-7-x86_64-DVD-1908.iso --graphics vnc,listen=0.0.0.0,port=5900 --force --autostart
克隆虚拟机
virt-clone -o centos01 -n centos02 -f ./centos02.qcow2
-o指定源虚拟机名称
-n指定新虚拟机名称
-f指定存储新虚拟机的文件路径
启动虚拟机
[root@lab101 kvm1]# virsh start centos02
Domain centos02 started
进入虚拟机
[root@lab101 kvm1]# virsh console centos02
默认会卡住的
修改内核相关的配置文件
[root@lab201 ~]# cat /etc/default/grub
GRUB_CMDLINE_LINUX="rhgb quiet console=ttyS0,115200"
然后重新生成grub,然后重启后就可以console控制了
console退出是按
ctrl+]
也可以导入
virt-install --name=longsong-base --vcpus=4 --ram=8192 --disk path=loosong-base.qcow2,format=qcow2,bus=virtio --network network=default --graphics vnc,listen=0.0.0.0,port=5908 --force --import --autostart
网卡替换
删除网卡
[root@lab101 ~]# virsh detach-interface centos01 bridge 52:54:00:bf:52:5b --config
Interface detached successfully
重新添加网卡
[root@lab101 ~]# virsh attach-interface --domain centos01 --type bridge --source br1 --config
Interface attached successfully
虚拟机IP查询
通过virsh命令查询虚拟机的mac地址
[root@node83 ~]# virsh dumpxml longsong-zp|grep mac
<partition>/machine</partition>
<type arch='x86' machine='x86'>hvm</type>
<mac address='52:54:00:d0:77:53'/>
通过arp查询mac对应的ip地址
[root@node83 ~]# arp -a |grep 52:54:00:d0:77:53
? (192.168.122.100) at 52:54:00:d0:77:53 [ether] on virbr0
添加盘
[root@lab233 bigdisk]# qemu-img create -f qcow2 ./zp1-disk1.qcow2 100G
或者
[root@lab233 bigdisk]#dd if=/dev/zero of=zp1-disk1.qcow2 bs=1M seek=102400 count=0
[root@lab233 bigdisk]# virsh attach-disk --config zp1 /bigdisk/zp1-disk1.qcow2 vdb
Disk attached successfully
完成了磁盘的添加
ISO相关操作
添加
[root@lab101 kvm]# virsh attach-disk centos7.6-1 /home/CentOS-7-x86_64-DVD-1810.iso vdm
Disk attached successfully
查询
[root@lab101 kvm]# virsh domblklist centos7.6-1
Target Source
------------------------------------------------
vda /kvm/centos7.6-1.qcow2
vdm /home/CentOS-7-x86_64-DVD-1810.iso
hda -
[root@lab101 kvm]# virsh detach-disk centos7.6-1 vdm
Disk detached successfully
win10加载iso
[root@lab101 kvmhost]# virt-install --name=win10 --vcpus=10 --ram=24576 --disk path=./node1.qcow2,format=qcow2,bus=virtio --network bridge=brq847bb79a-3e --disk path=/kvmhost/cn_windows_10_business_editions_version_1903_x64_dvd_e001dd2c.iso,device=cdrom --accelerate -c /kvmhost/virtio-win-0.1.240.iso --graphics vnc,listen=0.0.0.0,port=5900 --force --autostart
快照相关
创建快照
[root@lab101 kvm]# virsh snapshot-create-as centos7.6-small --name origin --description "yuanshianzhuang"
Domain snapshot origin created
查询快照
[root@lab101 kvm]# virsh snapshot-list centos7.6-small
Name Creation Time State
------------------------------------------------------------
origin 2021-05-14 12:10:14 +0800 shutoff
还原快照
[root@lab101 ~]# virsh snapshot-list centos7.6-small
Name Creation Time State
------------------------------------------------------------
origin 2021-05-14 12:10:14 +0800 shutoff
[root@lab101 ~]# virsh snapshot-revert centos7.6-small origin
删除快照
[root@lab101 ~]# virsh snapshot-delete centos7.6-small --snapshotname origin
Domain snapshot origin deleted