Size: a a a

PostgreSQL + 1C + Linux

2020 October 18

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Вот пример создания клона базы и подключения к тому же инстансу pg
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Если же делать клон контейнера целиком, то еще проще:
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
1. Создать новый контейнер и удалить у него диск через консоль: zfs destroy
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
2. Сделать клон с именем исходного диска: zfs snapshot && zfs clone
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
3. Запустить новый контейнер
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Время выполнения околонулевое для контейнеров любого размера
источник

A

Alexander Malykhin in PostgreSQL + 1C + Linux
Roman Syuzyov
Ребят, для понимания: чтобы работать с копией базы, нужен не снапшот, а клон. Так вот на zfs создание снимка и от него клона контейнера, с которым можно работать - две команды, 2 секунды и 0 места. lvm этого не умеет: снимок сделали, а дальше место и время для клона требуются уже по-взрослому.
Вы путаете обычные lvm-снапшоты и lvm-thin-снапшоты - это две большие разницы.
Снапшот, снятый с thin-тома точно так же, как и в zfs занимает 0 места, более того, он сразу уже в режиме RW, так что не требуется делать подобие zfs clone. Единственный нюанс, что в нем надо кае-какие флаги поменять, иначе он не виден для монтирования. Так что тоже две команды требуется выполнить )
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Еще раз: разница не в снапшотах, а в клонах
источник

A

Alexander Malykhin in PostgreSQL + 1C + Linux
Roman Syuzyov
Еще раз: разница не в снапшотах, а в клонах
Ну так а чем клон zfs отличается от lvm снапшота, в который можно писать?
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Можете готовую инструкцию от и до прислать? Я ведь lvm использовал лет 5-6 до zfs
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Для zfs я проверенный вариант, регулярно используемый на практике, выложил выше
источник

A

Alexander Malykhin in PostgreSQL + 1C + Linux
Roman Syuzyov
Можете готовую инструкцию от и до прислать? Я ведь lvm использовал лет 5-6 до zfs
у меня нет под рукой инструкции как создавать пул и тома lvm-thin - в манах читал
а так для примера:
lvcreate -s --name backup vg0/pg   - здесь просто создаем снапшот и все, размер не указывается для thin
lvchange -ay -Ky vg0/backup    -  здесь меняется флаг видимости, не помню точно что там, но без это команды раздел не виден в /dev/mapper
mount /dev/mapper/vg0-backup  /mnt
источник

A

Alexander Malykhin in PostgreSQL + 1C + Linux
Ну и 5-6 лет назад, возможно, lvm-thin был еще достаточно кривой, поэтому он и не впечатлил )
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Само по себе thin provisioning означает лишь то, что аллокация производится не при создании, а по необходимости. По использованию снимков перепроверю, возможно действительно что-то изменилось. Еще уточните пожалуйста - Вы лично имеете успешный опыт создания копий баз на lvm без дополнительной аллокации?
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Просто подобный диалог у меня года 3 назад был уже с одним товарищем по цеху...
источник

A

Alexander Malykhin in PostgreSQL + 1C + Linux
Ну я таким образом делаю клоны, чтобы dt выгружать.
Если бы 1С умела выгружать их с r/o реплики - таких заморочек бы и не было )
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Понял, это уже хлеб). Спасибо за информацию.
источник

АД

Антон Дорошкевич... in PostgreSQL + 1C + Linux
Alexander Malykhin
Ну я таким образом делаю клоны, чтобы dt выгружать.
Если бы 1С умела выгружать их с r/o реплики - таких заморочек бы и не было )
а зачем дт? делайте dump с реплики и всё
источник

A

Alexander Malykhin in PostgreSQL + 1C + Linux
Антон Дорошкевич
а зачем дт? делайте dump с реплики и всё
а я и то, и другое делаю
и pg_probackup еще рядом трудится )
источник

RS

Roman Syuzyov in PostgreSQL + 1C + Linux
Alexander Malykhin
а я и то, и другое делаю
и pg_probackup еще рядом трудится )
🔥🔥🔥😂
источник