Preparare una macchina virtuale Ubuntu per AzurePrepare an Ubuntu virtual machine for Azure

Nota

Azure offre due modelli di distribuzione per creare e usare le risorse: Gestione risorse e la distribuzione classica.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. In questo articolo viene illustrato l'utilizzo di entrambi i modelli, ma Microsoft indica che le distribuzioni più nuove utilizzano il modello di gestione delle risorse.This article covers using both models, but Microsoft recommends that most new deployments use the Resource Manager model.

Immagini di Ubuntu Cloud ufficialiOfficial Ubuntu cloud images

Attualmente, Ubuntu pubblica VHD di Azure ufficiali per il download all'indirizzo http://cloud-images.ubuntu.com/.Ubuntu now publishes official Azure VHDs for download at http://cloud-images.ubuntu.com/. Se si deve creare un'immagine Ubuntu specializzata per Azure, piuttosto che seguire la procedura manuale riportata sotto si consiglia di iniziare con questi noti VHD funzionanti e personalizzarli in base alle esigenze.If you need to build your own specialized Ubuntu image for Azure, rather than use the manual procedure below it is recommended to start with these known working VHDs and customize as needed. Le ultime versioni delle immagini sono sempre disponibili nei seguenti percorsi:The latest image releases can always be found at the following locations:

PrerequisitiPrerequisites

In questo articolo si presuppone che l'utente abbia già installato un sistema operativo Ubuntu Linux in un disco rigido virtuale.This article assumes that you have already installed an Ubuntu Linux operating system to a virtual hard disk. Sono disponibili vari strumenti per creare file con estensione vhd, ad esempio una soluzione di virtualizzazione come Hyper-V.Multiple tools exist to create .vhd files, for example a virtualization solution such as Hyper-V. Per istruzioni, vedere Installare il ruolo Hyper-V e configurare una macchina virtuale.For instructions, see Install the Hyper-V Role and Configure a Virtual Machine.

Note sull'installazione di UbuntuUbuntu installation notes

  • Vedere anche Note generali sull'installazione di Linux per altri suggerimenti sulla preparazione di Linux per Azure.Please see also General Linux Installation Notes for more tips on preparing Linux for Azure.
  • Il formato VHDX non è supportato in Azure, solo nei VHD fissi.The VHDX format is not supported in Azure, only fixed VHD. È possibile convertire il disco in formato VHD tramite la console di gestione di Hyper-V o il cmdlet convert-vhd.You can convert the disk to VHD format using Hyper-V Manager or the convert-vhd cmdlet.
  • Durante l'installazione del sistema operativo Linux è consigliabile usare partizioni standard anziché LVM, che spesso è la scelta predefinita per numerose installazioni.When installing the Linux system it is recommended that you use standard partitions rather than LVM (often the default for many installations). In questo modo sarà possibile evitare conflitti di nome LVM con le macchine virtuali clonate, in particolare se fosse necessario collegare un disco del sistema operativo a un'altra macchina virtuale per la risoluzione dei problemi.This will avoid LVM name conflicts with cloned VMs, particularly if an OS disk ever needs to be attached to another VM for troubleshooting. Se si preferisce, su dischi di dati si può usare LVM o RAID.LVM or RAID may be used on data disks if preferred.
  • Non configurare una partizione swap nel disco del sistema operativo.Do not configure a swap partition on the OS disk. L'agente Linux può essere configurato in modo da creare un file swap sul disco temporaneo delle risorse.The Linux agent can be configured to create a swap file on the temporary resource disk. Altre informazioni su questo argomento sono disponibili nei passaggi seguenti.More information about this can be found in the steps below.
  • Tutti i dischi rigidi virtuali devono avere dimensioni multiple di 1 MB.All of the VHDs must have sizes that are multiples of 1 MB.

Passaggi manualiManual steps

Nota

Prima di provare a creare un'immagine personalizzata di Ubuntu per Azure, valutare in alternativa la possibilità di usare le immagini predefinite e testate di http://cloud-images.ubuntu.com/.Before attempting to create your own custom Ubuntu image for Azure, please consider using the pre-built and tested images from http://cloud-images.ubuntu.com/ instead.

  1. Nel riquadro centrale della console di gestione di Hyper-V selezionare la macchina virtuale.In the center pane of Hyper-V Manager, select the virtual machine.

  2. Fare clic su Connect per aprire la finestra della macchina virtuale.Click Connect to open the window for the virtual machine.

  3. Sostituire gli archivi correnti nell'immagine in modo da usare quelli Azure di Ubuntu.Replace the current repositories in the image to use Ubuntu's Azure repos. La procedura varia leggermente in base alla versione di Ubuntu.The steps vary slightly depending on the Ubuntu version.

    Prima di modificare /etc/apt/sources.list, è consigliabile eseguire un backup:Before editing /etc/apt/sources.list, it is recommended to make a backup:

     # sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
    

    Ubuntu 12.04:Ubuntu 12.04:

     # sudo sed -i 's/[a-z][a-z].archive.ubuntu.com/azure.archive.ubuntu.com/g' /etc/apt/sources.list
     # sudo apt-get update
    

    Ubuntu 14.04:Ubuntu 14.04:

     # sudo sed -i 's/[a-z][a-z].archive.ubuntu.com/azure.archive.ubuntu.com/g' /etc/apt/sources.list
     # sudo apt-get update
    

    Ubuntu 16.04:Ubuntu 16.04:

     # sudo sed -i 's/[a-z][a-z].archive.ubuntu.com/azure.archive.ubuntu.com/g' /etc/apt/sources.list
     # sudo apt-get update
    
  4. Le immagini di Ubuntu Azure ora seguono il kernel HWE (Hardware Enablement).The Ubuntu Azure images are now following the hardware enablement (HWE) kernel. Aggiornare il sistema operativo al kernel più recente eseguendo i comandi seguenti:Update the operating system to the latest kernel by running the following commands:

    Ubuntu 12.04:Ubuntu 12.04:

     # sudo apt-get update
     # sudo apt-get install linux-image-generic-lts-trusty linux-cloud-tools-generic-lts-trusty
     # sudo apt-get install hv-kvp-daemon-init
     (recommended) sudo apt-get dist-upgrade
    
     # sudo reboot
    

    Ubuntu 14.04:Ubuntu 14.04:

     # sudo apt-get update
     # sudo apt-get install linux-image-virtual-lts-vivid linux-lts-vivid-tools-common
     # sudo apt-get install hv-kvp-daemon-init
     (recommended) sudo apt-get dist-upgrade
    
     # sudo reboot
    

    Ubuntu 16.04:Ubuntu 16.04:

     # sudo apt-get update
     # sudo apt-get install linux-generic-hwe-16.04 linux-cloud-tools-generic-hwe-16.04
     (recommended) sudo apt-get dist-upgrade
    
     # sudo reboot
    

    Vedere anche:See also:

  5. Modificare la riga di avvio del kernel per Grub in modo da includere ulteriori parametri del kernel per Azure.Modify the kernel boot line for Grub to include additional kernel parameters for Azure. A questo scopo, aprire /etc/default/grub in un editor di testo, trovare la variabile denominata GRUB_CMDLINE_LINUX_DEFAULT (o aggiungerla, se necessario) e modificarla in modo da includere i parametri seguenti:To do this open /etc/default/grub in a text editor, find the variable called GRUB_CMDLINE_LINUX_DEFAULT (or add it if needed) and edit it to include the following parameters:

     GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0,115200n8 earlyprintk=ttyS0,115200 rootdelay=300"
    

    Salvare e chiudere il file e quindi eseguire sudo update-grub.Save and close this file, and then run sudo update-grub. In questo modo si garantisce che tutti i messaggi della console vengano inviati alla prima porta seriale, agevolando così il supporto tecnico di Azure nella risoluzione dei problemi di debug.This will ensure all console messages are sent to the first serial port, which can assist Azure technical support with debugging issues.

  6. Verificare che il server SSH sia installato e configurato per l'esecuzione all'avvio.Ensure that the SSH server is installed and configured to start at boot time. Questo è in genere il valore predefinito.This is usually the default.

  7. Installare l'agente Linux di Azure:Install the Azure Linux Agent:

     # sudo apt-get update
     # sudo apt-get install walinuxagent
    

    Nota

    Il pacchetto walinuxagent potrebbe rimuovere i pacchetti NetworkManager e NetworkManager-gnome, se installati.The walinuxagent package may remove the NetworkManager and NetworkManager-gnome packages, if they are installed.

  8. Eseguire i comandi seguenti per effettuare il deprovisioning della macchina virtuale e prepararla per il provisioning in Azure:Run the following commands to deprovision the virtual machine and prepare it for provisioning on Azure:

     # sudo waagent -force -deprovision
     # export HISTSIZE=0
     # logout
    
  9. Fare clic su Azione -> Arresta nella console di gestione di Hyper-V.Click Action -> Shut Down in Hyper-V Manager. Il file VHD Linux è ora pronto per il caricamento in Azure.Your Linux VHD is now ready to be uploaded to Azure.

Passaggi successiviNext steps

È ora possibile usare il disco rigido virtuale Ubuntu Linux per creare nuove macchine virtuali in Azure.You're now ready to use your Ubuntu Linux virtual hard disk to create new virtual machines in Azure. Se è la prima volta che si carica il file VHD in Azure, vedere i passaggi 2 e 3 nell'articolo Creazione e caricamento di un disco rigido virtuale che contiene il sistema operativo Linux.If this is the first time that you're uploading the .vhd file to Azure, see steps 2 and 3 in Creating and uploading a virtual hard disk that contains the Linux operating system.

RiferimentiReferences

Kernel HWE di UbuntuUbuntu hardware enablement (HWE) kernel: