Инструменты пользователя

Инструменты сайта


drbd_xen_live_migration

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
drbd_xen_live_migration [2013/06/04 15:53]
metallic [Настройка XEN]
drbd_xen_live_migration [2022/03/25 17:00] (текущий)
Строка 96: Строка 96:
                   # after-sb-0pri after-sb-1pri after-sb-2pri data-integrity-alg no-tcp-cork                   # after-sb-0pri after-sb-1pri after-sb-2pri data-integrity-alg no-tcp-cork
           }           }
 +  
           syncer {           syncer {
                   # rate after al-extents use-rle cpu-mask verify-alg csums-alg                   # rate after al-extents use-rle cpu-mask verify-alg csums-alg
 +  
                   # Максимальная скорость синхронизации(МБ/сек)                   # Максимальная скорость синхронизации(МБ/сек)
                   rate 100M;                   rate 100M;
           }           }
 +  
   }   }
  
Строка 183: Строка 183:
  
   cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----   cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
 +   
 +<note tip> 
 +Можно обойтись без синхронизации, если диски пустые или имеют одинаковый набор данных: 
 +  # drbdadm -- --clear-bitmap new-current-uuid Wheezy 
 +После выполнения этой команды ресурс на обоих узлах сразу перейдет в состояние UpToDate без синхронизации.   
 +</note>
 ===== Настройка XEN ===== ===== Настройка XEN =====
 К текущему моменту у нас один узел работает в режиме мастера, если мы не перезагружали систему. Если же была перезагрузка, то оба узла работают в режиме слейв, тогда любой из них нужно перевести в режим мастер, для первоначальной установки DomU. Делается это командой: К текущему моменту у нас один узел работает в режиме мастера, если мы не перезагружали систему. Если же была перезагрузка, то оба узла работают в режиме слейв, тогда любой из них нужно перевести в режим мастер, для первоначальной установки DomU. Делается это командой:
Строка 297: Строка 302:
   Name                                        ID   Mem VCPUs      State   Time(s)   Name                                        ID   Mem VCPUs      State   Time(s)
   Domain-0                                      1383         r-----    772.7   Domain-0                                      1383         r-----    772.7
-  **Wheezy                                         512         -b----     14.1**+  Wheezy                                         512         -b----     14.1
  
 А drbd-устройство на этом узле должно быть в режиме primary(хотя если это было бы не так, то виртуалка не запустилась) А drbd-устройство на этом узле должно быть в режиме primary(хотя если это было бы не так, то виртуалка не запустилась)
Строка 308: Строка 313:
       ns:328 nr:0 dw:328 dr:664 al:6 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0       ns:328 nr:0 dw:328 dr:664 al:6 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
  
-Ну и самое интересное, то, ради чего, все это городили. Живая миграция без остановки работы виртуалки не на секунду. Выполняется очень просто, одной командой:+Ну и самое интересное, то, ради чего, все это городили. Живая миграция без остановки работы виртуалки ни на секунду. Правим на обоих узлах конфиг /etc/xen/xend-config.sxp 
 + 
 +  # Разрешаем живую миграцию 
 +  (xend-relocation-server yes) 
 +   
 +  # Разрешаем живую миграцию для любой виртуалки(можно указать список, кому можно) 
 +  (xend-relocation-hosts-allow ''
 + 
 +Перезапускаем XEN 
 + 
 +  # /etc/init.d/xen restart 
 +   
 +Посе перезапуска оба узла должны слушать порт 8002. 
 + 
 +Сама миграция выполняется очень просто, одной командой:
  
   # xm migrate --live Wheezy 192.168.1.2   # xm migrate --live Wheezy 192.168.1.2
Строка 316: Строка 335:
  
 Если все работает корректно, то через некоторое время(от нескольких секунд до нескольких минут) виртуальная машина переедет на второй узел и продолжит выполнятся там, также на втором узле drbd-ресурс перейдет в режим primary, на первом узле в secondary. Если все работает корректно, то через некоторое время(от нескольких секунд до нескольких минут) виртуальная машина переедет на второй узел и продолжит выполнятся там, также на втором узле drbd-ресурс перейдет в режим primary, на первом узле в secondary.
 +
 +===== Аппаратная виртуализация =====
 +Если используется полностью аппаратная виртуализация, например для запуска windows-систем, то тут есть одна особенность: не поддерживается использование в качестве типа устройств drbd. Т.е. в конфигурации виртуальной машины нужно указывать путь к блончному устройству(например /dev/drbd2). Соответственно никакой скрипт нам теперь не поможет перевести drbd-ресурс в primary режим. Соотвественно в случае аппаратной виртуализации для поддержки живой миграции нужно на обоих узлах держать drbd-ресурс в режиме primary всегда. В остальном все работает точно также, как описано выше.
 +
 +Пример виртуальной машины для запуска Windows 2012 Server (или любой другой системы с аппаратной виртуализацией):
 +
 +  kernel = "/usr/lib/xen-4.1/boot/hvmloader"
 +  builder='hvm'
 +  memory = 2048
 +  name = "Win2012"
 +  vcpus=1
 +  acpi=1
 +  apic=1
 +  device_model = '/usr/lib/xen-4.1/bin/qemu-dm'
 +  
 +  vif = [ 'type=ioemu, bridge=br0' ]
 +  disk = [ 'phy:/dev/drbd2,ioemu:hda,w', 'file:/home/WindowsServer2012_RU_STD_TRIAL.ISO,hdc:cdrom,r']
 +  
 +  # boot on floppy (a), hard disk (c) or CD-ROM (d)
 +  boot="c"
 +  
 +  usbdevice='tablet'
 +  
 +  vnc=1
 +  vncunused=0
 +  vnclisten = '127.0.0.1'
 +  vncdisplay=0
 +  vncconsole=0
 +  vncpasswd=''
 +  
 +  sdl=0
 +  vncviewer=0
 +  
 +  stdvga=0
 +  serial='pty'
 +  ne2000 = "0"
 +  
 +  on_poweroff = 'destroy'
 +  on_reboot = 'restart'
 +  on_crash = 'restart'
 +
drbd_xen_live_migration.1370346786.txt.gz · Последнее изменение: 2022/03/25 17:04 (внешнее изменение)