Avvio rapido: Creare una macchina virtuale Linux con l'interfaccia della riga di comando di Azure in Azure

Si applica a: ✔️ macchine virtuali Linux

Distribuzione in Azure

Questa guida introduttiva illustra come usare l'interfaccia della riga di comando di Azure per distribuire in Azure una macchina virtuale Linux. Viene usata l'interfaccia della riga di comando di Azure per creare e gestire le risorse di Azure dalla riga di comando o tramite script.

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Avviare Azure Cloud Shell

Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Per aprire Cloud Shell, basta selezionare Prova nell'angolo superiore destro di un blocco di codice. È anche possibile aprire Cloud Shell in una scheda separata del browser visitando https://shell.azure.com/bash. Selezionare Copia per copiare i blocchi di codice, incollarli in Cloud Shell e premere INVIO per eseguirli.

Se si preferisce installare e usare l'interfaccia della riga di comando in locale, per questa guida introduttiva è necessaria l'interfaccia della riga di comando di Azure versione 2.0.30 o successiva. Eseguire az --version per trovare la versione. Se è necessario eseguire l'installazione o l'aggiornamento, vedere Installare l'interfaccia della riga di comando di Azure.

Accedere ad Azure tramite l'interfaccia della riga di comando

Per eseguire i comandi in Azure usando l'interfaccia della riga di comando, è prima necessario eseguire l'accesso. Accedere usando il comando az login .

Creare un gruppo di risorse

Un gruppo di risorse è un contenitore per risorse corrlate. Tutte le risorse devono essere posizionate in un gruppo di risorse. Il comando az group create crea un gruppo di risorse con i parametri $MY_RESOURCE_GROUP_NAME e $REGION definiti in precedenza.

export RANDOM_ID="$(openssl rand -hex 3)"
export MY_RESOURCE_GROUP_NAME="myVMResourceGroup$RANDOM_ID"
export REGION=EastUS
az group create --name $MY_RESOURCE_GROUP_NAME --location $REGION

Risultati:

{
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myVMResourceGroup",
  "location": "eastus",
  "managedBy": null,
  "name": "myVMResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

Creare la macchina virtuale

Per creare una macchina virtuale in questo gruppo di risorse, usare il comando vm create.

Nell'esempio seguente viene creata una macchina virtuale e aggiunto un account utente. Il parametro --generate-ssh-keys fa sì che l'interfaccia della riga di comando cerchi una chiave SSH disponibile in ~/.ssh. Se ne viene trovata una, viene usata la chiave. In caso contrario, ne viene generato e archiviato uno in ~/.ssh. Il parametro --public-ip-sku Standard garantisce che il computer sia accessibile tramite un indirizzo IP pubblico. Infine, distribuiamo l'immagine Ubuntu 22.04 più recente.

Tutti gli altri valori vengono configurati usando le variabili di ambiente.

export MY_VM_NAME="myVM$RANDOM_ID"
export MY_USERNAME=azureuser
export MY_VM_IMAGE="Canonical:0001-com-ubuntu-minimal-jammy:minimal-22_04-lts-gen2:latest"
az vm create \
    --resource-group $MY_RESOURCE_GROUP_NAME \
    --name $MY_VM_NAME \
    --image $MY_VM_IMAGE \
    --admin-username $MY_USERNAME \
    --assign-identity \
    --generate-ssh-keys \
    --public-ip-sku Standard

La creazione della macchina virtuale e delle risorse di supporto richiede alcuni minuti. L'output di esempio seguente mostra che l'operazione di creazione della macchina virtuale ha avuto esito positivo.

Risultati:

{
  "fqdns": "",
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
  "location": "eastus",
  "macAddress": "00-0D-3A-10-4F-70",
  "powerState": "VM running",
  "privateIpAddress": "10.0.0.4",
  "publicIpAddress": "52.147.208.85",
  "resourceGroup": "myVMResourceGroup",
  "zones": ""
}

Abilitare l'accesso di Azure AD per una macchina virtuale Linux in Azure

L'esempio di codice seguente distribuisce una macchina virtuale Linux e quindi installa l'estensione per abilitare un account di accesso di Azure AD per una macchina virtuale Linux. Le estensioni della macchina virtuale sono piccole applicazioni che eseguono attività di configurazione e automazione post-distribuzione nelle macchine virtuali di Azure.

az vm extension set \
    --publisher Microsoft.Azure.ActiveDirectory \
    --name AADSSHLoginForLinux \
    --resource-group $MY_RESOURCE_GROUP_NAME \
    --vm-name $MY_VM_NAME

Archiviare l'indirizzo IP della macchina virtuale per SSH

Eseguire il comando seguente per archiviare l'indirizzo IP della macchina virtuale come variabile di ambiente:

export IP_ADDRESS=$(az vm show --show-details --resource-group $MY_RESOURCE_GROUP_NAME --name $MY_VM_NAME --query publicIps --output tsv)

Accedere tramite SSH alla macchina virtuale

È ora possibile eseguire l'accesso SSH nella macchina virtuale eseguendo l'output del comando seguente nel client SSH scelto:

ssh -o StrictHostKeyChecking=no $MY_USERNAME@$IP_ADDRESS

Passaggi successivi