Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Вы можете переместить DevTest Labs и связанные с ними расписания в другой регион или группу ресурсов. Группы ресурсов можно перемещать на портале Azure. Чтобы переместить лабораторию, создайте копию существующей лаборатории в другом регионе. При перемещении лаборатории и наличии виртуальной машины в целевом регионе можно переместить расписания лаборатории.
В этой статье вы узнаете, как:
- Перемещение ресурсов в разные группы ресурсов.
- Экспорт шаблона Azure Resource Manager (ARM) для вашей лаборатории.
- Измените шаблон, добавив или обновив целевой регион и другие параметры.
- Используйте шаблон для создания новой лаборатории в целевом регионе.
- Настройте новую лабораторию.
- Переместите данные в новую лабораторию.
- Переместите расписания в новую лабораторию.
- Удаление ресурсов в исходном регионе.
Предварительные условия
Убедитесь, что службы и функции, используемые вашей учетной записью, поддерживаются в целевом регионе.
Если используются функции предварительного просмотра, убедитесь, что ваша подписка включена в список разрешённых для целевого региона.
DevTest Labs не сохраняет или не предоставляет пароли из экспортированного шаблона ARM. Вам нужно знать пароли и секреты:
- эти виртуальные машины
- сохраненных секретов;
- Токены PAT закрытых артефактных репозиториев для перемещения частных репозиториев вместе с лабораторией.
При перемещении расписания лаборатории убедитесь, что виртуальная машина вычислений существует в целевом регионе.
Перемещение лаборатории
В следующем разделе описывается перемещение ресурсов в другую группу ресурсов и создание и настройка шаблона ARM для перемещения лаборатории из одного региона в другой.
Расписание можно переместить без перемещения лаборатории, если у вас есть виртуальная машина в целевом регионе. Если вы хотите переместить расписание без перемещения лаборатории, см . раздел "Переместить расписание".
Перемещение групп ресурсов с помощью портала Azure
Перемещение ресурсов между группами ресурсов в разных расположениях теперь легко включено в DevTest Labs. Вы можете легко перенести любой ресурс из одной группы в другую в той же подписке.
Чтобы начать, выберите ресурс, который вы хотите переместить. На странице обзора ресурса вы найдете текущую группу ресурсов, отображаемую вверху. Рядом с именем группы ресурсов вы увидите слово (move) в скобках.
Щелкните гиперссылочный move текст, которая перенаправит вас на новую страницу, где можно переместить ресурс в любую другую группу ресурсов в той же подписке. Обратите внимание, что перемещение ресурса не изменит его расположение, даже если целевая группа ресурсов находится в другом расположении. Если вы не перемещаете ресурсы через портал Azure или передаете в группу ресурсов в другой подписке, альтернативные методы, использующие ARM, описаны ниже.
Перемещение лабораторий в другой регион
При перемещении лаборатории необходимо выполнить некоторые действия, чтобы подготовиться к перемещению. Вам нужно:
- Подготовка виртуальной сети
- Экспорт арм-шаблона лаборатории
- Изменение шаблона
- Развернуть шаблон, чтобы переместить лабораторию
- Настройка новой лаборатории
- Переключение дисков ОС виртуальных машин вычислений на новые виртуальные машины
- Очистка исходной лаборатории
Подготовка виртуальной сети
Чтобы приступить к работе, экспортируйте и измените шаблон Resource Manager.
Войдите на портал Azure.
Если у вас нет Группы ресурсов в целевом регионе, создайте ее.
Переместите текущую виртуальная сеть в новый регион и группу ресурсов, выполнив действия, описанные в статье "Перемещение виртуальной сети Azure в другой регион".
Кроме того, можно создать новую виртуальную сеть, если вам не нужно ничего делать с исходной.
Экспортировать лабораторный шаблон ARM
Затем вы экспортируете шаблон JSON, содержащий параметры, описывающие лабораторию.
Чтобы экспортировать шаблон с помощью портала Azure:
Выберите Все ресурсы, а затем выберите группу ресурсов для лаборатории.
Выберите Экспортировать шаблон.
Выберите " Скачать " в шаблоне экспорта.
Найдите скачанный c портала ZIP-файл и распакуйте его в любую выбранную папку.
В ZIP-файле содержатся JSON-файлы, содержащие шаблон и скрипты для развертывания шаблона. Он содержит все ресурсы лаборатории, перечисленные в формате шаблона ARM, за исключением ресурсов общей коллекции образов.
Изменение шаблона
Чтобы шаблон ARM был правильно развернут в новом регионе, необходимо изменить несколько его частей.
Чтобы обновить шаблон с помощью портала Azure, выполните следующие действия.
На портале Azure выберите Создать ресурс.
В строке Поиск в Marketplace введите развертывание шаблона и нажмите клавишу ВВОД.
Выберите Развертывание шаблона.
Нажмите кнопку создания.
Выберите Создать собственный шаблон в редакторе.
Выберите Загрузить файл и следуйте инструкциям, чтобы загрузить файл template.json, скачанный в предыдущем разделе.
В редакторе внесите следующие изменения в файл template.json:
Замените оригинал
locationна новый регион, в котором требуется выполнить развертывание, напримерwestus2,southeastasiaи т. д. Чтобы получить коды расположения регионов, см. раздел Расположения Azure. Код региона — это имя региона без пробелов, например Центральная часть США =centralus."variables": {}, "resources": [ { "type": "microsoft.devtestlab/labs", "location": "centralus",Если у вас есть параметр "Все виртуальные машины в одной группе ресурсов" в разделе "Параметры лаборатории", также обновите следующие значения в шаблоне ARM:
- Измените значение
apiVersionресурсаmicrosoft.devtestlab/labsна2018-10-15-preview. - Добавьте
vmCreationResourceGroupIdв разделproperties.
"variables": {}, "resources": [ { "type": "microsoft.devtestlab/labs", "apiVersion": "2018-10-15-preview", "name": "[parameters('labs_lj_dtl_rgsettings_name')]", "location": "<regionName>", "properties": { "vmCreationResourceGroupId": "/subscriptions/<subscriptionID>/resourceGroups/<myResourceGroup>", "labStorageType": "Premium",- Измените значение
Найдите ресурс
"type": "microsoft.devtestlab/labs/users". Удалите весь разделsecretStore, включая параметрыkeyVaultldиkeyVaultUri.secretStore": { "keyVaultUri": "<vaultvalue>" "keyVaultld": "<id>" }Найдите ресурс
"type": "microsoft.devtestlab/labs/virtualnetworks". Если вы создали виртуальную сеть ранее на этих этапах, необходимо добавить фактическое имя подсети в/subnets/[SUBNET_NAME]. Если вы решили переместить виртуальную сеть в новый регион, пропустите этот шаг.Найдите ресурс
"type": "microsoft.devtestlab/labs/virtualmachines".В разделе "Свойства" добавьте
"password": "RANDOM_PASSWORD"Примечание.
Для создания новой виртуальной машины требуется свойство "пароль". Мы вводим случайный пароль, так как в дальнейшем мы заменим диск ОС на исходную виртуальную машину.
Для виртуальных машин с общим IP-адресом добавьте этот фрагмент кода в раздел "properties.networkInterface",
Виртуальная машина Windows с RDP:
"networkInterface": { "sharedPublicIpAddressConfiguration": { "inboundNatRules": [ { "transportProtocol": "tcp", "backendPort": 3389 } ] } }Виртуальная машина Linux с SSH:
"networkInterface": { "sharedPublicIpAddressConfiguration": { "inboundNatRules": [ { "transportProtocol": "tcp", "backendPort": 22 } ] } }
В разделе ресурсов
microsoft.devtestlab/labs/users/secretsниже приведен параметр "свойства". заменивYOUR_STORED_PASSWORDсобственным паролем;Внимание
Используйте secureString для значений паролей.
"value": "YOUR_STORED_PASSWORD"В ресурсах
microsoft.devtestlab/labs/artifactsourcesуказан следующий параметр: "свойства". заменивYOUR_STORED_PASSWORDсобственным паролем; Снова используйте secureString для значений паролей."securityToken": "YOUR_PAT_TOKEN_VALUE"В редакторе сохраните шаблон.
Развернуть шаблон, чтобы переместить лабораторию
Используйте шаблон для создания новой лаборатории в целевом регионе.
На странице Настраиваемое развертывание обновите все параметры с соответствующими значениями, определенными в шаблоне.
Введите следующие значения:
Имя. Значение Подписка Выберите подписку Azure. Группа ресурсов Выберите имя группы ресурсов, созданной в предыдущем разделе. Местонахождение Выберите расположение для лаборатории. Например, центральная часть США. Имя лаборатории Имя должно быть другим. Идентификатор виртуальной сети Должно быть, тот, который был перемещен, или новый, который вы создали. Выберите Просмотреть и создать.
Нажмите кнопку создания.
Чтобы просмотреть состояние развертывания, щелкните значок колокольчика (уведомления) в верхней части экрана. Появится уведомление Выполняется развертывание. Подождите, пока развертывание завершится.
Настройка новой лаборатории
Хотя большинство ресурсов лаборатории были реплицированы в новом регионе с помощью шаблона ARM, некоторые изменения по-прежнему нужно перемещать вручную.
- Добавьте Compute Gallery обратно в лабораторию, если они есть в исходной версии.
- Добавьте политики "Виртуальные машины на пользователя", "Виртуальные машины на лабораторию" и "Разрешенные размеры виртуальных машин" обратно в перемещенную лабораторию.
Переключение дисков ОС виртуальных машин вычислений на новые виртуальные машины
Обратите внимание, что виртуальные машины в новой лаборатории имеют те же характеристики, что и в старой лаборатории. Единственное отличие заключается в их дисках операционной системы.
Создайте пустой диск в новом регионе.
Найдите имя целевого диска ОС виртуальной машины в новой лаборатории. Вы можете найти виртуальную машину вычислений и его диск в группе ресурсов на странице виртуальной машины лаборатории.
Используйте AzCopy, чтобы скопировать старое содержимое диска в новые или пустые диски в новом регионе. Вы можете выполнять команды PowerShell из Dev Box или из Azure Cloud Shell.
AzCopy — это предпочтительное средство для перемещения данных. Он оптимизирован для производительности. Одним из способов ускорения является непосредственное копирование данных, чтобы AzCopy не использовало пропускную способность сети компьютера. Используйте AzCopy в командной строке или в составе пользовательского сценария. См. Начало работы с AzCopy.
# Fill in the source/target disk names and their resource group names $sourceDiskName = "SOURCE_DISK" $sourceRG = "SOURCE_RG" $targetDiskName = "TARGET_DISK" $targetRG = "TARGET_RG" $targetRegion = "TARGET_LOCATION" # Create an empty target disk from the source disk $sourceDisk = Get-AzDisk -ResourceGroupName $sourceRG -DiskName $sourceDiskName $targetDiskconfig = New-AzDiskConfig -SkuName $sourceDisk.Sku.Name -UploadSizeInBytes $($sourceDisk.DiskSizeBytes+512) -Location $targetRegion -OsType $sourceDisk.OsType -CreateOption 'Upload' $targetDisk = New-AzDisk -ResourceGroupName $targetRG -DiskName $targetDiskName -Disk $targetDiskconfig # Copy the disk content from source to target $sourceDiskSas = Grant-AzDiskAccess -ResourceGroupName $sourceRG -DiskName $sourceDiskName -DurationInSecond 1800 -Access 'Read' $targetDiskSas = Grant-AzDiskAccess -ResourceGroupName $targetRG -DiskName $targetDiskName -DurationInSecond 1800 -Access 'Write' azcopy copy $sourceDiskSas.AccessSAS $targetDiskSas.AccessSAS --blob-type PageBlob Revoke-AzDiskAccess -ResourceGroupName $sourceRG -DiskName $sourceDiskName Revoke-AzDiskAccess -ResourceGroupName $targetRG -DiskName $targetDiskNameПосле этого в новом регионе появится новый диск.
- Замените диск ОС виртуальной машины в новой лаборатории на новый диск. Дополнительные сведения см. в статье "Изменение диска ОС, используемого виртуальной машиной Azure, с помощью PowerShell".
Перемещение расписания
Существуют следующие два способа переноса расписания.
- Повторное создание расписаний вручную на перенесенных виртуальных машинах. Этот процесс может занять много времени и сопровождаться ошибками. Этот метод подходит при наличии нескольких расписаний и виртуальных машин.
- Экспорт и повторное развертывание расписаний с помощью шаблонов ARM.
Выполните следующие действия, чтобы экспортировать и повторно развернуть расписание в другом регионе Azure с помощью шаблона ARM.
Войдите на портал Azure.
Перейдите в исходную группу ресурсов, которая содержала виртуальные машины.
На странице Обзор группы ресурсов в разделе Ресурсы выберите Показать скрытые типы.
Выберите все ресурсы с типом microsoft.devtestlab/schedules.
Выберите Экспортировать шаблон.
На странице Экспортировать шаблон группы ресурсов выберите Развернуть.
На странице Пользовательское развертывание выберите Изменить шаблон.
В коде шаблона измените все экземпляры
"location": "<old location>"на"location": "<new location>"и нажмите кнопку Сохранить.На странице Пользовательское развертывание введите значения, соответствующие целевой виртуальной машине:
Имя. Значение Подписка Выберите подписку Azure. Группа ресурсов Выберите имя группы ресурсов. Регион Выберите расположение для расписания лаборатории. Например, центральная часть США. Имя расписания Должно быть глобально уникальное имя. VirtualMachine_xxx_externalId Должна быть целевая виртуальная машина.
Внимание
Каждое расписание должно иметь глобально уникальное имя; необходимо изменить имя расписания для нового расположения.
Выберите Проверить и создать, чтобы выполнить развертывание.
После завершения развертывания убедитесь, что новое расписание правильно настроено на новой виртуальной машине.
Отмена или очистка
Если после развертывания нужно начать заново, можно удалить лабораторию и повторить действия, описанные в разделах Подготовка и Перемещение этой статьи.
Чтобы зафиксировать изменения и завершить перемещение, необходимо удалить исходную лабораторию.
Чтобы удалить лабораторию с помощью портала Azure:
На портале Azure разверните меню слева, чтобы открыть меню служб, и выберите Лаборатории DevTest, чтобы просмотреть список лабораторий.
Найдите целевую лабораторию, которую нужно удалить, и щелкните правой кнопкой мыши кнопку Дополнительно (...) справа от списка.
Выберите Удалить и подтвердите действие.
Вы также можете очистить исходные расписания, если они больше не используются. Перейдите к исходной группе ресурсов расписания (где вы экспортировали шаблоны из шага 5 выше) и удалите ресурс расписания.
Следующие шаги
В этой статье вы переместили DevTest Labs из одного региона в другой и очистили исходные ресурсы. Дополнительные сведения о перемещении ресурсов между регионами и аварийном восстановлении в Azure см. по следующей ссылке: