Перенос экземпляра отказоустойчивого кластера в SQL Server на виртуальных машинах Azure

В этой статье описывается, как перенести экземпляр отказоустойчивого кластера Always On (FCI) в SQL Server на виртуальных машинах Azure с помощью инструмента миграции сервера в службе "Миграция Azure". Средство миграции позволяет перенести каждый узел в экземпляре отказоустойчивого кластера на виртуальную машину Azure, где размещен SQL Server, а также метаданные кластера и FCI.

Вы узнаете, как выполнять следующие задачи:

  • Подготовка Azure и исходной среды к миграции.
  • Запуск репликации виртуальных машин.
  • Мониторинг репликации.
  • Выполнение полной миграции виртуальной машины.
  • Изменение настройки отказоустойчивого кластера с использованием общедоступных дисков Azure.

В этом руководстве рассматривается миграция с использованием агентов в службе "Миграция Azure", который обрабатывает все серверы или виртуальные машины как физический сервер. При переносе физических компьютеров средство миграции сервера в службе "Миграция Azure" использует ту же архитектуру репликации, что и функция аварийного восстановления, использующая агенты, в Azure Site Recovery, а некоторые из компонентов используют одну и ту же базу кода. В некоторых местах может упоминаться документация по Site Recovery.

Необходимые компоненты

Для работы с этим руководством вам потребуется:

  1. Подписка Azure. При необходимости создайте бесплатную учетную запись.
  2. Установите модуль AzAzure PowerShell.
  3. Скачайте примеры скриптов PowerShell из репозитория GitHub.

Подготовка Azure

Подготовка Azure к миграции с помощью средства "Миграция сервера".

Задача Сведения
Создание проекта службы "Миграция Azure" Для создания проекта учетная запись Azure должна иметь разрешения участника или владельца.
Проверка разрешений учетной записи Azure Для учетной записи Azure требуются разрешения участника или владельца подписки Azure, разрешения на регистрацию приложений в идентификаторе Microsoft Entra (ранее Azure Active Directory) и разрешения доступа пользователей Администратор istrator в подписке Azure для создания хранилища ключей, создания виртуальной машины и записи на управляемый диск Azure.
Настройка виртуальной сети Azure Настройка виртуальной сети Azure (VNet). При репликации в Azure создаются виртуальные машины Azure, которые присоединяются к виртуальной сети Azure, указанной при настройке миграции.

Чтобы проверить наличие требуемых разрешений, выполните следующие действия.

  1. На портале Azure откройте подписку, а затем выберите Управление доступом (IAM).
  2. В разделе Проверка доступа найдите соответствующую учетную запись и выберите ее, чтобы просмотреть разрешения.
  3. Вы должны обладать разрешениями уровня Участник или Владелец.
    • Если вы создали бесплатную учетную запись Azure, вы являетесь владельцем подписки.
    • Если вы не являетесь владельцем подписки, назначьте эту роль совместно с владельцем.

Если требуется назначить разрешения, выполните действия, описанные в разделе Подготовка учетной записи пользователя Azure.

Подготовка к переносу

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

Проверка требований к компьютеру

Убедитесь, что компьютеры соответствуют требованиям для миграции в Azure.

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

Подготовка к репликации

Средство миграции сервера службы "Миграция Azure" использует модуль репликации для репликации компьютеров в Azure. Устройство репликации запускает следующие компоненты.

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

Выполните подготовку к развертыванию устройства следующим образом:

Примечание.

Устройство репликации должно быть установлено не на том компьютере, на котором выполняется репликация или миграция. При этом это не должен быть компьютер, на котором ранее было установлено устройство для обнаружения и оценки службы "Миграция Azure".

Загрузка установщика устройства репликации

Чтобы загрузить установщик устройства репликации, выполните следующие действия.

  1. В проекте "Миграция Azure" в разделе Серверы, Azure Migrate: Server Migration (Средство миграции сервера службы "Миграция Azure"), выберите Обнаружение.

    Screenshot of the Discover VMs option.

  2. В разделе Обнаружение компьютеров>Ваши компьютеры виртуализированы? выберите Физическое или другое (AWS, GCP, Xen и т. д.).

  3. В поле Целевой регион выберите регион Azure, в который необходимо перенести компьютеры.

  4. Выберите параметр Подтвердите, что целевым регионом для миграции является "имя-региона".

  5. Выберите Создание ресурсов. После этого в фоновом режиме создается хранилище Azure Site Recovery.

    • Если вы уже настроили миграцию с помощью средства "Миграция сервера" службы "Миграция Azure", целевой параметр нельзя настроить, так как ресурсы были настроены ранее.
    • После нажатия этой кнопки вы не сможете изменить целевой регион для этого проекта.
    • Все последующие миграции будут выполняться в этот регион.
  6. В разделе Do you want to install a new replication appliance? (Вы хотите установить новое устройство репликации?) щелкните Установить устройство репликации.

  7. В разделе Download and install the replication appliance software (Скачайте и установите ПО устройства репликации) скачайте установщик устройства и регистрационный ключ. Для регистрации устройства необходим ключ. Ключ действителен в течение пяти дней после скачивания.

    Screenshot of the download provider option.

  8. Скопируйте файл установки устройства и файл ключа на компьютер под управлением Windows Server 2016, который вы создали для устройства.

  9. После установки будет автоматически запущен мастер настройки устройства (мастер можно также запустить вручную с помощью ярлыка cspsconfigtool, который создается на рабочем столе компьютера, где установлено устройство). Используйте вкладку Управление учетными записями мастера, чтобы создать фиктивную учетную запись со следующими сведениями:

    • guest в качестве понятного имени;
    • username в качестве имени пользователя;
    • password в качестве пароля учетной записи.

    Такая фиктивная учетная запись потребуется вам на шаге "Включение репликации".

  10. После завершения настройки и перезапуска устройства на вкладке Обнаружение компьютеров выберите новое устройство в разделе Выберите сервер конфигурации и нажмите кнопку Завершить регистрацию. Завершение регистрации выполняет пару заключительных задач по подготовке устройства репликации.

    Screenshot of the Finalize registration option.

Установка службы Mobility

Установка службы "Мобильность" на серверах, которые нужно перенести. Установщики агента доступны на устройстве репликации. Найдите правильный установщик и установите агент на каждой машине, которую вы хотите перенести.

Выполните следующие действия по установке службы "Мобильность".

  1. Войдите на устройство репликации.

  2. Перейдите к %ProgramData%\ASR\home\svsystems\pushinstallsvc\repository.

  3. Найдите версию установщика, которая соответствует ОС компьютера. Проверьте поддерживаемые операционные системы.

  4. Скопируйте файл установщика на компьютер, который вы хотите перенести.

  5. Убедитесь, что у вас есть пароль, сгенерированный при развертывании устройства.

    • Сохраните файл во временный текстовый файл на компьютере.
    • На устройстве репликации можно получить парольную фразу. В командной строке выполните команду C:\ProgramData\ASR\home\svsystems\bin\genpassphrase.exe -v , чтобы просмотреть текущую парольную фразу.
    • Не создавайте парольную фразу повторно. Это нарушит соединение и вам придется перерегистрировать устройство репликации.
    • В параметре /Platform укажите VMware как для компьютеров VMware, так и для физических компьютеров.
  6. Подключитесь к компьютеру и извлеките содержимое файла установщика в локальную папку (например, С:\temp). Выполните эту команду в командной строке с правами администратора.

    ren Microsoft-ASR_UA*Windows*release.exe MobilityServiceInstaller.exe
    MobilityServiceInstaller.exe /q /x:C:\Temp\Extracted
    cd C:\Temp\Extracted
    
  7. Запустите установщик Службы мобильности:

    UnifiedAgent.exe /Role "MS" /Platform "VmWare" /Silent
    
  8. Зарегистрируйте агент на устройстве репликации:

    cd C:\Program Files (x86)\Microsoft Azure Site Recovery\agent
    UnifiedAgentConfigurator.exe  /CSEndPoint <replication appliance IP address> /PassphraseFilePath <Passphrase File Path>
    

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

Screenshot of the Discovered servers option.

Подготовка исходных компьютеров

Чтобы подготовить исходные компьютеры, вам потребуется информация из кластера.

Внимание

  • Сохраняйте владение диском на всех этапах процесса репликации вплоть до окончательной прямой миграции. Если владелец диска изменяется, то есть вероятность повреждения томов и необходимости перезапуска репликации. Установите предпочтительного владельца для каждого диска, чтобы избежать передачи прав владения во время репликации.

  • Избегайте действий по исправлению и перезапусков системы во время процесса реплика tion, чтобы избежать передачи владения диском.

Для подготовки исходных компьютеров выполните следующие действия.

  1. Определение владельца диска: войдите в один из узлов кластера и откройте диспетчер отказоустойчивости кластеров. Определите узел владельца дисков, чтобы определить диски, которые необходимо перенести с каждого сервера.

  2. Получение сведений о кластере: выполните Get-ClusterInfo.ps1 сценарий на узле кластера, чтобы получить сведения о ресурсах кластера. Сценарий выводит имя роли, имя ресурса, IP-адрес и порт пробы в файле Cluster-Config.csv. Используйте этот CSV-файл для создания и назначения ресурсов в Azure, как описано далее в этой статье.

    ./Get-ClusterInfo.ps1
    

Создание подсистемы балансировки нагрузки

Чтобы кластер и роли кластера правильно отвечали на запросы, требуется подсистема балансировки нагрузки Azure. Без подсистемы балансировки нагрузки другим виртуальным машинам не удастся подключиться к IP-адресу кластера, так как он не распознается как принадлежащий сети или кластеру.

  1. Заполните столбцы в файле Cluster-Config.csv:

    Заголовок столбца Description
    NewIP Укажите IP-адрес в виртуальной сети Azure (или подсети) для каждого ресурса в CSV-файле.
    ServicePort Укажите порт службы, который будет использоваться каждым ресурсом в CSV-файле. Для кластерного ресурса SQL используйте то же значение для порта службы, что и для порта пробы в CSV-файле. Для других ролей кластера используется значение по умолчанию 1433, однако вы можете по-прежнему применять текущие настроенные номера портов.
  2. Запустите скрипт Create-ClusterLoadBalancer.ps1, чтобы создать подсистему балансировки нагрузки, используя следующие обязательные параметры.

    Параметр Тип Description
    ConfigFilePath Обязательный Укажите путь к файлу Cluster-Config.csv, который вы заполнили на предыдущем шаге.
    ResourceGroupName Обязательный Укажите имя группы ресурсов, в которой будет создана подсистема балансировки нагрузки.
    VNetName Обязательный Укажите имя виртуальной сети Azure, с которой будет связана подсистема балансировки нагрузки.
    SubnetName Обязательный Укажите имя подсети в виртуальной сети Azure, с которой будет связана подсистема балансировки нагрузки.
    VNetResourceGroupName Обязательный Укажите имя группы ресурсов в виртуальной сети Azure, с которой будет связана подсистема балансировки нагрузки.
    Местонахождение Обязательный Укажите расположение, в котором должна быть создана подсистема балансировки нагрузки.
    LoadBalancerName Обязательный Укажите имя создаваемой подсистемы балансировки нагрузки.
    ./Create-ClusterLoadBalancer.ps1 -ConfigFilePath ./cluster-config.csv -ResourceGroupName $resoucegroupname -VNetName $vnetname -subnetName $subnetname -VnetResourceGroupName $vnetresourcegroupname -Location "eastus" -LoadBalancerName $loadbalancername
    

Репликация компьютеров

Теперь выберите виртуальные машины для миграции. Можно реплицировать до 10 виртуальных машин за раз. Если требуется реплицировать большее число виртуальных машин, выполните одновременную репликацию в пакетах из 10 машин.

  1. В проекте "Миграция Azure" в разделе Серверы, Azure Migrate: Server Migration (Средство миграции сервера службы "Миграция Azure"), выберите Репликация.

    Screenshot of the Azure Migrate - Servers screen showing the Replicate button selected in Azure Migrate: Server Migration under Migration tools.

  2. В разделе Репликация, Параметры источника, Ваши компьютеры виртуализированы? выберите Physical or other (AWS, GCP, Xen, etc.) (Физическое или другое (AWS, GCP, Xen и т. д.)).

  3. В разделе Локальное устройство выберите имя устройства Миграции Azure, которое вы настроили.

  4. В разделе Сервер обработки выберите имя устройства репликации.

  5. В окне Учетные данные гостя выберите фиктивную учетную запись, созданную ранее во время установки установщика репликации. Затем выберите Далее: виртуальные машины.

    Screenshot of the Source settings tab in the Replicate screen with the Guest credentials field highlighted.

  6. В разделе Виртуальные машины на вкладке Импортировать параметры миграции из оценки? оставьте параметр по умолчанию No, I'll specify the migration settings manually (Нет, я укажу параметры миграции вручную).

  7. Проверьте каждую виртуальную машину, которую требуется перенести. Затем нажмите Далее: целевые параметры.

    Screenshot of the Select VMs option.

  8. В разделе Целевые параметры выберите подписку и целевой регион, в который вы хотите выполнить миграцию, а также укажите группу ресурсов, в которой будут находиться виртуальные машины Azure после миграции.

  9. В разделе Виртуальная сеть выберите виртуальную сеть или подсеть Azure, к которой будут подключены виртуальные машины Azure после миграции.

  10. В области Параметры доступности выберите следующие параметры.

    • Зона доступности, чтобы закрепить перенесенный компьютер в определенной зоне доступности в регионе. Используйте этот параметр для распределения серверов, образующих уровень приложения с несколькими узлами, по зонам доступности. Если вы выберете этот параметр, нужно будет указать зону доступности, чтобы использовать ее для каждого из выбранных компьютеров на вкладке "Вычисление". Этот параметр доступен только в том случае, если в целевом регионе, выбранном для миграции, поддерживаются зоны доступности.
    • Группа доступности, чтобы поместить перенесенную виртуальную машину в группу доступности. Чтобы использовать этот параметр, выбранная целевая группа ресурсов должна содержать одну или несколько групп доступности.
    • Параметр "Избыточность инфраструктуры не требуется", если вам не нужна ни одна из этих конфигураций доступности для перенесенных виртуальных машин.
  11. В разделе Disk encryption type (Тип шифрования диска) выберите один из следующих вариантов:

    • шифрование неактивных данных с помощью ключа, управляемого платформой;
    • шифрование неактивных данных с помощью ключа, управляемого клиентом.
    • Двойное шифрование с помощью ключей, управляемых платформой и управляемых клиентом

    Примечание.

    Чтобы реплицировать виртуальные машины с помощью CMK, вам потребуется создать набор шифрования дисков в целевой группе ресурсов. Объект набора шифрования дисков сопоставляет управляемые диски с Key Vault, где содержится CMK для использования в SSE.

  12. Для параметра Преимущество гибридного использования Azure

    • выберите вариант Нет, если вы не хотите применять Преимущество гибридного использования Azure. Затем выберите Далее.
    • Выберите вариант Да, если у вас есть компьютеры с Windows Server, на которые распространяются активные подписки Software Assurance или Windows Server, и вы хотите применить это преимущество к компьютерам, которые вы переносите. Затем выберите Далее.

    Screenshot of the Target settings option.

  13. В разделе Вычисление проверьте имя виртуальной машины, ее размер, тип диска ОС и конфигурацию доступности (если она выбрана на предыдущем шаге). Виртуальные машины должны соответствовать требованиям Azure.

    • Размер виртуальной машины. Если вы используете рекомендации по оценке, в раскрывающемся списке размеров виртуальных машин отобразится рекомендуемый размер. В противном случае Миграция Azure выбирает размер в зависимости от ближайшего совпадения в подписке Azure. В качестве альтернативы выберите размер вручную в разделе Размер виртуальной машины Azure.
    • Диск ОС. Укажите загрузочный диск ОС для виртуальной машины. Диск ОС — это диск с загрузчиком операционной системы и установщиком.
    • Зона доступности. Укажите используемую зону доступности.
    • Группа доступности. Укажите используемую группу доступности.

    Screenshot of the Compute settings option.

  14. В разделе Диски укажите, следует ли реплицировать диски виртуальных машин в Azure, и выберите тип диска (SSD или HDD (цен. категория "Стандартный") или управляемые диски (цен. категория "Премиум")) в Azure. Затем выберите Далее.

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

    Screenshot of the Disk settings option.

  15. В разделе Просмотр и запуск репликации проверьте настройки, а затем нажмите кнопку Реплицировать, чтобы запустить первоначальную репликацию для серверов.

Примечание.

Вы можете обновить параметры репликации в любое время до начала репликации в разделе Управление>Репликация компьютеров. Настройки невозможно изменить после начала репликации.

Отслеживание и мониторинг

Репликация продолжается в следующем порядке.

  • Когда вы нажимаете кнопку Репликация, начинается выполнение задания Запуск репликации.
  • После успешного завершения задания Запуск репликации компьютеры начинают первоначальную репликацию в Azure.
  • После завершения начальной репликации начинается разностная репликация. Добавочные изменения локальных дисков периодически реплицируются на диски реплики в Azure.
  • После завершения начальной репликации следует настроить элементы вычислений и элементы сети для каждой виртуальной машины. Кластеры обычно имеют несколько сетевых адаптеров, но для миграции требуется только один из них (установите для остальных адаптеров значение "Не создавать").

Отслеживать состояние задания можно в уведомлениях портала.

Вы можете отслеживать состояние репликации, щелкнув Репликация серверов в разделе Миграция Azure: миграция сервера.

Screenshot of the Monitor replication option.

Перенос виртуальных машин

После репликации компьютеры готовы к миграции. Для переноса серверов выполните следующие действия.

  1. В проекте "Миграция Azure" щелкните Серверы, Azure Migrate: Server Migration (Средство миграции сервера службы "Миграция Azure"), и выберите Репликация серверов.

    Screenshot of the Replicating servers option.

  2. Чтобы убедиться, что перенесенный сервер синхронизирован с исходным, закройте ресурс SQL Server (в разделе Диспетчер отказоустойчивости кластеров>Роли>Другие ресурсы) и убедитесь, что диски кластера подключены к сети.

  3. На компьютерах> с репликацией выберите обзор имени >сервера, убедитесь, что после того, как вы остановили ресурс SQL Server на серверах, которые необходимо перенести, прежде чем перейти к следующему шагу, убедитесь, что после последнего синхронизированного метки времени. Это займет не более нескольких минут.

  4. В области Репликация компьютеров щелкните правой кнопкой мыши виртуальную машину и выберите Миграция.

  5. В разделе Миграция>Завершить работу виртуальных машин и выполнить запланированную миграцию без потери данных? выберите вариант Нет>ОК.

    Примечание.

    При переносе физического сервера автоматическое завершение работы исходного компьютера не поддерживается. Рекомендуется перевести приложение в окно миграции (не позволяя приложениям принимать подключения), а затем инициировать миграцию (сервер должен продолжать работу, чтобы оставшиеся изменения можно было синхронизировать) до завершения процесса.

  6. Запустится задание миграции виртуальной машины. Отслеживайте задание в уведомлениях Azure.

  7. После завершения работы вы можете просматривать виртуальную машину и управлять ею на странице Виртуальные машины.

Изменение настройки кластера

После переноса виртуальных машин перенастройте кластер. Выполните следующие действия:

  1. Завершите работу перенесенных серверов в Azure.

  2. Добавьте перенесенные виртуальные машины в серверный пул подсистемы балансировки нагрузки. Перейдите к пулам серверной части Load Balancer>.

  3. Выберите внутренний пул и добавьте перенесенные компьютеры.

  4. Перенастройте перенесенные диски серверов как общие диски, выполнив скрипт Create-SharedDisks.ps1. Скрипт является интерактивным. Он запросит список компьютеров, а затем отобразит доступные диски для извлечения (только диски данных). Вам будет предложено выбрать компьютеры, которые содержат диски для включения в общие диски. После этого отобразится запрос на выбор конкретных дисков на каждом компьютере.

    Параметр Тип Description
    ResourceGroupName Обязательный Укажите имя группы ресурсов, которая содержит перенесенные серверы.
    NumberofNodes Необязательно Укажите количество узлов в экземпляре отказоустойчивого кластера. Этот параметр используется, чтобы указать правильный номер SKU для создаваемых общих дисков. По умолчанию скрипт предполагает, что количество узлов в кластере равно 2.
    DiskNamePrefix Необязательно Укажите префикс, который нужно добавить к именам общих дисков.
    ./Create-SharedDisks.ps1 -ResourceGroupName $resoucegroupname -NumberofNodes $nodesincluster -DiskNamePrefix $disknameprefix
    
  5. Подключите общие диски к перенесенным серверам, запустив скрипт Attach-SharedDisks.ps1.

    Параметр Тип Description
    ResourceGroupName Обязательный Укажите имя группы ресурсов, которая содержит перенесенные серверы.
    StartingLunNumber Необязательно Укажите начальный номер LUN, доступный для присоединения общих дисков. По умолчанию скрипт пытается присоединить общие диски к устройствам с логическими номерами, начиная с 0.
    ./Attach-ShareDisks.ps1 -ResourceGroupName $resoucegroupname
    
  6. Запустите перенесенные серверы в Azure и войдите на любой узел.

  7. Скопируйте файл Cluster-Config.csv, запустите скрипт Update-ClusterConfig.ps1 и передайте CSV в качестве параметра. Это обеспечит обновление ресурсов кластера с использованием новой конфигурации, чтобы обеспечить работу кластера в Azure.

    ./Update-ClusterConfig.ps1 -ConfigFilePath $filepath
    

Экземпляр отказоустойчивого кластера SQL Server готов к работе.

Выполнение переноса

  1. После завершения миграции щелкните правой кнопкой мыши виртуальную машину и выберите Остановить миграцию. Это делает следующее:
    • Остановите репликацию для локального компьютера.
    • Удалите компьютер из списка Репликация серверов в средстве миграции сервера службы "Миграция Azure".
    • Очистите информацию о состоянии репликации для компьютера.
  2. Установите агент виртуальной машины Azure для Windows на перенесенных компьютерах.
  3. Выполните любые действия по настройке после миграции приложения, такие как обновление строк подключения к базе данных и конфигурация веб-сервера.
  4. Выполните приемочное тестирование конечного приложения и миграции на перенесенном приложении, работающем в Azure.
  5. Остановите трафик для перенесенного экземпляра виртуальной машины Azure.
  6. Удалите локальные виртуальные машины из списка локальных виртуальных машин.
  7. Удалите локальные виртуальные машины из локальных заданий резервного копирования.
  8. Обновите внутренние документы и отразите в них новое расположение и IP-адреса виртуальных машин Azure.

Рекомендации, выполняемые после миграции

  • Для SQL Server:
    • Установите SQL Server расширение агента IaaS, чтобы автоматизировать задачи управления и администрирования. Расширение агента IaaS SQL поддерживает только ограниченные функциональные возможности в отказоустойчивых экземплярах SQL Server.
    • Оптимизация производительности SQL Server на виртуальных машинах Azure.
    • Общие сведения о ценах на SQL Server в Azure.
  • Для повышения безопасности:
  • Для мониторинга и управления:

Следующие шаги