Proxmox VE调整储存方式,不使用lvmthin与调整local以及local-lvm空间
目 录
前言:Proxmox VE 5 使用的是lvmthin这种方式来存放vm的磁盘镜像文件,据Proxmox的说明文档中所述,这种方式是block型的存储,速度会更快,而且是按实际使情况来分配空间,所以可以分配出看上去比实际要大的空间出来(存在一定风险),让终端用户看起来有很多空间,总之好处很多
但对于单位内部来说,我觉得不必去节省这些存在风险的成本,而且我还有不少的KVM旧文件需要迁到这里来,用这种存储方式不太方便。所以将这种方式改为传统方式。以下是在新安装没有创建任何VM或CT的前提下操作
一丶修改storage配置文件
cd /etc/pve/ cp storage.cfg storage.cfg.1 nano storage.cfg 将文件从 -------------- dir: local path /var/lib/vz content iso,vztmpl,backup lvmthin: local-lvm thinpool data vgname pve content rootdir,images ------------
注:vgname pve (这个是vg名,在/dev目录下可找到,可使用 pvs, vgs, lvs等命令查看)
改为:
--------------------- dir: local path /var/lib/vz content rootdir,content iso,images,vztmpl,backup --------------------
二、查free PE数字
先查有多少free PE可用
# vgdisplay pve |grep Free
Free PE / Size 43705 / 56.12 GiB
请记住上面的可用空间的数字(标红数字)
三丶先移除 local-lvm
移除指令
# lvremove /dev/pve/data
四丶建新的lvm
把前面查到的数字填在这,即把剩下的PE全用了
# lvcreate -l 43705 -n data pve
五、将lvmthin变回传统文件系统格式,并挂载
mkfs.ext4 /dev/pve/data mount /dev/pve/data /mnt cp -r /var/lib/vz/* /mnt mount /dev/pve/data /var/lib/vz/
六、修改fstab
nano /etc/fstab -------------------- # <file system> <mount point> <type> <options> <dump> <pass> /dev/pve/root / ext4 errors=remount-ro 0 1 /dev/pve/swap none swap sw 0 0 proc /proc proc defaults 0 0 /dev/pve/data /var/lib/vz/ ext4 defaults 0 0 ----------------------
另一种方法
七丶不用去掉local-lvm直接调整即可
fdisk -l #查看各个分区的大小
分区名称和大小
lvreduce -L -2G 分区路径 #减少分区空间
lvextend -L +1G 分区路径 #增加分区空间
执行后实际大小其实是还不会变化的,还需要下边的命令, 作用是执行上边的扩容操作
resize2fs 分区路径
八丶pve(proxmox ve)强制关闭虚拟机
有时要虚拟机不在os可控的情况下,pve无法直接关机或重启,或要等待很长时间,那么可以按下面的方法强行关机
进入web端 shell 或物理端 输入命令行
qm stop 虚拟机id 即可 比如关第一台:
qm stop 100
PVE的主分区结构
首先我们看下pve的默认安装磁盘,是一个基于LVM的结构
fdisk -l
其中
- pve-root 作为根目录
- pve-swap 作为虚拟内存
- pve-data 作为磁盘镜像储存
lsblk
lvm-data
而LVM之中,还建了一个thinpool,名为data
使用lvm-thin可以实现类似于vSphere的精简置备,还可以进行快照,很方便调整空间
lvs
但是lvm-thin有一个不友好的地方。虚拟机储存到lvm-thin,是作为块设备。所以不能直接拷贝文件到其他地方去做备份或者迁移
local
通过查看存储配置文件,观察到local是做为一个dir类型的目录,用来存放iso,备份文件;local-lvm是lvmthin,用来存储虚拟机磁盘
cat /etc/pve/storage.cfg
因为是lvm,那么其实可以动态调整磁盘空间,例如根目录小了,可以缩小lvm-thin的空间,然后扩大到根目录
删除lvm-thin
由于qcow2的优秀,且属于文件类型,所以并不建议使用lvm-thin作为其存储底层
这里给一教程,删除local-lvm,并且将所有空间给到pve-root
编辑local,勾选所有内容,并确认
可以在虚拟机配置栏,选择磁盘,点击移动磁盘到其他磁盘上就行
使用命令删除lvm-thin
lvremove /dev/pve/data
再将lvm-thin的空间转移到pve-root,使用命令
lvextend -rl +100%FREE /dev/pve/root
df -h
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?