LVM: размер сопоставленных логических томов намного больше, чем занимаемая дисковой памятью файловая система

В Proxmox мы используем LVM для создания дисков (логических томов) для наших виртуальных машин (тонкая подготовка LVM).

Недавно мы узнали, что наша группа томов почти заполнена, даже когда все диски виртуальных машин почти пусты.

Проблема заключается в том, что некоторые разделы LVM имеют гораздо больший размер отображения, чем реальный размер данных, хранящихся на диске виртуальной машины, как сообщает df.

Например, у нас есть виртуальная машина с логическим томом 100 ГБ. Использование диска внутри виртуальной машины показывает, что используется только 3,2 ГБ пространства:

#> df
Filesystem                         Size  Used Avail Use% Mounted on
/dev/mapper/pve-vm--3011--disk--1   99G  3.2G   91G   4% /
...

но логический том на хосте показывает, что он использует 39,8 ГБ:

  #> lvdisplay
  --- Logical volume ---
  LV Path                /dev/pve/vm-3011-disk-1
  LV Name                vm-3011-disk-1
  VG Name                pve
  LV UUID                oleKd5-O2o4-c4CE-5vzn-bXRC-TXwF-lzApmW
  LV Write Access        read/write
  LV Creation host, time carol, 2016-08-16 09:03:54 +0200
  LV Pool name           vm-hdd
  LV Status              available
  # open                 1
  LV Size                100.00 GiB
  Mapped size            39.83%
  Current LE             25600
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           251:28
  ...

Так что на самом деле используется более чем в десять раз больше места, чем необходимо.

Есть идеи, в чем причина? Я подозреваю, что LVM сохраняет все экстенты, когда-либо затронутые файловой системой в ВМ. Есть ли способ предотвратить это или вернуть неиспользованное пространство обратно?

1 ответ

Догадаться. Вы должны использовать fstrim,

Я смог вернуть неиспользуемое пространство, запустив это внутри виртуальной машины:

    fstrim -v /

Основано на решении, описанном в разделе Использование fstrim для увеличения свободного места в LV с тонким пулом здесь: http://man7.org/linux/man-pages/man7/lvmthin.7.html

Другие вопросы по тегам