Condividi tramite


Preparare un'immagine Ubuntu per le macchine virtuali locali di Azure abilitate da Azure Arc

Si applica a: Azure Local 2311.2 e versioni successive

Questo articolo descrive come usare l'interfaccia della riga di comando di Azure per preparare un'immagine Ubuntu e creare una macchina virtuale locale di Azure.

Prerequisiti

  • Avere accesso a un'istanza locale di Azure. Questo sistema viene distribuito, registrato e connesso ad Azure Arc. Passare alla pagina Panoramica nella risorsa locale di Azure. Nella scheda Server nel riquadro destro, Azure Arc dovrebbe essere visualizzato come Connesso.
  • Scaricare l'immagine del server Ubuntu più recente supportata nel sistema locale di Azure. Le versioni del sistema operativo supportate sono Ubuntu 20.04, 22.04e 24.04 LTS.

Flusso di lavoro

Per preparare un'immagine Ubuntu e creare un'immagine di macchina virtuale locale di Azure da essa:

  1. Creare una macchina virtuale Ubuntu
  2. Configurare la macchina virtuale
  3. Pulire la configurazione residua
  4. Creare un'immagine di macchina virtuale Ubuntu

Le sezioni seguenti forniscono istruzioni dettagliate per ogni passaggio del flusso di lavoro.

Creare un'immagine di macchina virtuale da un'immagine Ubuntu

Importante

  • Non usare un disco rigido virtuale da una macchina virtuale di Azure per preparare l'immagine della macchina virtuale locale di Azure.
  • È consigliabile preparare un'immagine Ubuntu se si intende abilitare la gestione guest nelle macchine virtuali.

Passaggio 1: Creare una macchina virtuale Ubuntu

Seguire questa procedura per effettuare il provisioning di una macchina virtuale usando l'immagine Ubuntu scaricata.

  1. Configurare la macchina virtuale con le specifiche seguenti:

    1. Specificare un nome descrittivo per la macchina virtuale.

      Screenshot che mostra la Creazione guidata della nuova macchina virtuale nella pagina Specificare nome e posizione.

    2. Specifica generazione 2 per la tua macchina virtuale dato che stai lavorando con un'immagine estesa del disco rigido virtuale qui.

      Screenshot che mostra la Creazione guidata per una nuova macchina virtuale nella pagina Specifica generazione.

    3. Selezionare Installa sistema operativo da un'immagine di avvio. Indicare l'ISO scaricato in precedenza.

      Screenshot che mostra la Creazione guidata della macchina virtuale nella pagina Opzioni di installazione.

    Per istruzioni dettagliate, vedere Effettuare il provisioning di una macchina virtuale usando la console di gestione di Hyper-V.

  2. Usare il certificato UEFI per proteggere l'avvio della macchina virtuale.

    1. Dopo aver creato la macchina virtuale, viene visualizzata nella console di gestione di Hyper-V. Selezionare la macchina virtuale, fare clic con il pulsante destro del mouse e quindi scegliere Impostazioni.
    2. Nel riquadro sinistro, selezionare la scheda Sicurezza. Quindi, sotto Secure Boot, selezionare Microsoft UEFI Certificate Authority dall'elenco a discesa Modello.
    3. Selezionare OK per salvare le modifiche.

    Screenshot che mostra le opzioni di avvio protetto per la macchina virtuale nella pagina Impostazioni.

Passaggio 2: Configurare la macchina virtuale

Seguire questa procedura in Locale di Azure per configurare la macchina virtuale di cui è stato effettuato il provisioning in precedenza:

  1. Accedere alla macchina virtuale. Vedere la procedura descritta in Connettersi a una macchina virtuale Linux.

  2. Per scaricare tutti gli elenchi di pacchetti più recenti dai repository, eseguire il comando seguente:

    sudo apt update
    
  3. Installare il kernel personalizzato di Azure. Questo passaggio è necessario affinché la macchina virtuale ottenga un indirizzo IP per l'interfaccia di rete.

    sudo apt install linux-azure -y
    
  4. Installare il server SSH. Esegui questo comando:

    sudo apt install openssh-server openssh-client -y
    
  5. Configura sudo senza richiedere una password. Aggiungere il comando seguente alla fine del /etc/sudoers file usando visudo:

    ALL ALL=(ALL) NOPASSWD:ALL
    

Passaggio 3: Pulire la configurazione residua

Eliminare file e dati specifici del computer dalla macchina virtuale in modo da poter creare un'immagine di macchina virtuale pulita senza alcuna cronologia o configurazioni predefinite. Seguire questa procedura in Locale di Azure per pulire la configurazione residua.

Nota

A seconda della versione di Ubuntu in uso, alcuni di questi file potrebbero non esistere.

  1. Pulire cloud-init le configurazioni predefinite.

    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. Pulire i registri e la cache.

    sudo cloud-init clean --logs --seed
    sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
    sudo apt-get clean
    
  3. Rimuovere la cronologia bash.

    rm -f ~/.bash_history 
    export HISTSIZE=0 
    logout
    
  4. Spegnere la VM. In Console di gestione di Hyper-V, vai su Azione>Arresta.

Passaggio 4: Creare l'immagine della macchina virtuale

Segui questi passaggi utilizzando Azure CLI sulla tua istanza locale di Azure per creare l'immagine della macchina virtuale dal VHDX creato in precedenza.

  1. Esegui PowerShell come amministratore.

  2. Accedi. Eseguire il cmdlet seguente:

    az login
    
  3. Impostare la sottoscrizione. Eseguire il cmdlet seguente:

    az account set --subscription <Subscription ID>
    
  4. Impostare i parametri per la sottoscrizione, il gruppo di risorse, la posizione personalizzata, il percorso, il tipo di sistema operativo per l'immagine, il nome dell'immagine e il percorso in cui si trova l'immagine. Sostituire i parametri in < > con i valori appropriati.

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

    I parametri sono descritti nella tabella seguente.

    Parametro Descrizione
    subscription Sottoscrizione associata all'istanza locale di Azure.
    resource_group Gruppo di risorse per l'istanza locale di Azure associata a questa immagine.
    location Posizione per l'istanza locale di Azure. Ad esempio, la posizione potrebbe essere eastus o westreurope.
    os-type Sistema operativo associato all'immagine di origine. Questo sistema può essere Windows o Linux.
  5. Usare il VHDX della macchina virtuale per creare un'immagine del catalogo. Usare questa immagine di macchina virtuale per creare macchine virtuali di Azure Arc in Locale di Azure.

    Assicurarsi di copiare il VHDX nello spazio di archiviazione utente nel volume condiviso del cluster di Azure local. Ad esempio, il percorso potrebbe essere simile a 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. Verificare che l'immagine sia stata creata.