[room] Разработка механизма резервирования виртуальных машин
Michael Shigorin
mike на osdn.org.ua
Вт Янв 3 11:55:55 MSK 2012
On Sun, Jan 01, 2012 at 04:59:29PM +0400, Илья Кучмин wrote:
> Задумался об автоматизации процесса резервирования виртуальных
> машин на платформах openvz, kvm. Так как backup HN не требуется
> то возникает, вполне законное желание, осуществлять
> перекрестный backup.
Есть такое.
> Особенно если учесть, что винчестеры нынче дешевые, да и raid
> обычно нулевой используется.
Тот, кто с дешёвыми винчестерами использует raid0 для данных,
испытывает судьбу даже и с бэкапами. Да и с дорогими тоже...
> Процесс резервирования видится следующим: Имеется два компонента
> Сервер и Клиент. Сервер выполняет процесс резервирования для
> виртуальных машин которые на нем хостятся.
Целиком?
> В зависимости от типа виртуализации процесс резервирования
> может отличаться, соответственно должны использоваться утилиты
> предоставленные авторами механизма виртуализации, либо
> инструмент который пожелает использовать администратор.
Вы про снапшоты? Лучше по возможности конкретизировать то,
что крутится в голове, поскольку фразу можно понимать сразу
на нескольких уровнях :)
> После того как процесс снятия резервных копий окончен,
> сервер рассылает(клиентам) уведомления, после чего клиенты
> осуществляют процедуру выгрузки копий зарезервированных на сервере
> виртуальных машин. Также клиенты должны с определенной
> периодичностью проверять наличие последних обновлений доступных
> на сервере. Таким образом решается проблема потерявшихся в пути
> уведомлений.
Не проще ли слать их более-менее гарантированным транспортом?
Таймстампы -- относительно небольшой трафик даже относительно
метаданных. Мультикаст относительно интересен при выливе данных,
но есть подозрение, что _закладываться_ на него -- значит как
минимум существенно усложнить себе поддержку шифрования трафика
(например, http://cseweb.ucsd.edu/~spanjwan/multicast.html).
IMHO это хорошая идея при разливе образов, но не для бэкапа...
> Понятие Клиент и Сервер существуют в рамках одной сессии
> передачи данных, так как для одних VPS, HW является
> клиентам(выгружая их с другой машины) для других
> сервером(предоставляя свои ресурсы гостям).
Резонно запихать бэкап тоже в контейнеры или виртуалки.
> Примечания:
> Уведомления должны передаваться не только в рамках одной
> широковещательной сети. Гарантии что промежуточные
> маршрутизаторы поддерживают multicast также нет.
Мало того, для уведомлений мультикаст не очень интересен.
> Прошу читателей покритиковать предложенную схему backup.
Вы знакомы с bacula? Там достаточно гибкая и шаблонируемая
схема организации распределённого бэкапа, хотя возни при
реализации (и времени на освоение базовых вещей) прилично.
> Также если вы знаете об инструментах которые полностью или
> частично реализуют необходимый функционал, прошу указать их.
Возможно, http://wiki.openvz.org/Partners#Openwall;
ещё какие-то соображения можно попробовать почерпнуть около
http://www.virtualmin.com/documentation/cloudmin/vm/backup
(а бакулу есть мысля подружить с инструментарием управления
виртуальными окружениями и машинами, разработанным в рамках
Clustrx -- но это вряд ли дело ближайшего полугода)
--
---- WBR, Michael Shigorin <mike на altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
Подробная информация о списке рассылки smoke-room