Mover agendamentos e DevTest Labs
Você pode mover o DevTest Labs e os agendamentos associados para outra região ou grupo de recursos. Você pode mover grupos de recursos por meio do portal do Azure. Para mover um laboratório, crie uma cópia de um laboratório existente em outra região. Quando você tiver movido o laboratório e tiver uma VM (máquina virtual) na região de destino, poderá mover seus agendamentos de laboratório.
Neste artigo, você aprenderá como:
- Mover recursos para diferentes grupos de recursos.
- Exportar um modelo do ARM (Azure Resource Manager) de seu laboratório.
- Modificar o modelo adicionando ou atualizando a região de destino e outros parâmetros.
- Implantar o modelo para criar um laboratório na região de destino.
- Configurar o novo laboratório.
- Mover dados para o novo laboratório.
- Transferir as programações para o novo laboratório.
- Exclua os recursos na região de origem.
Pré-requisitos
Verifique se os serviços e recursos que sua conta usa têm suporte na região de destino.
Para obter as versões prévias do recurso, verifique se sua assinatura está incluída na lista de permitidos para a região de destino.
O DevTest Labs não armazena nem expõe as senhas do modelo do ARM exportado. Você saber as senhas/segredos de:
- VMs
- segredos armazenados
- Tokens PAT dos repositórios de artefatos privados para movê-los junto com o laboratório.
Ao mover um agendamento de laboratório, verifique se existe uma VM de computação na região de destino.
Mover um laboratório
A seção a seguir descreve como mover recursos para um grupo de recursos diferente e criar e personalizar um modelo do ARM para mover um laboratório de uma região para outra.
Você pode mover uma agenda sem mover um laboratório, se tiver uma VM na região de destino. Se você quiser mover uma agenda sem mover um laboratório, consulte Mover uma agenda.
Mover grupos de recursos usando o portal do Azure
A movimentação de recursos entre grupos de recursos em locais diferentes já está totalmente habilitada no DevTest Labs. Você pode transferir sem dificuldade qualquer recurso de um grupo para outro na mesma assinatura.
Para começar, selecione o recurso que deseja mover. Na página Visão geral do recurso, você encontrará o grupo de recursos atual exibido na parte superior. Ao lado do nome do grupo de recursos, você verá a palavra (move)
entre parênteses.
Clique no texto move
com hiperlink, que direcionará você para uma nova página na qual poderá relocar o recurso para qualquer outro grupo de recursos na mesma assinatura. Observe que a movimentação do recurso não vai alterar a localização dele, mesmo que o grupo de recursos de destino esteja em outra localização. Se você não estiver movendo recursos por meio do portal do Azure ou se estiver os transferindo para um grupo de recursos em uma assinatura diferente, os métodos alternativos que usam o ARM serão descritos abaixo.
Mover laboratórios para outra região
Ao mover um laboratório, há algumas etapas que você deve seguir para se preparar para a mudança. Você precisa:
- Preparar a rede virtual
- Exportar um modelo do ARM do laboratório
- Modificar o modelo
- Implantar o modelo para mover o laboratório
- Configurar o novo laboratório
- Troque os discos do sistema operacional das VMs de Computação nas novas VMs
- Limpar o laboratório original
Preparar a Rede Virtual
Para começar, exporte e modifique um modelo do Resource Manager.
Entre no portal do Azure.
Se você não tiver o Grupo de Recursos na região de destino, crie um agora.
Mova a rede virtual atual para a nova região e grupo de recursos usando as etapas incluídas no artigo "Mover uma rede virtual do Azure para outra região".
Como alternativa, você pode criar uma rede virtual se não precisar manter a original.
Exportar um modelo do ARM do laboratório
Em seguida, o senhor exporta um modelo JSON que contém configurações que descrevem o laboratório.
Para exportar um modelo com o portal do Azure:
Selecione Todos os recursos e o grupo de recursos para o laboratório.
Selecione Exportar modelo.
Escolha Baixar em Exportar modelo.
Localize o arquivo .zip que você baixou do portal e descompacte-o na pasta desejada.
Esse arquivo zip contém os arquivos .json que consistem no modelo e nos scripts para implantar o modelo. Ele contém todos os recursos em seu laboratório listados no formato de modelo do ARM, exceto pelos recursos da Galeria de Imagens Compartilhadas.
Modificar o modelo
Para que o modelo do ARM seja implantado corretamente na nova região, você precisa alterar algumas partes do modelo.
Para atualizar o modelo usado o portal do Azure:
No portal do Azure, selecione Criar um recurso.
Em Pesquisar no Marketplace, digite implantação de modelo e pressione ENTER.
Selecione Implantação de modelo.
Selecione Criar.
Selecione Criar seu próprio modelo no editor.
Selecione Carregar arquivo e em seguida siga as instruções para carregar o arquivo de modelo.json baixado na última seção.
No editor, faça as seguintes alterações no arquivo template.json:
Substitua o
location
original pela nova região na qual você deseja implantar, comowestus2
,southeastasia
etc. Para obter códigos de localização de região, consulte Locais do Azure. O código de uma região é o nome da região sem espaços, por exemplo, EUA Central =centralus
."variables": {}, "resources": [ { "type": "microsoft.devtestlab/labs", "location": "centralus",
Se você tiver "Todas as máquinas virtuais em um grupo de recursos" definido nas "Configurações do laboratório", também atualize os seguintes valores no modelo do ARM:
- Atualize o
apiVersion
do recursomicrosoft.devtestlab/labs
para2018-10-15-preview
. - Adicione
vmCreationResourceGroupId
à seçãoproperties
.
"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",
- Atualize o
Encontre o recurso
"type": "microsoft.devtestlab/labs/users"
. Nele, remova toda a seçãosecretStore
, incluindo os parâmetroskeyVaultld
ekeyVaultUri
.secretStore": { "keyVaultUri": "<vaultvalue>" "keyVaultld": "<id>" }
Encontre o recurso
"type": "microsoft.devtestlab/labs/virtualnetworks"
. Se você criou uma rede virtual anteriormente nessas etapas, deverá adicionar o nome da sub-rede real em/subnets/[SUBNET_NAME]
. Se o senhor optar por mover a rede virtual para uma nova região, deve pular esta etapa.Encontre o recurso
"type": "microsoft.devtestlab/labs/virtualmachines"
.Em "propriedades", adicione
"password": "RANDOM_PASSWORD"
Observação
Uma propriedade de "senha" é necessária para criar uma VM. Inserimos uma senha aleatória porque, posteriormente, trocaremos o disco do sistema operacional pela VM original.
Para máquinas virtuais com IP compartilhado, adicione este snippet em "properties.networkInterface",
VM Windows com RDP:
"networkInterface": { "sharedPublicIpAddressConfiguration": { "inboundNatRules": [ { "transportProtocol": "tcp", "backendPort": 3389 } ] } }
VM Linux com SSH:
"networkInterface": { "sharedPublicIpAddressConfiguration": { "inboundNatRules": [ { "transportProtocol": "tcp", "backendPort": 22 } ] } }
Nos recursos
microsoft.devtestlab/labs/users/secrets
, o parâmetro a seguir nas "propriedades". SubstituaYOUR_STORED_PASSWORD
pela sua senha.Importante
Use secureString para os valores de senha.
"value": "YOUR_STORED_PASSWORD"
Nos recursos
microsoft.devtestlab/labs/artifactsources
, o parâmetro a seguir nas "propriedades". SubstituaYOUR_STORED_PASSWORD
pela sua senha. Novamente, use secureString para os valores de senha."securityToken": "YOUR_PAT_TOKEN_VALUE"
No editor, salve o modelo.
Implantar o modelo para mover o laboratório
Implante o modelo para criar um laboratório na região de destino.
Na página Implantação personalizada, atualize todos os parâmetros com os valores correspondentes definidos no modelo.
Insira os valores a seguir:
Nome Valor Assinatura Selecione uma assinatura do Azure. Grupo de recursos Selecione o nome do grupo de recursos criado na última seção. Localidade Selecione um local para o laboratório. Por exemplo, Centro dos EUA. Nome do laboratório Deve ser um nome diferente. ID da Vnet Deve ser a que foi movida ou a nova que você criou. Selecione Examinar + criar.
Selecione Criar.
Selecione o ícone de sino (notificações) na parte superior da tela para ver o status da implantação. Você deverá ver a mensagem Implantação em andamento. Aguarde até a conclusão da implantação.
Configurar o novo laboratório
Embora a maioria dos recursos de laboratório tenha sido replicada na nova região usando o modelo do ARM, algumas edições ainda precisam ser movidas manualmente.
- Adicione a Galeria de Computação de volta ao laboratório, se houver alguma no original.
- Adicione as políticas de "Máquinas virtuais por usuário", "Máquinas virtuais por laboratório" e "Tamanhos de máquina virtual permitidos" de volta ao laboratório movido
Troque os discos do sistema operacional das VMs de Computação nas novas VMs
Observe que as VMs no novo laboratório têm as mesmas especificações que as do laboratório antigo. A única diferença são os discos do sistema operacional.
Crie um disco vazio na nova região.
Obtenha o nome do disco do sistema operacional da VM de computação de destino no novo laboratório. Você pode encontrar a VM de computação e seu disco no grupo de recursos na página Máquina Virtual do laboratório.
Use AzCopy para copiar o conteúdo do disco antigo para os discos novos/vazios na nova região. Você pode executar os comandos do PowerShell no Computador de Desenvolvimento ou no Azure Cloud Shell.
O AzCopy é a ferramenta preferencial para mover seus dados. Ela é otimizada para desempenho. Um fator que a torna mais rápida é que os dados são copiados diretamente, de modo que AzCopy não usa a largura de banda da rede de seu computador. Use o AzCopy na linha de comando ou como parte de um script personalizado. Confira Introdução ao 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
Depois disso, você terá um novo disco na nova região.
- Troque o disco do sistema operacional da VM de computação no novo laboratório pelo novo disco. Para saber como, consulte o artigo "Alterar o disco do SO usado por uma VM do Azure usando o PowerShell".
Mover uma agenda
Há dois modos de mover um agendamento:
- Recriar os agendamentos manualmente nas VMs movidas. Esse processo pode ser demorado e propenso a erros. Essa abordagem é mais útil quando há um número pequeno de agendamentos e de VMs.
- Exportar e reimplantar os agendamentos usando modelos do ARM.
Use as seguintes etapas para exportar e reimplantar o agendamento em outra região do Azure usando um modelo do ARM:
Entre no portal do Azure.
Acesse o grupo de recursos de origem que continha as VMs.
Na página Visão Geral do Grupo de Recursos, em Recursos, selecione Mostrar tipos ocultos.
Selecione todos os recursos com o tipo microsoft.devtestlab/schedules.
Selecione Exportar modelo.
Na página Exportar modelo de grupo de recursos, selecione Implantar.
Na página Implantação personalizada, selecione Editar modelo.
No código do modelo, altere todas as instâncias de
"location": "<old location>"
para"location": "<new location>"
e selecione Salvar.Na página Implantação personalizada, insira valores que correspondam à VM de destino:
Nome Valor Assinatura Selecione uma assinatura do Azure. Grupo de recursos Selecione o nome do grupo de recursos. Região Selecione uma localização para o agendamento de laboratório. Por exemplo, Centro dos EUA. Nome do agendamento Precisa ser um nome global exclusivo. VirtualMachine_xxx_externalId Precisar ser a VM de destino. Importante
Cada agendamento precisa ter um nome global exclusivo. Você precisará alterar o nome do agendamento para a nova localização.
Selecione Examinar e criar para criar a implantação.
Quando a implantação for concluída, verifique se o novo agendamento está configurado corretamente na nova VM.
Descartar ou limpar
Após a implantação, se você quiser começar novamente, poderá excluir o laboratório de destino e repetir as etapas descritas nas seções Preparar e Mover deste artigo.
Para confirmar as alterações e concluir a movimentação, exclua o laboratório original.
Para remover um laboratório usando o portal do Azure:
No portal do Azure, expanda o menu à esquerda para abrir o menu de serviços e escolha DevTest Labs para exibir a lista de laboratórios.
Localize o laboratório de destino a ser excluído e clique com o botão direito do mouse no botão Mais (...) no lado direito da lista.
Selecione Excluir e confirme.
O senhor também pode optar por limpar as programações originais se elas não forem mais usadas. Acesse o grupo de recursos de agendamento original (de onde você exportou os modelos na etapa 5 acima) e exclua o recurso de agendamento.
Próximas etapas
Neste artigo, você moveu o DevTest Labs de uma região para outra e limpou os recursos de origem. Para saber mais sobre como mover recursos entre regiões e recuperação de desastres no Azure, confira: