Глава 12. Живая миграция KVM
В этой главе будет рассмотрен процесс живой миграции гостевых систем с гипервизора KVM на другой узел KVM.
Под миграцией понимается процесс переноса виртуализированной гостевой системы с одного узла на другой. Миграция является основополагающим аспектом виртуализации, так как на этом уровне программное обеспечение совершенно не зависит от оборудования. Основное назначение миграции:
Load balancing - guests can be moved to hosts with lower usage when a host becomes overloaded.
Hardware failover - when hardware devices on the host start to fail, guests can be safely relocated so the host can be powered down and repaired.
Energy saving - guests can be redistributed to other hosts and host systems powered off to save energy and cut costs in low usage periods.
Geographic migration - guests can be moved to another location for lower latency or in serious circumstances.
Миграция может быть выполнена в автономном режиме или подключенном режиме (так называемая «живая» миграция). В процессе миграции память гостевой системы передается на целевой узел; при этом файловая система гостя будет сохранена в общем хранилище (она не будет передаваться целевому узлу по сети).
An offline migration suspends the guest then moves an image of the guests memory to the destination host. The guest is resumed on the destination host and the memory the guest used on the source host is freed.
Длительность автономной миграции зависит от полосы пропускания и сетевой задержки. Так, перенос гостевой системы с 2 Гбайт памяти по 1 гигабит Ethernet займет около 10 секунд.
Живая миграция характеризуется тем, что работа виртуальных машин не останавливается при переносе. Все изменяемые за это время страницы памяти отслеживаются и передаются целевому узлу после завершения передачи образа. Процесс продолжается до тех пор, пока не будут скопированы все страницы или пока не истечет заданный гипервизором KVM период времени. Если страницы источника изменяются слишком быстро, то работа гостя на исходном узле будет приостановлена и будет выполнена передача регистров и буферов. Регистры будут загружены на новом узле и гость возобновит работу на целевом узле. Если же синхронизация невозможна, что вероятно в случае большой нагрузки, то виртуальная машина будет приостановлена для выполнения миграции в автономном режиме.
Длительность такой миграции зависит от полосы пропускания, сетевой задержки и активности гостевой системы. Нагрузка на процессор и большие объемы операций ввода-вывода также могут сказаться на длительности процесса.
12.1. Требования живой миграции
Ниже перечислены требования для успешного выполнения миграции.
Требования миграции
Виртуализированный гость на общем устройстве хранения, использующий один из следующих протоколов:
Fibre Channel
iSCSI
NFS
GFS2
Как минимум две системы Fedora одной версии с одними и теми же обновлениями.
Обе системы должны открыть соответствующие порты.
Сетевая конфигурация обеих систем должна совпадать.
В исходной и целевой системах общее хранилище должно быть смонтировано в одну и ту же точку. Путь к также должен совпадать.