Использование lvm и thin provisioning (thinpool) на PV больше 2T

Начальная проблема

Я пытаюсь использовать тонкие тома lvm на Trusty 14.04 с внешним накопителем 3 ТБ в качестве PV для группы томов, но по какой-то причине это не получается, и тонкий пул каким-то образом поврежден .

На диске объемом 2 ТБ в качестве PV все это работает нормально, и я даже могу создавать тонкие снимки тонких томов и т. Д.

Вот что я сделал:

1) Настройте PV:

# pvcreate /dev/sdb

2) Создайте группу томов:

# vgcreate vg_backups /dev/sdb

3) Создать the thinpool:

# lvcreate --thin -L2,5T --chunksize 1M --poolmetadatasize 16G /dev/vg_backups/backup_thinpool

4) Создайте новый тонкий том:

# lvcreate --thinpool /dev/vg_backups/backup_thinpool -n test_lv -V400G

5) Пока все, кажется, идет хорошо, и тонкий LV кажется активным, но когда я хочу сделать VG неактивным с:

# vgchange -an /dev/vg_backups

... Сначала я получаю это предупреждение:

WARNING: Integrity check of metadata for thin pool vg_backups/backup_thinpool failed.

Затем, если я пытаюсь повторно активировать VG с помощью:

# vgchange -ay /dev/vg_backups

... Я получаю:

Check of thin pool vg_backups/backup_thinpool failed (status:1). Manual repair required (thin_dump --repair /dev/mapper/vg_backups-backup_thinpool_tmeta)!

... и тонкий объем не может быть активирован. Выполнение команды thin_dump --repair просто дает:

# thin_dump --repair /dev/mapper/vg_backups-backup_thinpool_tmeta
read failed

И, как я уже сказал, все работает, если я использую диск объемом 2 ТБ в качестве PV. Также протестирован на коробке Centos 7 и там он также работает с диском 3TB. Итак, что-то не так с обработкой lvm thinpool в Ubuntu.

1126 Кто-нибудь сталкивался с этой проблемой? Есть ли какие-либо обходные пути / исправления?

Некоторые дальнейшие испытания и выводы:

У меня установлена ​​другая машина с 16.04 (те же результаты, что и на 15.10 btw), где я действительно могу создать тонкий LV на диске 3T, и он активируется и может использоваться.

Однако, если я сделаю тонкий снимок тонкого тома следующим образом:

# lvcreate -s --thinpool /dev/vg_backups/backup_thinpool -n test_lv_snapshot test_lv

... тогда этот тонкий снимок не станет активным, и я не смогу его активировать, даже если я попробуйте:

# lvchange -ay /dev/vg_backups/test_lv_snapshot

Я не получаю никаких ошибок, LV просто не становится активным.

16.04 я могу деактивировать и повторно активировать (vgchange) группу томов без ошибок - только тонкие снимки не станут активными, что бы я ни пытался.

Также 16.04 (и 15.10) даже диск 2T ведет себя так же - тонкие снимки не становятся активными.

Однако, если я сначала создаю тонкий пул, несколько тонких томов и несколько тонких снимков этих тонких томов на диске 2T на машине 14.04, а затем присоединяю диск к машине 16.04, то эти тонкие тома и их снимки активированы.

Но если я затем сделаю несколько более тонких снимков на этом диске на машине 16.04, то эти тонкие снимки не смогут быть активированы на машине 16.04, но если я присоединю диск обратно к машине 14.04, даже тонкие снимки, созданные на Машина 16.04 рассматривается как активная ... ???

Итак, я вижу, возможно, две отдельные проблемы здесь:

1) Почему-то 14.04 не может обработать диск 3T, как это делает диск 2T

2) Невозможно активировать тонкие снимки на любом диске, созданном 16.04.

Это означает, что к любым тонким снимкам, созданным 16.04 (и 15.10), нельзя получить доступ (невозможно активировать и смонтировать тома), что очень плохо!

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

0
задан 2 May 2016 в 16:36

1 ответ

Для активации снимков попытайтесь добавить "-K/-ignoreactivationskip",

Кто-то решил, что значение по умолчанию для снимков на тонких объемах - чтобы setactivationskip был 'да'. Можно отключить пропуск постоянно путем выполнения "lvchange - setactivationskip n" на каждом новом снимке.

0
ответ дан 3 May 2016 в 02:36

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

Похожие вопросы: