基于4.5.0版本命令,不同版本可能命令略有区别,多用–help查看
创建一个虚拟机的几个步骤
- 定义存储池,创建存储卷
- 创建网络(桥接)
- 创建虚拟机
- 安装VNC客户端,配置密码
KVM存储池和卷
- 存储概念:https://blog.csdn.net/yangshihuz/article/details/104074558
定义存储池
- 格式:virsh pool-define-as 存储名称 存储类型 options…
virsh pool-define-as kvm-storage dir --target /kvm
定义一个存储池,类型为DIR目录类型,/kvm就是存放的目录(提前创建好)
virsh pool-build kvm-storage
创建存储池
virsh pool-start kvm-storage
virsh pool-autostart kvm-storage
启动存储池和配置自动启动
virsh pool-list
virsh pool-info kvm-storage
查看存储池简要信息和详细信息
创建存储卷
- 存储池里面的存储卷才是虚拟机真实存储的硬盘
- 格式:virsh vol-create-as options…
virsh vol-create-as --pool kvm-storage --name test --capacity 40G --format qcow2
创建一个40G的存储卷
virsh vol-info --pool kvm-storage --vol test
查看存储卷信息
创建网络(桥接)
这边的网络指的是2个方面,一个宿主机,一个是虚拟机内
- NAT模式默认已经创建,由安装和启用了 libvirt 服务后生成,可以直接使用(主机和宿主机)
yum -y install bridge-utils
brctl show
命令查看,宿主机
virsh net-list
KVM网络查看,default就是默认的NAT网络
创建桥接-宿主机
yum -y install bridge-utils
brctl addbr br0 #创建网桥br0
brctl addif br0 em1 #将em1端口加入网桥br0,当前主机通讯的网卡
brctl show
创建桥接-KVM
vi /etc/libvirt/qemu/networks/br0
默认存放网络xml文件目录
<network>
<name>br0</name>
<uuid>6e94fbc1-92c5-4e94-95fd-d91ac7baa470</uuid>
<forward mode='bridge'/>
<bridge name='br0'/> #宿主机的网桥
</network>
virsh net-start br0
virsh net-autostart br0
启动网桥和配置自动启动
查看KVM网络列表
创建虚拟机
virt-install --name CentOS-1 \
--ram 4096 --vcpus=2 \
--disk path=/kvm/test \
--accelerate --cdrom /iso/CentOS-7.6-x86_64-DVD-1810.iso \
--graphics vnc,listen=0.0.0.0,port=5900 \
--network bridge=br0,model=virtio \
--autostart
解释:
虚拟机名
内存和CPU
虚拟机硬盘,就是前面创建的存储卷
指定ISO系统存放目录,无需挂载
VNC配置
网络桥接br0,驱动模式选择半虚拟化virtio
虚拟机自动启动
xml配置目录:/etc/libvirt/qemu/
配置VNC密码
vi /etc/libvirt/qemu.conf
vnc_listen = "0.0.0.0"
vnc_password = "password"
systemctl restart libvirtd
重启服务生效
VNC安装配置
windows客户端安装:
链接:https://pan.baidu.com/s/1Hq9pXtp35pyGP4rlFNUlHA
提取码:6lei
连接:地址:端口号(上面配置定义的5900)