Partilhar via


Preparar uma imagem do Ubuntu para VMs Locais do Azure habilitadas pelo Azure Arc

Aplica-se a: Azure Local 2311.2 e posterior

Este artigo descreve como usar a CLI do Azure para preparar uma imagem do Ubuntu e criar uma máquina virtual (VM) local do Azure.

Pré-requisitos

  • Ter acesso a uma instância Local do Azure. Esse sistema é implantado, registrado e conectado ao Azure Arc. Vá para a página Visão geral no recurso Local do Azure. Na guia Servidor no painel direito, o Azure Arc deve aparecer como Conectado.
  • Transfira a imagem mais recente do servidor Ubuntu suportado no seu sistema Azure Local. As versões do sistema operacional suportadas são Ubuntu 20.04, 22.04 e 24.04 LTS.

Fluxo de Trabalho

Para preparar uma imagem do Ubuntu e criar uma imagem da VM Local do Azure a partir dela:

  1. Criar uma VM Ubuntu
  2. Configurar a VM
  3. Limpar a configuração residual
  4. Criar uma imagem de VM do Ubuntu

As seções a seguir fornecem instruções detalhadas para cada etapa do fluxo de trabalho.

Criar uma imagem VM a partir de uma imagem do Ubuntu

Importante

  • Não use um disco rígido virtual de uma VM do Azure para preparar a imagem da VM Local do Azure.
  • Recomendamos que você prepare uma imagem do Ubuntu se você pretende habilitar o gerenciamento de convidados nas VMs.

Etapa 1: Criar uma VM do Ubuntu

Siga estas etapas para provisionar uma VM usando a imagem baixada do Ubuntu.

  1. Configure a VM com as seguintes especificações:

    1. Forneça um nome amigável para sua VM.

      Captura de ecrã que mostra o Assistente de Nova Máquina Virtual na página Especificar Nome e Localização.

    2. Especifique de Geração 2 para a sua VM quando estiver a trabalhar com uma imagem expandida de disco rígido virtual aqui.

      Captura de tela que mostra o Assistente de Nova Máquina Virtual na página Especificar Geração.

    3. Selecione Instalar sistema operacional a partir de uma imagem inicializável. Aponte para o ISO que você baixou anteriormente.

      Captura de ecrã que mostra o Assistente de Nova Máquina Virtual na página Opções de Instalação.

    Para obter instruções passo a passo, consulte Provisionar uma VM usando o Hyper-V Manager.

  2. Use o certificado UEFI para proteger a inicialização da VM.

    1. Depois que a VM é criada, ela aparece no Gerenciador do Hyper-V. Selecione a VM, clique com o botão direito do rato na mesma e, em seguida, selecione Definições.
    2. No painel esquerdo, selecione a guia Segurança. Depois, em Inicialização Segura, na lista suspensa Modelo, selecione Autoridade de Certificação UEFI da Microsoft.
    3. Selecione OK para salvar as alterações.

    Captura de tela que mostra as opções de Inicialização Segura para a VM na página Configurações.

Etapa 2: Configurar a VM

Siga estas etapas em seu Azure Local para configurar a VM que você provisionou anteriormente:

  1. Inicie sessão na VM. Consulte as etapas em Conectar-se a uma VM Linux.

  2. Para baixar todas as listas de pacotes mais recentes dos repositórios, execute o seguinte comando:

    sudo apt update
    
  3. Instale o kernel personalizado do Azure. Esta etapa é necessária para que sua VM obtenha um IP para a interface de rede.

    sudo apt install linux-azure -y
    
  4. Instale o servidor SSH. Execute o seguinte comando:

    sudo apt install openssh-server openssh-client -y
    
  5. Configure o sudo sem palavra-passe. Adicione o seguinte comando no final do /etc/sudoers arquivo usando visudo:

    ALL ALL=(ALL) NOPASSWD:ALL
    

Passo 3: Limpar a configuração residual

Exclua arquivos e dados específicos da máquina da sua VM para que você possa criar uma imagem limpa da VM sem qualquer histórico ou configurações padrão. Siga estas etapas em seu Azure Local para limpar a configuração residual.

Nota

Dependendo da versão do Ubuntu que você está usando, alguns desses arquivos podem não existir.

  1. Limpar cloud-init configurações padrão.

    sudo rm -f /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg /etc/cloud/cloud.cfg.d/curtin-preserve-sources.cfg /etc/cloud/cloud.cfg.d/99-installer.cfg /etc/cloud/cloud.cfg.d/subiquity-disable-cloudinit-networking.cfg
    sudo rm -f /etc/cloud/ds-identify.cfg
    sudo rm -f /etc/netplan/*.yaml
    
  2. Limpe os logs e o cache.

    sudo cloud-init clean --logs --seed
    sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
    sudo apt-get clean
    
  3. Remover o histórico do bash.

    rm -f ~/.bash_history 
    export HISTSIZE=0 
    logout
    
  4. Desligue a máquina virtual. No Hyper-V Manager, vá para Ação>Encerrar.

Etapa 4: Criar a imagem da VM

Siga estas etapas usando a CLI do Azure em seu Azure Local para criar a imagem da VM a partir do VHDX criado anteriormente.

  1. Execute o PowerShell como um administrador.

  2. Iniciar sessão. Execute o seguinte cmdlet:

    az login
    
  3. Defina a sua subscrição. Execute o seguinte cmdlet:

    az account set --subscription <Subscription ID>
    
  4. Defina parâmetros para sua assinatura, grupo de recursos, local personalizado, local, tipo de sistema operacional para a imagem, nome da imagem e o caminho onde a imagem está localizada. Substitua os parâmetros em < > pelos valores apropriados.

    $subscription = "<Subscription ID>"
    $resource_group = "<Resource group>"
    $customLocation = "<Custom location>"
    $location = "<Location for your Azure Local>"
    $osType = "<OS of source image>"
    

    Os parâmetros são descritos na tabela a seguir.

    Parâmetro Descrição
    subscription Subscrição associada à sua instância Local do Azure.
    resource_group Grupo de recursos para a instância Local do Azure que você associa a esta imagem.
    location Local para sua instância local do Azure. Por exemplo, o local pode ser eastus ou westreurope.
    os-type Sistema operacional associado à imagem de origem. Este sistema pode ser Windows ou Linux.
  5. Use o VHDX da VM para criar uma imagem de galeria. Use esta imagem de VM para criar VMs Locais do Azure.

    Certifique-se de copiar o VHDX para o armazenamento do usuário no volume de cluster partilhado do Azure Local. Por exemplo, o caminho pode ser parecido com C:\ClusterStorage\UserStorage_1\linuxvhdx.

    $imagePath = "Path to user storage in CSV" 
    $imageName = "mylinuxvmimg" 
    $osType = "Linux"
    
    az stack-hci-vm image create --subscription $subscription -g $resource_group --custom-location $customLocation --location $location --image-path $imagePath --name $imageName --debug --os-type $osType 
    
  6. Verifique se a imagem foi criada.