ljzsdut
GitHubToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

05 虚拟机管理

查看概要及监控

可以通过“概要”选项卡查看不同级别的概要信息和监控信息。

  • “数据中心”——”概要“

  • ”物理机“——“概要”

  • “虚拟机”——”概要“

虚拟机模板

基本的操作系统安装不再赘述。

虚拟机可以支持转换成模板。模板可以用于克隆。

注意:虚拟机可以转换成模板,但是模板无法转换成虚拟机。

安装cloud-init

cloud-init是云平台为Linux操作系统的虚拟机做系统初始化配置的开源服务软件。阿里云、AWS、Azure和OpenStack等主流云平台均支持cloud-init。阿里云版cloud-init能在ECS实例启动阶段完成系统初始化配置,包括NTP、软件源、主机名和SSH密钥对等,同时执行实例自定义数据(User data)脚本。更多详情,请参见cloud-init官方文档

虚拟机上安装cloud-init软件

# 虚拟机上安装cloud-init
yum install cloud-init -y   #配置文件:/etc/cloud/cloud.cfg

# 用于自动扩容系统盘。建议整个系统盘使用一个分区,这样有利于扩容
yum install –y cloud-utils-growpart

其他cloud-init配置可参考:

https://support.huaweicloud.com/bestpractice-ims/ims_bp_0024.html

https://support.huaweicloud.com/bpicg-bms/bms_picg_0322.html

控制台上为虚拟机添加**“Cloud-Init CDROM”**驱动

image-20210407164425077

重启虚拟机后,虚拟机的“Cloud-Init”选项就可以编辑了。

image-20210407164650626

如果不想使用自建的虚拟机模板,可以使用官网提供的cloud-init版本的操作系统:

Centos7下载地址: http://cloud.centos.org/centos/7/images/

Debian10下载地址: http://cdimage.debian.org/cdimage/cloud/OpenStack/current-10/

Ubuntu18下载地址: https://cloud-images.ubuntu.com/bionic/current/

原文链接:https://blog.csdn.net/qq_24841037/article/details/98848814

cloud-init参考链接:

https://blog.csdn.net/qq_24841037/article/details/98848814 https://foxi.buduanwang.vip/virtualization/pve/388.html/ http://einverne.github.io/post/2020/03/cloud-init.html https://www.jianshu.com/p/5c2a63220027 https://help.aliyun.com/document_detail/57803.html

创建网络

默认创建一个桥接网络。

“物理机”——“系统”——”网络“:

  • 支持桥接网络、BOND、VLAN
  • 支持OVS(openvswitch)
  • 管理网络、业务网络、集群网络、存储网络可独立组网

创建存储

pve支持丰富的存储,默认使用"LVM-Thin"作为磁盘映像,使用"目录"作为备份文件、模板文件的存储。

集成支持ceph存储,推荐使用ceph存储作为共享存储。

支持各类存储,包括:LVM,LVM-Thin,iSCSI/内核,iSCSI/libiscsi, Ceph/RBD, CephFs, ZFS over iSCSl, ZFS(本地),目录,NFS,CIFS,GlusterFS等

创建虚拟机

建议使用模板进行克隆。

当然,也可以使用裸盘进行操作系统的安装。

VM克隆

根据镜像模板进行克隆

链接克隆实现秒级生成

VM迁移

热迁移

  • 基于共享存储
  • 不基于共享存储

虚拟机备份

  • 手动备份 (“VM”——“备份”)

  • 可以自定义备份策略(“数据中心”——“备份”),按指定周期、存储池、备份时间、以及指定的虚拟机进行备份

用户权限管理

虚拟机HA(漂移)

虚拟机导入磁盘

#qm importdisk  <vmid> <images-name> <storage pool>  --format=<disk-fs> 
qm importdisk 102 ubuntu-18.04.qcow2  rbd --format=qcow2

此时,pve面板出现未使用磁盘。

LEXN0N-1620716085044

这里双击 这个未使用磁盘。然后这是总线、设备,接着点击添加

B9uY8Q-1620716109602

或直接使用命令创建虚机并导入数据盘(推荐):

#新建虚拟机,名称为:ubuntu1804,vmid为:1000 (id可自定义,不存在即可)
qm create 1000 --name "ubuntu1804" --memory 1024 --cores 1 --net0 virtio,bridge=vmbr0
#导入磁盘文件
qm importdisk 1000 bionic-server-cloudimg-amd64.img local-lvm
#定义磁盘总线类型为virtio-scsi
qm set 1000 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-1000-disk-0
qm resize 1000 scsi0 40G
#设置scsi0磁盘为第一引导设备
qm set 1000 --boot c --bootdisk scsi0
#添加Cloudinit Drive设备
qm set 1000 --ide0 local-lvm:cloudinit
#添加cdrom设备
qm set 1000 -cdrom none,media=cdrom
#导入ssh公钥到虚拟系统
# qm set 1000 --sshkey ~/.ssh/id_rsa.pub
# 添加vga设备
# qm set 1000 --serial0 socket --vga serial0
# 启用qga
qm set 1000 --agent enabled=1
# 设置IP
qm set 1000 --ipconfig0 ip=172.16.2.203/24,gw=172.16.2.254
# 启动
# qm start 1000

## qm template 1000

# 删除vm
# qm destroy 1000

#新建虚拟机名称为:debian10-ci,vmid为:102 (id可自定义,不存在即可)
qm create 102 --name centos78 --memory 2048 --net0 virtio,bridge=vmbr0

#导入磁盘文件
qm importdisk 102 debian-10.0.2-20190721-openstack-amd64.qcow2 local-lvm


#定义磁盘总线类型为virtio
qm set 102 --virtio0 local-lvm:vm-102-disk-0

#设置virtio0磁盘为第一引导设备
qm set 102 --boot c --bootdisk virtio0

#添加并设置显卡设备为serial0
qm set 102 --serial0 socket --vga serial0


#添加Cloudinit Drive设备
# qm set 102 --ide2 local-lvm:cloudinit

#导入ssh公钥到虚拟系统
# qm set 102 --sshkey ~/.ssh/id_rsa.pub

# qm template 102

批量克隆虚机

VM_SRC_ID=1000
for i in {1..8};do
    VM_NAME="vm-${VM_NEW_ID}"
    let VM_NEW_ID=100+i
    # qm clone ${VM_SRC_ID} ${VM_NEW_ID} -name ${VM_NAME} -full -storage local-lvm1 -target pve01
    qm clone ${VM_SRC_ID} ${VM_NEW_ID} -name ${VM_NAME}
    qm set ${VM_NEW_ID} --ipconfig0 ip=172.16.1.${i}/24,gw=172.16.1.254
    qm start ${VM_NEW_ID}
done

模板与备份

目录:/var/lib/vz