Поделиться через


Перенос группы доступности в SQL Server на виртуальной машине Azure

Применимо к:SQL Server on Azure Virtual Machines

В этой статье описано, как перенести группу доступности Always On SQL Server на SQL Server на виртуальных машинах Azure с помощью Azure Migrate: Server Migration tool. С помощью средства миграции можно мигрировать каждую реплику в группе доступности на виртуальной машине Azure, которая размещает SQL Server, вместе с метаданными кластера, метаданными группы доступности и другими необходимыми компонентами высокой доступности.

В этой статье вы узнаете, как:

  • Подготовьте Azure и исходную среду для миграции.
  • Запуск репликации серверов.
  • Мониторинг репликации.
  • Запуск полного переноса сервера.
  • Изменение настроек группы доступности Always On.

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

Предварительные требования

Следует выполнить следующие предварительные требования перед началом работы с этим учебником.

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

Подготовьте Azure

Подготовьте Azure для миграции с помощью средства миграции Server Migration.

Задача Сведения
Создайте проект Azure Migrate Для учетной записи Azure требуются разрешения участника или владельца для создания нового проекта.
Проверьте разрешения для вашей учетной записи Azure Для учетной записи Azure требуются следующие разрешения для создания Key Vault, создания виртуальной машины и записи на управляемый диск Azure: разрешения участника или владельца в подписке Azure, разрешения на регистрацию приложений в Идентификаторе Microsoft Entra (ранее — Azure Active Directory) и разрешения администратора доступа пользователей в подписке Azure.
Настройка виртуальной сети Azure Настройте виртуальную сеть Azure. При репликации в Azure виртуальные машины Azure создаются и подключаются к виртуальной сети Azure, которую вы указываете при настройке миграции.

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

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

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

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

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

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

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

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

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

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

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

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

  • Создайте Windows Server 2016 компьютер для размещения устройства репликации. Просмотрите требования к компьютеру.
  • Модуль репликации использует MySQL. Проверьте параметры для установки MySQL в модуле.
  • Просмотрите URL-адреса Azure, необходимые для устройства репликации для доступа к облакам public и government.
  • Проверьте требования к доступу к портам для устройства репликации.

Примечание.

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

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

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

  1. В проекте Azure Migrate >Servers в Azure Migrate: Миграция сервера выберите Discover.

    Снимок экрана: параметр

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

  3. В регионе Target выберите регион Azure, в который требуется перенести компьютеры.

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

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

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

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

    Снимок экрана: поставщик загрузки.

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

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

    • "гость" как дружественное имя
    • «username» в поле имени пользователя.
    • Используйте "password" в качестве пароля для учетной записи.

    Эта фиктивная учетная запись используется на этапе включения репликации.

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

    Снимок экрана: параметр

Установка Mobility service

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

Чтобы установить Mobility service, выполните следующие действия.

  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 Migrate: Server Migration. При обнаружении виртуальных машин количество обнаруженных серверов увеличивается.

Снимок экрана: обнаруженные серверы.

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

Для подготовки исходных компьютеров выполните скрипт Get-ClusterInfo.ps1 на узле кластера, чтобы получить сведения о ресурсах кластера. Скрипт выводит имя роли, имя ресурса, IP-адрес и порт пробы Cluster-Config.csv в файле.

./Get-ClusterInfo.ps1

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

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

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

  1. Заполните столбцы в файле Cluster-Config.csv:
Заголовок столбца Описание
NewIP Укажите IP-адрес в виртуальной сети Azure (или подсети) для каждого ресурса в CSV-файле.
ServicePort Укажите порт службы, который будет использоваться каждым ресурсом в CSV-файле. Для кластерного ресурса SQL используйте то же значение для порта службы, что и для порта пробы в CSV-файле. Для других ролей кластера используется значение по умолчанию 1433, однако вы можете по-прежнему применять текущие настроенные номера портов.
  1. Запустите скрипт Create-ClusterLoadBalancer.ps1, чтобы создать подсистему балансировки нагрузки, используя следующие параметры.
Параметр Тип Описание
ConfigFilePath Обязательно Укажите путь для Cluster-Config.csv файла, заполненного на предыдущем шаге.
ResourceGroupName Обязательно Укажите имя группы ресурсов, в которой будет создана подсистема балансировки нагрузки.
VNetName Обязательно Укажите имя виртуальной сети Azure, с которым должна быть связана подсистема балансировки нагрузки.
SubnetName Обязательно Укажите имя подсети в виртуальной сети Azure, с которым должна быть связана подсистема балансировки нагрузки.
VNetResourceGroupName Обязательно Укажите имя группы ресурсов для виртуальной сети Azure, с которым должна быть связана подсистема балансировки нагрузки.
Location Обязательно Укажите расположение, в котором должна быть создана подсистема балансировки нагрузки.
LoadBalancerName Обязательно Укажите имя создаваемой подсистемы балансировки нагрузки.
./Create-ClusterLoadBalancer.ps1 -ConfigFilePath ./cluster-config.csv -ResourceGroupName $resourcegroupname -VNetName $vnetname -subnetName $subnetname -VnetResourceGroupName $vnetresourcegroupname -Location "eastus" -LoadBalancerName $loadbalancername

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

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

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

  1. В проекте Azure Migrate >Servers, Azure Migrate: Миграция сервера выберите Replicate.

    Скриншот экрана Azure Migrate —

  2. В Репликация, >настройках источника>Ваши машины виртуализированы?, выберите Физическое или другое (AWS, GCP, Xen и т. д.).

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

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

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

    Снимок экрана: вкладка

  6. В Virtual Machines в разделе Импортировать параметры миграции из оценки? оставьте параметр по умолчанию Нет, я укажу параметры миграции вручную.

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

    Снимок экрана: параметр выбора виртуальных машин.

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

  9. В Virtual Network выберите Azure virtual network/подсеть, к которой будут присоединены Azure виртуальные машины после миграции.

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

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

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

    Примечание.

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

  12. В Azure Hybrid Benefit:

    • Выберите No если вы не хотите применять Azure Hybrid Benefit. Затем выберите Далее.
    • Выберите Yes, если у вас есть серверы Windows, которые имеют активные подписки Software Assurance или Windows Server, и вы хотите применить преимущество к серверам, которые вы собираетесь переносить. Затем выберите Далее.

    Снимок экрана: параметры целевого объекта.

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

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

    Снимок экрана: параметры вычислений.

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

    Снимок экрана: параметры диска.

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

Примечание.

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

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

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

  • Когда вы нажимаете кнопку Репликация, начинается выполнение задания Запуск репликации.
  • Когда задание Start Replication успешно завершится, компьютеры начинают начальную репликацию до Azure.
  • После завершения начальной репликации начинается разностная репликация. Инкрементальные изменения локальных дисков периодически реплицируются в диски-реплики в Azure.

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

Вы можете отслеживать состояние репликации, выбрав Replicating server в Azure Migrate: миграция сервера.

Снимок экрана, на котором показана репликация монитора.

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

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

  1. В проекте Azure Migrate >Servers>Azure Migrate: Миграция серверов выберите серверы репликации.

    Снимок экрана: параметр

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

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

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

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

    Примечание.

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

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

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

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

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

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

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

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

  4. Запустите перенесенные серверы в Azure и войдите на любой узел.

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

    ./Update-ClusterConfig.ps1 -ConfigFilePath $filepath
    

Ваша группа доступности Always On готова.

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

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

Лучшие практики после миграции

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