Компьютерщик на все руки: Динамическая миграция

У вас нет SAN? Не проблема. Виртуальные машины Hyper-V можно мигрировать динамически без использования общего хранилища.

Грэг Шилдс

Эта статья написана на основе бета-версии Windows Server 8. Информация может меняться.

Эникейщик — особая порода ИТ-профессионала. Некоторые могут сказать, что это самый тяжело работающий айтишник среди всех ИТ-специалистов. Он отвечает за работоспособность технологии в малых организациях и даже в малых средах в более крупных предприятиях. У такого айтишника масса обязанностей, но немного инструментов и очень слабая поддержка. Узнаете себя?

Эникейщик — мастер бесплатных программ. Он наполняет свой инструментарий всевозможными бесплатными инструментами, до каких только может дотянуться. Он выполняет свою работу, используя все имеющиеся у него ресурсы. Необходимость постоянно обеспечивать выполнение работы приводит многих эникейщиков к выбору Hyper-V в качестве платформы виртуализации. Даже в самых небольших ИТ-средах есть одна или две лицензии Windows Server, и этого вполне достаточно для виртуализации на основе Hyper-V.

Однако до недавнего времени экономные пользователи редко выбирали Hyper-V. Настройка одного сервера Hyper-V на основе DAS-массива не составляла труда. При дальнейшем расширении среды резко возрастала сложность — нужно было разбираться с кластеризацией Windows — и стоимость — решения на основе SAN обходятся недешево.

Похоже, что в Hyper-V версии 3 в Windows Server 8 улучшилась связь между возможностями гипервизора и средствами его администрирования. Одна из замечательных новых возможностей — возможность динамической миграции виртуальных машин (ВМ) без использования общего хранилища. На серверах Hyper-V, не подключенных к SAN, можно мигрировать ВМ, а также подсистему хранения без дополнительных сложностей и затрат. Из этой статьи вы узнаете, как это делается.

Динамическая миграция в отсутствие SAN

Представьте себе, что у вас два сервера Hyper-V: \\win8hv1 и \\win8hv2, на которых установлены самые разные виртуальные машины. Файлы дисков этих ВМ хранятся не на серверах, а в сети на файловом сервере или общей папке \\win8fs1\VM.

В такой конфигурации средствами диспетчера Hyper-V (Hyper-V Manager) можно переносить ВМ с одного сервера на другой Щелкните правой кнопкой ВМ, которую надо перенести, и выберите Move, чтобы запустить мастер переноса (Move Wizard). Этот мастер (рис. 1) позволяет переносить вычислительные операции ВМ, подсистему хранения или оба компонента. В любом из этих сценариев миграция выполняется динамически, то есть после переноса не требуется перезагружать ВМ и работа ВМ не прерывается.

Мастер переноса Hyper-V позволяет переносить и переназначать подсистему хранения виртуальных машин

Рис. 1. Мастер переноса Hyper-V позволяет переносить и переназначать подсистему хранения виртуальных машин

Это впечатляет. Наверняка эта возможность вас заинтересует, когда вы поймете, что такую динамическую миграцию можно выполнять без необходимости использовать отказоустойчивые кластеры Windows или SAN.

«Минуточку, минуточку! — скажете вы. — Такая миграция без SAN работает, потому что виртуальная машина располагается на общей папке SMB? Все это хорошо, но не означает ли это, что производительность будет неудовлетворительной?»

Не означает, а все потому, что в Microsoft потратили значительные усилия на усовершенствование протокола SMB. Повышена производительность и пропускная способность. Эти усовершенствования призваны сделать протокол SMB таким же эффективным, как iSCSI или Fibre Channel, но без сложного администрирования, которое необходимо при использовании этих протоколов. В сущности, Microsoft заявляет, что виртуальные машины в Hyper-V, работающие черзе SMB на удаленных файловых серверах будут работать достаточно производительно, чтобы удовлетворять большой диапазон организаций самого разного масштаба.

Нужны определенные усилия

Такая динамическая миграция в отсутствие кластеров и SAN требует ряда предварительных операций, по крайней мере в бета-версии Windows Server 8. Общая папка должна размещаться на файловом сервере с Windows Server 8. А для этого нужны определенные специальные разрешения. Нужно сконфигурировать все серверы Hyper-V для поддержки входящей и исходящей динамической миграции. Наконец, если вы хотите инициировать динамическую миграцию удаленно, нужно настроить то, что называется «ограниченными делегированием».

К счастью, все эти операции выполнить несложно. Преждел всего при установке роли Hyper-V role на компьютере под управлением Windows Server 8 не забудьте установить флажок «Allow this server to send and receive live migrations of virtual machines» (рис. 2).

Включение динамической миграции в роли Hyper-V

Рис. 2. Включение динамической миграции в роли Hyper-V

Существует два варианта протокола проверки подлинности. Первый называется CredSSP и требует дополнительного конфигурирования, но при его использовании для запуска динамической миграции нужно войти в консоль сервера-источника. Второй вариант — использование более безопасного протокола Kerberos. При этом требуется настроить ограниченное делегирование в Active Directory. В большинстве случаев выбирают второй вариант.

Настройка ограниченного делегирования на самом деле не так сложна. Для начала нужно создать глобальную группу безопасности Active Directory в консоли Active Directory Users and Computers. В эту группу нужно добавить машинные учетные записи всех серверов Hyper-V, которые будут участвовать в миграции.

Затем на вкладке Delegation страницы свойств учетной записи компьютера на каждом сервере Hyper-V нужно выбрать «Trust this computer for delegation to specified services only». Затем выберите Use Kerberos и щелкните кнопку Add.

Откроется окно Add Services, где нужно щелкнуть Users or Computers и предоставить имя файлового сервера, на котором располагаются файлы дисков виртуальных машин. Затем в разделе Available services выберите службу cifs. По завершении этих операций картина должна быть похожа на показанное на рис. 3.

Настройка ограниченного делегирования

Рис. 3. Настройка ограниченного делегирования

Такое делегирование позволяет службе действовать от имени другого участника безопасности. «Ограниченно» оно потому, что делегирование ограничивается только типом службы cifs, что соответствует протоколу SMB. Повторите эти операции для всех своих серверов Hyper-V.

Наконец создайте и настройте набор разрешений общей папки на сервере Windows Server 8. Создайте эту папку средствами службы File and Storage services в диспетчере сервера (Server Manager). Добавьте все учетные записи серверов Hyper-V в разрешения по умолчанию, предоставив им разрешение на полный доступ. Полный доступ необходим, потому что сервер Hyper-V должен иметь возможность изменять записи управления доступом на этой папке. На рис. 4 показан пример настройки компьютеров \\win8hv1 и \\win8hv2.

Создание и настройка разрешений на общей папке

Рис. 4. Создание и настройка разрешений на общей папке

По завершении этих операций вы сможете выполнять динамическую миграцию виртуальных машин между хостами Hyper-V, которым вы предоставили привилегии.

Универсальное решение

Такая динамическая миграция без кластеров и SAN позволяет предупредительно переносить ВМ перед отключением, но она не поддерживает пассивной миграции в случае отказа хоста. Поэтому технически это можно назвать решением высокой доступности. Для обеспечения высокой доступности также требуется отказоустойчивый кластер со всеми его атрибутами.

Также, такая архитектура сильно зависит от файлового сервера — в случае его отказа потерпят сбой все виртуальные машины. Здесь также на помощь приходит кластеризация Windows. Кластеризация Windows в Windows Server 8 позволяет создавать новые типы кластеров файловых серверов, которые называются горизонтально масштабируемым файловым сервером (Scale-Out File Server). Эта новая технология кластеризации «активный-активный» специально разработана для применения в Hyper-V и SQL Server.

Несмотря на эти ограничения, динамическая миграция в Windows Server 8 предоставляет совершенно новые и лучшие возможности. Она поддерживает ряд архитектур при расширении функциональности и повышении сложности. Hyper-V теперь с легкость справляется с любыми вашими особыми требованиями. А лучше всего то, что при добавлении SAN-массивов и кластеров Hyper-V позволяет решать все возможные задачи уровня предприятия.

Грег Шилдс

Грег Шилдс (Greg Shields) носит звание MVP и является партнером в компании Concentrated Technology. Другие советы и подсказки Грега из рубрики «Компьютерщик на все руки» вы найдете на сайте ConcentratedTech.com.