KVM配置存储池

  • KVM存储池
  • 使用本地目录创建iso存储池
  • 使用nfs创建存储池
  • 删除存储池
  • 从存储池中快速选择iso和磁盘文件

KVM存储池

KVM 中,存储池(storage pool)是一种用于管理虚拟机磁盘镜像ISO 镜像等文件的机制。

存储池由一个或多个存储卷(storage volume)组成,每个存储卷实际上是一个磁盘镜像文件或一个物理存储设备(如磁盘分区、LVM 卷等)。存储池可以使用本地文件系统、NFS、iSCSI 等不同的后端存储技术来存储存储卷和其他文件。

在 KVM 中,您可以使用命令行工具(如 virsh)或图形界面工具(如 virt-manager)来创建、修改和管理存储池。
您可以使用存储池来创建新的虚拟机、将虚拟机迁移至其他主机、备份和还原虚拟机等操作。

存储池是 KVM 虚拟化平台中非常重要的一个概念,它提供了一种集中管理虚拟机磁盘镜像和其他文件的方法,简化了虚拟机管理的过程。通过存储池,用户可以将虚拟机磁盘镜像和其他文件存储在统一的位置,方便管理和维护。同时,存储池还可以通过多种后端存储技术实现灵活的存储管理方式,满足不同场景下的存储需求。

libvirt默认的数据存储路径/var/lib/libvirt/

# 查看该路径下有哪些目录
ll /var/lib/libvirt/

kvm 内存分配机制 kvm存储池_kvm存储池

  • images文件夹主要用于存储虚拟机磁盘文件(以.qcow2.img格式保存);
  • dnsmasq文件夹主要用于存储网络配置文件(不是在network文件夹中),
  • qemu文件夹主要用于存储KVM的元数据文件,还有其他虚拟机配置文件存储池配置文件等(以.xml格式保存)。


使用本地目录创建iso存储池

https://opstrip.com/2017/01/17/Using-Notes-For-KVM-02//var/lib/libvirt/images/目录下创建一个isopool文件夹来存放安装镜像,同时将此目录作为iso存储池挂载点

# 创建iso安装镜像存储目录
mkdir -p /var/lib/libvirt/images/isopool

# 配置目录属主
chown -R qemu:qemu /opt/kvm/images
# 配置目录权限
chmod -R 700 /opt/kvm/images

# 确认目录权限
ls -al /opt/kvm
# 创建iso存储池
## virsh pool-define-as:Libvirt存储池定义命令
## --name=iso:指定存储池的名称为"iso"
## --type=dir:指定存储池的类型为目录(dir)
## --target=/path/  指定存储池的目标路径
virsh pool-define-as --name=iso --type=dir --target=/var/lib/libvirt/images/isopool

kvm 内存分配机制 kvm存储池_spool_02

# 激活iso存储池
virsh pool-start iso

# 设置iso存储池为自动启动
virsh pool-autostart iso

# 查看iso存储池是否创建成功
virsh pool-list

kvm 内存分配机制 kvm存储池_kvm 内存分配机制_03


kvm 内存分配机制 kvm存储池_spool_04

# 查看ios存储池详细信息
virsh pool-info iso

kvm 内存分配机制 kvm存储池_存储池_05



使用nfs创建存储池

# --source-host 参数指定 NFS 服务器的 IP 地址
# --source-path 参数指定共享目录的路径。
virsh pool-define-as --name nfs-pool --type netfs --source-host 192.168.1.100 --source-path /nfs-share-path/to/share



删除存储池

# 停用名为"iso"的存储池
virsh pool-destroy iso

# 删除名为"iso"的存储池
## 此命令只能在存储池已被停用时执行。
virsh pool-undefine iso

# 查看删除的iso存储池还在不在
virsh pool-list



从存储池中快速选择iso和磁盘文件

## --name 指定虚拟机的名称
## --ram 指定虚拟机的内存大小
## --vcpus 指定虚拟机的 CPU 核心数量
## --disk pool=disks 指定磁盘文件的存储池和大小
## --cdrom 指定虚拟机安装所需的 ISO镜像文件
## --network 指定虚拟机的网络配置
## --graphics 指定虚拟机的图形界面类型
virt-install \
--name rhel8 \
--ram 2048 \
--vcpus 2 \
--disk pool=disks,size=20 \
--cdrom /path/to/iso/rhel8.iso \
--network bridge=virbr0 \
--graphics vnc