Назад | Перейти на главную страницу

Почему при создании тонкого пула метаданные стоят вдвое меньше места?

Задний план

У меня есть vg с 32G свободного места на Centos6.9.

Когда я использую lvcreate -T vg/pool -L 30G --poolmetadatasize 2G чтобы создать тонкий пул, говорится insufficient free disk space.

Когда я уменьшаю метаданные до 512MB(lvcreate -T vg/pool -L 30G --poolmetadatasize 512M), он создается без ошибок, но занимает 31 ГБ места.

Когда я использую % указать размер пула (lvcreate -T vg/pool -l 100%FREE --poolmetadatasize 2G), он успешно создан, но размер пула составляет всего 28 ГБ, даже если добавить метаданные 2 ГБ, 2 ГБ свободного места не хватает.

Вопрос

Итак, я обнаружил, что метаданные пула будут стоить вдвое больше места (укажите 512MB, Стоимость 1G, уточнить 1G, Стоимость 2G), может кто-нибудь сказать мне, почему это стоит двойное пространство?

Я предполагаю, что вы видите так называемый «резервный LV метаданных», который создается автоматически, когда вы создаете первый тонкий пул в группе томов.

Вы можете дважды проверить это с помощью lvs -a чтобы показать вам все тома (то есть также тома скрытых данных / метаданных вашего тонкого пула и запасные метаданные lv). Если вы видите какой-либо том с названием lvol0_pmspare или вообще что-то с _pmspare в качестве суффикса это запасные метаданные lv.

Вы можете отключить его создание, используя --poolmetadataspare n когда вы создаете тонкий пул, пожалуйста, прочтите lvmthin(7) manpage, прежде чем вы это сделаете, потому что этот том требуется для операций проверки и восстановления метаданных (то есть, если у вас его нет, ваши варианты восстановления очень ограничены)