Partilhar via


Mover laboratórios e agendas do DevTest para outra região

Você pode mover o DevTest Labs e suas agendas associadas para outra região. Para mover um laboratório, crie uma cópia de um laboratório existente em outra região. Quando você tiver movido seu laboratório e tiver uma máquina virtual (VM) na região de destino, poderá mover suas agendas de laboratório.

Neste artigo, vai aprender a:

  • Exporte um modelo do Azure Resource Manager (ARM) do seu laboratório.
  • Modifique o modelo adicionando ou atualizando a região de destino e outros parâmetros.
  • Implante o modelo para criar o novo laboratório na região de destino.
  • Configure o novo laboratório.
  • Mova dados para o novo laboratório.
  • Mova agendas para o novo laboratório.
  • Exclua os recursos na região de origem.

Pré-requisitos

  • Garanta que os serviços e as funcionalidades que a conta utiliza são suportados na região de destino.

  • Para recursos de visualização, verifique se sua assinatura está permitida para a região de destino.

  • O DevTest Labs não armazena nem expõe senhas do modelo ARM exportado. Você precisa saber as senhas/segredos para:

    • as VMs
    • os segredos armazenados
    • Tokens PAT dos repositórios de artefactos privados para mover os repositórios privados juntamente com o laboratório.
  • Ao mover uma agenda 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 criar e personalizar um modelo 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.

Preparar-se para mover um laboratório

Quando você move um laboratório, há algumas etapas que você deve tomar para se preparar para a mudança. Precisa de:

  • Preparar a rede virtual
  • Exportar um modelo 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.

  1. Inicie sessão no portal do Azure.

  2. Se você não tiver o Grupo de Recursos na região de destino, crie um agora.

  3. 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 nova rede virtual, se não precisar manter a original.

Exportar um modelo ARM do laboratório

Em seguida, você exporta um modelo JSON que contém configurações que descrevem o laboratório.

Para exportar um modelo com o portal do Azure:

  1. Selecione Todos os recursos e, em seguida, selecione o grupo de recursos para o laboratório.

  2. Selecione Exportar modelo.

  3. Escolha Download em Exportar modelo.

  4. Localize o arquivo .zip que você baixou do portal e descompacte esse arquivo para uma pasta de sua escolha.

    Esse arquivo zip contém os arquivos .json que compõem o modelo e os scripts para implantar o modelo. Ele contém todos os recursos do seu laboratório listados no formato de modelo ARM, exceto os recursos da Galeria de Imagens Compartilhadas.

Modificar o modelo

Para que o modelo ARM seja implantado corretamente na nova região, você deve alterar algumas partes do modelo.

Para atualizar o modelo usando o portal do Azure:

  1. No portal do Azure, selecione Criar um recurso.

  2. Em Pesquisar no Marketplace, escreva implementação de modelo e prima ENTER.

  3. Selecione Implementação de modelo.

    Captura de ecrã que mostra o Azure Marketplace com a implementação de modelo selecionada.

  4. Selecione Criar.

  5. Selecione Crie o seu próprio modelo no editor.

  6. Selecione Carregar ficheiro e, em seguida, siga as instruções para carregar o ficheiro template.json que transferiu na última secção.

  7. No editor, faça as seguintes alterações no arquivo template.json :

    1. Substitua o original location pela nova região na qual você deseja implantar, como westus2, southeastasia, etc. Para obter códigos de localização de região, consulte Localizações do Azure. O código de uma região é o nome da região sem espaços, Central US = centralus .

      "variables": {},
      "resources": [
        {
          "type": "microsoft.devtestlab/labs",
          "location": "centralus",
      
    2. Se você tiver "Todas as máquinas virtuais em um grupo de recursos" definido nas "Configurações de laboratório", atualize também os seguintes valores no modelo ARM:

      • Atualize o apiVersion microsoft.devtestlab/labs recurso para 2018-10-15-preview.
      • Adicionar vmCreationResourceGroupId à properties secção.
      "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",
      
    3. Encontre o "type": "microsoft.devtestlab/labs/users" recurso. Lá, remova toda a secretStore seção, incluindo o keyVaultld e os keyVaultUri parâmetros.

      secretStore": {
        "keyVaultUri": "<vaultvalue>"
        "keyVaultld": "<id>"
      }
      
    4. Encontre o "type": "microsoft.devtestlab/labs/virtualnetworks" recurso. Se você criou uma nova rede virtual anteriormente nestas etapas, deverá adicionar o nome real da sub-rede em /subnets/[SUBNET_NAME]. Se você optar por mover a rede virtual para uma nova região, ignore esta etapa.

    5. Encontre o "type": "microsoft.devtestlab/labs/virtualmachines" recurso.

      1. Em "propriedades", adicione "password": "RANDOM_PASSWORD"

        Nota

        Uma propriedade "password" é necessária para criar uma nova VM. Inserimos uma senha aleatória porque mais tarde trocaremos o disco do sistema operacional com a VM original.

      2. Para máquinas virtuais IP compartilhadas, adicione este trecho em "properties.networkInterface",

        VM do Windows com RDP:

        "networkInterface": {
          "sharedPublicIpAddressConfiguration": {
            "inboundNatRules": [
              {
                "transportProtocol": "tcp",
                "backendPort": 3389
              }
            ]
          }
        }
        

        VM Linux com SSH:

         "networkInterface": {
            "sharedPublicIpAddressConfiguration": {
              "inboundNatRules": [
                {
                  "transportProtocol": "tcp",
                  "backendPort": 22
                }
              ]
            }
          }
        
    6. Sob os microsoft.devtestlab/labs/users/secrets recursos, o seguinte parâmetro as "propriedades". Substitua YOUR_STORED_PASSWORD pela sua palavra-passe.

      Importante

      Use secureString para valores de senha.

      "value": "YOUR_STORED_PASSWORD"
      
    7. Sob os microsoft.devtestlab/labs/artifactsources recursos, o seguinte parâmetro as "propriedades". Substitua YOUR_STORED_PASSWORD pela sua palavra-passe. Novamente, use secureString para valores de senha.

      "securityToken": "YOUR_PAT_TOKEN_VALUE"
      
    8. No editor, salve o modelo.

Implantar o modelo para mover o laboratório

Implante o modelo para criar um novo laboratório na região de destino.

  1. Na página Implantação personalizada, atualize todos os parâmetros com os valores correspondentes definidos no modelo.

  2. Introduza os seguintes valores:

    Nome Valor
    Subscrição Selecione uma subscrição do Azure.
    Grupo de recursos Selecione o nome do grupo de recursos criado na última seção.
    Location Selecione um local para o laboratório. Por exemplo, E.U.A. Central.
    Nome do laboratório Deve ser um nome diferente.
    Vnet ID Deve ser o movido, ou o novo que você criou.
  3. Selecione Rever + criar.

  4. Selecione Criar.

  5. Selecione o ícone de campainha (notificações) na parte superior do ecrã para ver o estado de implementação. Você verá a implantação em andamento. Aguarde até que a implementação esteja concluída.

Configurar o novo laboratório

Embora a maioria dos recursos do Lab tenha sido replicada na nova região usando o modelo ARM, algumas edições ainda precisam ser movidas manualmente.

  1. Adicione a Galeria de Computação de volta ao laboratório, se houver algum no original.
  2. Adicione as políticas "Máquinas virtuais por usuário", "Máquinas virtuais por laboratório" e "Tamanhos de máquinas virtuais 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 seus discos de SO.

  1. Crie um disco vazio na nova região.

    • Obtenha o nome do disco Compute VM OS de destino no novo Lab. Você pode encontrar a VM de computação e seu disco no grupo 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 em sua Caixa de Desenvolvimento ou no Azure Cloud Shell.

      AzCopy é a ferramenta preferida para mover seus dados. Está otimizada para o desempenho. Uma maneira que é mais rápido, é que os dados são copiados diretamente, então AzCopy não usa a largura de banda de rede do seu computador. Utilize o AzCopy na linha de comandos ou como parte de um script personalizado. Consulte 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 sob a nova região.

    1. 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 sistema operacional usado por uma VM do Azure usando o PowerShell".

Mover uma agenda

Há duas maneiras de mover uma agenda:

  • Recrie manualmente as agendas nas VMs movidas. Este processo pode ser demorado e propenso a erros. Essa abordagem é mais útil quando você tem algumas agendas e VMs.
  • Exporte e reimplante as agendas usando modelos ARM.

Use as seguintes etapas para exportar e reimplantar sua agenda em outra região do Azure usando um modelo ARM:

  1. Inicie sessão no portal do Azure.

  2. Vá para o grupo de recursos de origem que continha suas VMs.

  3. Na página Visão Geral do Grupo de Recursos, em Recursos, selecione Mostrar tipos ocultos.

  4. Selecione todos os recursos com o tipo microsoft.devtestlab/schedules.

  5. Selecione Exportar modelo.

    Captura de ecrã que mostra os recursos ocultos num grupo de recursos, com agendas selecionadas.

  6. Na página Exportar modelo de grupo de recursos, selecione Implantar.

  7. Na página Implantação personalizada, selecione Editar modelo.

  8. No código do modelo, altere todas as instâncias de "location": "<old location>" para "location": "<new location>" e selecione Salvar.

  9. Na página Implantação personalizada, insira valores que correspondam à VM de destino:

    Nome Valor
    Subscrição Selecione uma subscrição do Azure.
    Grupo de recursos Selecione o nome do grupo de recursos.
    Região Selecione um local para a agenda do laboratório. Por exemplo, E.U.A. Central.
    Nome da agenda Deve ser um nome globalmente exclusivo.
    VirtualMachine_xxx_externalId Deve ser a VM de destino.

    Captura de tela que mostra a página de implantação personalizada, com novos valores de local para as configurações relevantes.

    Importante

    Cada agenda deve ter um nome globalmente exclusivo; Você precisará alterar o nome da agenda para o novo local.

  10. Selecione Revisar e criar para criar a implantação.

  11. Quando a implantação estiver concluída, verifique se o novo agendamento está configurado corretamente na nova VM.

Eliminar ou limpar

Após a implantação, se quiser recomeçar, você pode 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 mudança, você deve excluir o laboratório original.

Para remover um laboratório usando o portal do Azure:

  1. No portal do Azure, expanda o menu no lado esquerdo para abrir o menu de serviços e escolha DevTest Labs para exibir a lista de laboratórios.

  2. 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 listagem.

  3. Selecione Excluir e confirme.

Você também pode optar por limpar os horários originais se eles não forem mais usados. Vá para o grupo de recursos de agendamento original (de onde você exportou modelos na etapa 5 acima) e exclua o recurso de agendamento.

Próximos passos

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, consulte: