PVE的local和local-lvm

对于刚接触pve的童鞋来说,会对这2个存储点产生相当大的疑问。

PVE的主分区结构

首先我们看下pve的默认安装磁盘,是一个基于LVM的结构

root@pve:~# fdisk -l
Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 sectors
。。。
Device       Start       End   Sectors  Size Type
/dev/sda1       34      2047      2014 1007K BIOS boot
/dev/sda2     2048   1050623   1048576  512M EFI System
/dev/sda3  1050624 167772126 166721503 79.5G Linux LVM

其中

  • pve-root           作为根目录
  • pve-swap         作为虚拟内存
  • pve-data          作为磁盘镜像储存

root@pve:~# lsblk
NAME               MAJ:MIN RM    SIZE RO TYPE MOUNTPOINT
sda                  8:0    0     80G  0 disk 
├─sda1               8:1    0   1007K  0 part 
├─sda2               8:2    0    512M  0 part 
└─sda3               8:3    0   79.5G  0 part 
  ├─pve-swap       253:0    0      4G  0 lvm  [SWAP]
  ├─pve-root       253:1    0   19.8G  0 lvm  /
  ├─pve-data_tmeta 253:2    0      1G  0 lvm  
  │ └─pve-data     253:4    0   43.9G  0 lvm  
  └─pve-data_tdata 253:3    0   43.9G  0 lvm  
    └─pve-data     253:4    0   43.9G  0 lvm

 

lvm-data

而LVM之中,还建了一个thinpool,名为data。

什么叫lvm-thin可以参考LVM存储虚拟化_Thin-provisioned.pdf-原创力文档 (book118.com)

使用lvm-thin可以实现类似于vSphere的精简置备,还可以进行快照,很方便调整空间。

root@pve:~# lvs
  LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  data pve twi-a-tz-- 43.87g             0.00   1.59                            
  root pve -wi-ao---- 19.75g                                                    
  swap pve -wi-ao----  4.00g

但是lvm-thin有一个不友好的地方。虚拟机储存到lvm-thin,是作为块设备。所以不能直接拷贝文件到其他地方去做备份或者迁移。

local

通过查看存储配置文件,观察到local是做为一个dir类型的目录,用来存放iso,备份文件;local-lvm是lvmthin,用来存储虚拟机磁盘。

root@pve:~# cat /etc/pve/storage.cfg 
dir: local
        path /var/lib/vz
        content iso,vztmpl,backup

lvmthin: local-lvm
        thinpool data
        vgname pve
        content rootdir,images

因为是lvm,那么其实可以动态调整磁盘空间,例如根目录小了,可以缩小lvm-thin的空间,然后扩大到根目录。

删除lvm-thin

由于qcow2的优秀,且属于文件类型,所以并不建议使用lvm-thin作为其存储底层。

这里给一教程,删除local-lvm,并且将所有空间给到pve-root。

[start-plane type="1"]注意!请先确保自己的虚拟机没有位于lvm-thin上,若有,请先移动到local[/start-plane]

编辑local,勾选所有内容,并确认。就

可以在虚拟机配置栏,选择磁盘,点击移动磁盘到其他磁盘上就行。

 

使用命令删除lvm-thin lvremove /dev/pve/data

root@pve:~# lvremove /dev/pve/data 
Do you really want to remove active logical volume pve/data? [y/n]: y 
  Logical volume "data" successfully removed

再将lvm-thin的空间转移到pve-root,使用命令lvextend -rl +100%FREE /dev/pve/root

root@pve:~# lvextend -rl +100%FREE /dev/pve/root
  Rounding size to boundary between physical extents: 43.87 GiB.
  Size of logical volume pve/root changed from 19.75 GiB (5056 extents) to 63.62 GiB (16287 extents).
  Logical volume pve/root successfully resized.

使用df -h查看,根目录已经扩大了。

 

root@pve:~# df -h
Filesystem            Size  Used Avail Use% Mounted on
udev                  1.9G     0  1.9G   0% /dev
tmpfs                 393M  892K  392M   1% /run
/dev/mapper/pve-root   63G  2.4G   58G   5% /
tmpfs                 2.0G   43M  1.9G   3% /dev/shm
tmpfs                 5.0M     0  5.0M   0% /run/lock
/dev/fuse             128M   16K  128M   1% /etc/pve
tmpfs                 393M     0  393M   0% /run/user/0

当然删除了lvm-thin之后,还要修改一下储存配置。

在网页上,删除lvm-thin

 

 

这样做了,我们就可以进入目录

/var/lib/vz查看所有的内容了。

t@pve:~# tree /var/lib/vz/
/var/lib/vz/
├── dump        --备份文件
├── images      --虚拟机磁盘
├── private
├── snippets    --片段
└── template   
    ├── cache     --容器模板
    ├── iso          --iso
    └── qemu

 

 

 

https://foxi.buduanwang.vip/virtualization/pve/1434.html/

评论

  1. 梦太晓
    Windows Chrome 117.0.0.0
    5月前
    2023-11-26 2:20:20

    删除local-lvm后,虚拟机无法快照,只能通过转换磁盘为qcow2后才能快照,但LXC容器没法,无法快照了

  2. 阿蛮君博客
    Windows Edge 115.0.1901.203
    8月前
    2023-8-21 17:47:02

    请问下左边的侧边栏目录是怎么添加的,function.php可以做到吗

  3. conan
    Macintosh Edge 111.0.1661.62
    1年前
    2023-4-08 17:09:30

    大神,遇到了个小问题,想请教。我已经把local-lvm删掉,空间全部放在local里了。
    现在pve里只有一个openwrt和一个lxc跑的是ubuntu,我在lxc的下载器里设置未完成的放在lxc的磁盘里,完成后转移到nfs挂载的局域网存储盘。但问题是下载+转移完成后,lxc的空间释放出来了,但pve下面的local storage还是会有部分占用(我前后下了240G的东西,现在显示used是130G),请问这个算是缓存类的东东吗?
    ps. 空间是1T的nvme
    谢谢谢谢

    • 静水流深
      Windows Chrome 113.0.0.0
      11月前
      2023-6-09 8:20:09

      我也遇到了这个问题,不知道怎么解决

  4. 2333
    Macintosh Chrome 96.0.4664.55
    2年前
    2021-12-07 10:44:52

    为什么从运维的角度,建议直接不使用lvm-thin,并且将所有空间给到pve-root。呢?

  5. bbaill
    Windows Chrome 86.0.4240.198
    2年前
    2021-11-18 14:10:50

    大神,local里面没有备份没有ISO镜像,但空间却快满了,这种情况怎么处理?

    • 佛西 博主
      Windows Chrome 95.0.4638.69
      2年前
      2021-11-18 17:45:25

      local是根目录所在的盘,local满了,可以将lvm-local目录的容量分一点到更磁盘

      • angel55555
        Windows Edge 100.0.1185.50
        2年前
        2022-4-28 9:26:38

        那能把local的空间全部释放出来吗?


Deprecated: preg_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /www/wwwroot/foxi.buduanwang.vip_80/wwwroot/wp-content/themes/argon-theme-master/functions.php on line 1383

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇