LINUX.ORG.RU
решено ФорумAdmin

Копирование образа виртуальной машины с докачкой.

 ,


0

2

Приветствую. После нескольких недель поисков и проб решил обратиться на этот форум.

ТЗ: Необходимо скопировать образ HDD !работающей! виртуальной машины из одного ДЦ в другой.

Что имеем: KVM Машина на проксмокс Образ диска - qcow2 Размер образа - 300Гб

Как я это вижу: Копируем файл как есть на сервер назначения. Выключаем виртуальную машину и синхронизируем образы. Включаем виртуальную машину на сервере назначения с консистентными данными.

Что было попробовано: btsync - в принципе он делает то что мне нужно НО

при запуске btsync не может проиндексировать файл виртуальной машины, т.к. в него идёт запись. Приходится саспендить виртуалку чтобы проиндексировался файл и началась закачка. Индексируется не быстро и такой даунтайм - роскошь.

Я так понимаю мой выбор - чанки. Но как ещё их можно использовать я не знаю. Посоветуйте куда копать. Спасибо!

Ответ на: комментарий от anonymous

Возможно я его не так использовал, но в ответ на эту команду файл перекачивался заново. А кроме rsync что можно попробовать? С учетом того что файлы бывают и больше и разрывы сети не редкость и нужно автоматическое продолжение копирования.

itseliev ()

Снапшот - копирование диска - выключение ВМ - копирование снапшота и ВМ - добавление ВМ - слияние снапшота - старт ВМ.

thesis ★★★★★ ()

В proxmox, zfs числится как stable. Я тут погонял её, в целом, приятные впечатления. По идее, это то, что тебе нужно. Цепляешь том zfs, в онлайн перегоняешь виртуалку на zfs, затем через pve-zsync перегоняешь виртуалку на другой proxmox

DALDON ★★★★★ ()
Ответ на: комментарий от itseliev

Удаление снапшота имелось в виду. Но вообще я не знаю, можно ли в прохмохе создать снапшот с дельтой в отдельном файле, так что мой совет может быть бесполезен.

thesis ★★★★★ ()
Ответ на: комментарий от itseliev

На свой страх и риск можешь попробовать http://theshed.hezmatt.org/lvmsync/ lvmsync, но вроде были и аналогичные утилиты. Если у тебя lvm бежит на lvm разумеется. :) rsync, не знает какие блоки у тебя изменились. Так что, с ним надежды нету (ИМХО), он будет прогонять всё равно целый образ.

DALDON ★★★★★ ()
Ответ на: комментарий от DALDON

Решение найдено. И причём пофиг лвм там или нет. Берём btsync. Ставим его на источник и приёмник. Файл работающей виртуалки копируем scp с источника на приёмник. Далее в btsync шарим папку с файлом на источнике в режиме rw. Отдаём шару приемнику. Говорим btsync'у что файлы из шары нужно положить туда куда мы перегнали образ. Он ругнётся что директория не пустая. Соглашаемся. Далее выключаем виртуалку и ждём индексации файла на источнике. Btsync сверит хеши на обеих сторонах и докачает разницу. Испытано на 3 виртуалках: 1. Просто чистая установка centos 6.4 на ext4 без lvm 2. Тоже самое на lvm 3. Рабочий контейнер с заббикс сервером на 1500+ хостов.

Во всех случаях получили консистентные данные. 2.

itseliev ()
Ответ на: комментарий от itseliev

Вопрос же всё равно во времени которое требуется btsync на переиндексацию файла... Какие образы виртуалок были? 1-100 гб. - это одно. 600-2000 гб. - другое.

DALDON ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.