Статьи

Миграция виртуальной машины из EC2 в Azure на скорости 300 Мбит / с

 

Этот пост содержит инструкции по миграции виртуальной машины из Amazon Web Services EC2 в Microsoft Azure. Инструкции предполагают базовую настройку, когда экземпляр AWS EC2 работает под управлением Windows Server и содержит один диск с ОС. Подобная техника может быть использована для переноса дополнительных дисков.

Общая идея заключается в следующем:

  1. Добавьте том в экземпляр EC2
  2. Клонируйте диск ОС на VHD на томе (с помощью утилиты Disk2VHD )
  3. Загрузите виртуальный жесткий диск в хранилище Azure (с помощью командлетов Azure PowerShell)
  4. Создайте логический диск Azure из этого виртуального жесткого диска
  5. Создайте виртуальную машину Azure с этого диска
  6. Удалите программное обеспечение AWS с виртуальной машины Azure.
  7. Установите агент Azure на виртуальной машине Azure

Это довольно плавный процесс. Единственное новшество заключается в клонировании диска ОС и загрузке полученного виртуального жесткого диска в хранилище Azure.

Добавить том к экземпляру EC2

Новый том присоединен к экземпляру EC2, чтобы обеспечить достаточно большой диск для клонированного диска ОС. VHD, сгенерированный в процессе клонирования, представляет собой динамический VHD, который меньше исходного диска.

Используйте портал AWS для создания тома и присоединения его к экземпляру EC2. После подключения этот том должен быть инициализирован и отформатирован так же, как и любой другой подключенный том. Следует указать букву диска.

Клонировать диск ОС на виртуальный жесткий диск

Клонирование диска ОС выполняется с помощью утилиты Disk2VHD, созданной Марком Руссиновичем ( @markrussinovich ), техническим сотрудником команды Microsoft Azure. Эта утилита позволяет клонировать работающий диск в VHD.

После входа в сеанс RDP на экземпляре EC2 загрузите Disk2VHD . Разархивируйте загрузку Disk2VHD и скопируйте каталог в удобное место на диске C: \.

Disk2VHD клонирует диск в динамический VHD или динамический VHDX. Azure поддерживает только виртуальные жесткие диски фиксированного формата, но виртуальный жесткий диск будет преобразован в фиксированный формат во время процесса загрузки.

В проводнике

  • Дважды щелкните на Disk2VHD.exe, чтобы открыть пользовательский интерфейс
  • Выберите диски для клонирования
  • Укажите имя выходного файла VHD
  • Отмените выбор опции VHDX.
  • Нажмите Создать, чтобы начать процесс клонирования.

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

Установите командлеты Azure PowerShell

Командлеты Azure PowerShell используются для копирования виртуального жесткого диска в хранилище BLOB-объектов Azure в соответствующем регионе (центр данных). Командлеты можно загрузить непосредственно из репозитория Azure GitHub и установить в экземпляр EC2.

При входе в сеанс RDP на экземпляре EC2:

  • Перейдите на страницу выпуска Azure PowerShell в GitHub.
  • Нажмите на ссылку Windows Standalone
  • Нажмите « Выполнить», чтобы установить командлеты.
  • Нажмите Готово

Командлеты Azure PowerShell теперь установлены.

Загрузите виртуальный жесткий диск в хранилище Azure

Командлеты Azure PowerShell должны быть настроены для использования соответствующей подписки Azure и учетной записи хранения следующим образом.

  • Перейдите в Пуск / Все программы / Windows Azure — и нажмите Windows Azure PowerShell.
  • Invoke Add-AzureAccount (и знак , чтобы лазури с соответствующей учетной записью администратора)
  • Invoke Select-AzureSubscription и введите имя подписки.
  • Invoke Set-AzureSubscription указать учетную запись хранения по умолчанию

После завершения настройки командлет Add-AzureVhd можно использовать для автоматического преобразования виртуального жесткого диска в фиксированный формат и загрузки его в хранилище Azure. Add-AzureVhd поставляется с локальным путем к виртуальному жесткому диску и полным URL -адресом виртуального жесткого диска в хранилище Azure (в учетной записи хранения и контейнере, который уже существует).

Например:

Add-AzureAccount

Select-AzureSubscription -SubscriptionName YourSubscription

Set-AzureSubscription –SubscriptionName YourSubscription `
–CurrentStorageAccount YourStorageAccount

Add-AzureVhd –Destination `
http://YourStorageAccount.blob.core.windows.net/vhds/EC2InstanceTest.vhd `
-LocalFilePath d:\vhds\EC2Instance.vhd

Обратите внимание, что команда Add-AzureVhd в примере должна состоять из одной строки.

Загрузка выполняется в два этапа: создание хеша MD5, используемого для проверки успешности загрузки; и преобразование виртуального жесткого диска в фиксированный формат и его выгрузка в указанное место в хранилище Azure. Обратите внимание, что загруженный виртуальный жесткий диск расширяется до исходного размера диска.

Создайте диск Azure с виртуального жесткого диска

Прежде чем виртуальный жесткий диск в хранилище BLOB-объектов Azure можно будет использовать в качестве диска на виртуальной машине Azure, его необходимо настроить. Эта конфигурация включает в себя предоставление логического имени для диска, который можно использовать в последующих операциях. Диск Azure настроен следующим образом:

  • Перейдите на портал Azure
  • Перейдите в меню Виртуальные машины (на LHS)
  • Нажмите на вкладку Диски
  • Нажмите на кнопку Создать
  • Укажите логическое имя для диска
  • Найдите URL-адрес виртуального жесткого диска в хранилище BLOB-объектов Azure
  • Выберите VHD содержит операционную систему флажок
  • Убедитесь, что Windows выбрана для семейства операционных систем
  • Нажмите кнопку с галочкой , чтобы создать диск Azure.

По завершении диск становится видимым в списке дисков на портале Azure.

Создайте виртуальную машину Azure с диска Azure

Это стандартный процесс создания виртуальной машины из галереи Azure, с той лишь разницей, что вместо образа используется пользовательский диск. Общий процесс использования Gallery для создания виртуальной машины Azure описан на этой странице .

Виртуальная машина Azure создается следующим образом:

  • Перейдите на вкладку «Экземпляры» (в разделе «Виртуальные машины» портала Azure).
  • Нажмите на кнопку Новый
  • Нажмите на из галереи

На Выберите изображение окна

  • Нажмите на мои диски
  • Нажмите на соответствующий диск
  • Нажмите кнопку со стрелкой « Далее»

На странице конфигурации виртуальной машины

  • Укажите имя виртуальной машины
  • Оставьте уровень на стандартном
  • Выберите подходящий размер
  • Нажмите на кнопку «Далее»

На следующей странице конфигурации виртуальной машины

  • Укажите новое или существующее имя облачной службы.
  • Выберите подписку Azure
  • Укажите регион, который содержит VHD
  • Оставьте опцию « Доступность» в «Нет»
  • Оставьте конфигурацию конечных точек по умолчанию
  • Нажмите на Next кнопку со стрелкой

На третьей странице конфигурации виртуальной машины

  • Снимите флажок VM Agent, который поддерживает расширения уже установлен флажок
  • Нажмите кнопку со стрелкой « Далее»

Теперь виртуальная машина Azure будет создана с диском ОС, являющимся виртуальным жестким диском, перенесенным из AWS. Этот процесс занимает несколько минут. Обратите внимание, что обычно предоставленное имя виртуальной машины становится именем хоста, но после этой миграции созданная виртуальная машина использует вместо этого существующее имя хоста EC2.

Подключиться к ВМ

Как только виртуальная машина достигает рабочего состояния, в нее можно включить RDP. Это может потребовать нескольких попыток в первый раз, когда записи DNS обновляются.

В разделе Виртуальные машины портала Azure:

  • Нажмите на вкладку Экземпляры
  • Нажмите на виртуальную машину в списке экземпляров

На странице Экземпляр

  • Нажмите на кнопку подключения

Это вызывает стандартный диалог RDP Connection

  • Нажмите через диалоги RDP
  • Войдите в виртуальную машину Azure с оригинальными учетными данными виртуальной машины EC2.

На рабочем столе виртуальной машины Azure отображается диалоговое окно «Отслеживание событий завершения работы».

  • Предоставить комментарий
  • Нажмите ОК

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

Удалить программное обеспечение AWS

Программное обеспечение AWS следует удалить с виртуальной машины. При входе в сеанс RDP используйте панель управления / функцию удаления программы, чтобы удалить следующее программное обеспечение:

  • Инструменты AWS для Windows
  • AWS-CFN-самозагрузка
  • Инструменты Citrix для виртуальных машин (требуется перезагрузка)

Установите агент Azure

Агент Azure можно установить на виртуальной машине Azure.

Загрузите и установите агент Azure из сеанса RDP на виртуальную машину Azure .

Агент Azure настраивается с помощью командлетов Azure PowerShell, которые можно вызывать из любого места, где установлены и настроены командлеты Azure PowerShell:

$vm = Get-AzureVM -ServiceName YourService -Name YourVM

$vm.VM.ProvisionGuestAgent = $true

Update-AzureVM -ServiceName YourService -Name YourVM -VM $vm.VM

Установку агента Azure можно проверить, установив расширение BGInfo, которое агент использует для предоставления информации об экземпляре на фоне рабочего стола. Расширение BGInfo устанавливается с использованием следующего сценария PowerShell:

$vm = Get-AzureVM -ServiceName YourService -Name YourVM

Set-AzureVMBGInfoExtension -VM $vm

Update-AzureVM -ServiceName YourService -Name YourVM -VM $vm.VM

При следующем открытии сеанса RDP фон рабочего стола будет содержать информацию о текущей виртуальной машине Azure.

Резюме

В этом посте описан довольно простой процесс миграции виртуальной машины Windows Server из Amazon Web Services EC2 в Microsoft Azure.