Een virtuele Linux-machine inrichten met behulp van Azure CLI

Voltooid

U kunt Azure CLI lokaal installeren op Linux-, macOS- en Windows-besturingssystemen. De installatiedetails zijn afhankelijk van het besturingssysteem en in het geval van Linux, ook op de distributie.

Notitie

Raadpleeg De Azure CLI installeren in Linux voor meer informatie over de linux-installatieopties.

Als u Azure CLI interactief wilt gebruiken, start u een shell die beschikbaar is in uw besturingssysteem, zoals cmd.exe in Windows of Bash in Linux of macOS, en voert u vervolgens een opdracht uit bij de opdrachtprompt. Als u terugkerende taken wilt automatiseren, stelt u de CLI-opdrachten samen in een shellscript met behulp van de scriptsyntaxis van de gekozen shell en voert u het script uit.

Als u wilt voorkomen dat u Azure CLI installeert, kunt u Azure Cloud Shell gebruiken. Azure Cloud Shell is een interactieve, geverifieerde shell die u kunt gebruiken om Azure-resources vanuit een webbrowser te beheren. Azure Cloud Shell kan Bash en Azure PowerShell uitvoeren en de huidige versie van Azure CLI is al vooraf geïnstalleerd. Als u toegang wilt krijgen tot Azure Cloud Shell, opent u de Azure Cloud Shell-koppeling in een webbrowser of start u deze vanuit De Azure-portal door het pictogram van Azure Cloud Shell naast het algemene zoektekstvak te selecteren.

Screenshot showing the Azure Cloud Shell icon in the Azure portal.

Azure Cloud Shell biedt het voordeel van ingebouwde verificatie, die gebruikmaakt van de referenties die u opgeeft bij het openen van uw Azure-abonnement vanuit uw webbrowser. Hierdoor hoeft u de az login opdracht niet aan het begin van elke sessie uit te voeren. Dit is vereist wanneer u Azure CLI lokaal uitvoert.

Een Virtuele Linux-machine implementeren met behulp van Azure CLI

Het proces voor het inrichten van een Virtuele Azure-machine waarop Linux wordt uitgevoerd met behulp van Azure CLI omvat doorgaans de volgende reeks stappen op hoog niveau:

  • Identificeer een geschikte VM-installatiekopieën.
  • Identificeer de geschikte VM-grootte.
  • Maak een resourcegroep.
  • Een virtueel netwerk maken en configureren.
  • Maak een Virtuele Azure-machine.

Afhankelijk van uw bestaande omgeving en vereisten, is het mogelijk niet nodig om elk van de voorgaande stappen te voltooien. U kunt bijvoorbeeld een bestaande resourcegroep of een subnet van een virtueel netwerk gebruiken voor uw implementatie. Daarnaast biedt Azure CLI ondersteuning voor een breed scala aan standaardinstellingen, die automatisch van toepassing zijn als u besluit geen waarden expliciet toe te wijzen aan een aantal resource-instellingen. Als u bijvoorbeeld met de implementatie op basis van Azure Portal geen bestaand virtueel netwerk opgeeft, wordt er in Azure CLI automatisch een voor u ingericht. In deze module vertrouwt u op de standaardinstellingen van Azure CLI en slaat u het proces voor het maken van een virtueel netwerk over.

Notitie

Raadpleeg de quickstart: Azure CLI gebruiken om een virtueel netwerk te maken voor informatie over het implementeren van virtuele netwerken met behulp van Azure CLI.

Een geschikte VM-installatiekopieën identificeren

Voordat u begint met het inrichtingsproces, moet u eerst de VM-installatiekopieën bepalen die u wilt gebruiken. U moet ook controleren of de beschikbaarheid van de installatiekopie in de Azure-regio is die als host fungeert voor uw implementatie.

Als u de Beschikbare Azure-regio's in uw abonnement wilt weergeven, voert u de volgende opdracht uit vanuit een Bash-sessie in het deelvenster Azure Cloud Shell:

az account list-locations --output table

Controleer de uitvoer en identificeer de waarde in de kolom Naam voor de regio die u wilt gebruiken. Stel dat u de regio VS - oost hebt gekozen als uw doel, zodat de naam eastus is.

Als u de geschikte installatiekopieën wilt identificeren, moet u de uitgever, aanbieding en sKU bepalen. Als u de lijst met beschikbare opties wilt beperken, geeft u de niet-Microsoft-uitgevers weer voor de regio die u eerder hebt geïdentificeerd door de volgende opdracht uit te voeren:

az vm image list-publishers --location eastus --query [].name --output tsv | grep -v "Microsoft" | more

Notitie

De lijst is behoorlijk uitgebreid, dus zorg ervoor dat u de uitvoer beperkt tot de beschikbare sessiebuffer.

Stel dat u hebt gekozen Canonical. Identificeer vervolgens de aanbiedingen die beschikbaar zijn van die uitgever door de volgende opdracht uit te voeren:

az vm image list-offers --location eastus --publisher Canonical --query [].name --output tsv

Stel dat u hebt gekozen 0001-com-ubuntu-server-jammy. Voer vervolgens de volgende opdracht uit om SKU's te identificeren die beschikbaar zijn voor die aanbieding door de volgende opdracht uit te voeren:

az vm image list-skus --location eastus --publisher Canonical --offer 0001-com-ubuntu-server-focal --query [].name --output tsv

Notitie

Canonical heeft onlangs de namen van aanbiedingen gewijzigd. Voor Ubuntu 20.04 was de naam UbuntuServervan de aanbieding. Voor Ubuntu 20.04 is 0001-com-ubuntu-server-focalde naam van de aanbieding en voor Ubuntu 22.04 is 0001-com-ubuntu-server-jammydit .

Als u een Azure-VM wilt implementeren met behulp van een specifieke installatiekopieën, moet u de waarde van Urn de eigenschap bepalen. Deze waarde bestaat uit de uitgever, aanbieding, SKU en eventueel een versienummer waarmee de installatiekopieën uniek worden geïdentificeerd. U kunt ook het versienummer instellen op de meest recente, waarmee de meest recente versie van de distributie wordt opgegeven. Als u de waarde van de Urn eigenschap wilt weergeven voor alle Ubuntu 22_04-lts-installatiekopieën in de regio VS - oost, voert u de volgende opdracht uit:

az vm image list --location eastus --publisher Canonical --offer 0001-com-ubuntu-server-jammy --sku 22_04-lts --all --output table

Notitie

U kunt de UrnAlias eigenschap gebruiken voor een eenvoudigere (hoewel veel minder flexibele) benadering voor het ontwerpen van een installatiekopieën die tijdens de implementatie moeten worden gebruikt. Deze eigenschap is direct beschikbaar voor de meest voorkomende installatiekopieën en u kunt de waarden ervan ophalen door de az vm image list --output table Azure CLI-opdracht uit te voeren. De komt bijvoorbeeld UrnAliasUbuntu2204 overeen met de afbeelding Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest.

De geschikte VM-grootte identificeren

Naast de beschikbaarheid van installatiekopieën moet u er ook voor zorgen dat de VM-grootte die u wilt gebruiken beschikbaar is in de Azure-regio waarop uw implementatie wordt gehost. Voer de volgende opdracht uit om dit te bevestigen:

az vm list-sizes --location eastus --output table

Identificeer de VM-grootte die geschikt is voor uw voorbeeldimplementatie in de lijst en noteer de waarde in de kolom Naam. U moet de naam in dezelfde indeling invoeren bij het uitvoeren van de Azure CLI-opdracht waarmee het inrichten van azure-VM's wordt gestart. Stel dat u Standard_F4s hebt gekozen.

Belangrijk

Voordat u verdergaat, controleert u of deze VM-grootte beschikbaar is in de Azure-regio waarop u zich richt. Pas indien nodig de waarden van parameters in de volgende opdrachten dienovereenkomstig aan.

Een brongroep maken

Nadat u de installatiekopieën en grootte van de Virtuele Azure-machine hebt geïdentificeerd, kunt u nu beginnen met het inrichtingsproces. Begin met het maken van een resourcegroep voor het hosten van de Virtuele Azure-machine en de bijbehorende afhankelijke resources. Gebruik de opdracht az group create om een resourcegroep te maken. Voor deze opdracht moet u zowel de waarde van de naam als de locatieparameters opgeven, die respectievelijk de naam van de resourcegroep en de Azure-doelregio aanwijst.

az group create --name rg_lnx-cli --location eastus

De uitvoer van de opdracht moet er ongeveer uitzien als in het volgende voorbeeld:

{
  "id": "/subscriptions/fd7edadd-187f-41dd-a5df-f80bad63c167/resourceGroups/sample-RG",
  "location": "eastus",
  "managedBy": null,
  "name": "rg_lnx-cli",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

Een Virtuele Azure-machine maken

Gebruik de az vm create opdracht om een virtuele machine te maken. Deze opdracht ondersteunt een breed scala aan parameters, waaronder de installatiekopieën van het besturingssysteem, de schijfgrootte en de beheerdersreferenties. In het volgende voorbeeld activeert de opdracht de implementatie van een Azure-VM met de az vm create naam sample-cli-vm0, die als host fungeert voor de nieuwste versie van de Ubuntu 22_04-lts-gen2-SKU. Het inrichtingsproces configureert een gebruikersaccount met beheerdersrechten met de naam azureuser met verificatie op basis van een SSH-sleutelpaar. De persoonlijke en openbare sleutel worden gegenereerd en lokaal opgeslagen op hun standaardlocatie (~/.ssh) om SSH-toegang tot de Azure-VM toe te staan. Gebruik het volgende codevoorbeeld om een Azure-VM te maken:

az vm create \
    --resource-group rg_lnx-cli \
    --name lnx-cli-vm \
    --image Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest \
    --size Standard_F4s \
    --admin-username azureuser \
    --generate-ssh-keys

Notitie

De --size parameter is optioneel. Als u besluit deze uit te sluiten, is de resulterende grootte afhankelijk van de afbeelding die u hebt gekozen.

De Virtuele Azure-machine wordt kort daarna uitgevoerd, meestal binnen een paar minuten. De Uitvoer van de Azure CLI-opdracht bevat JSON-indelingsinformatie over de zojuist geïmplementeerde Azure-VM:

{
  "fqdns": "",
  "id": "/subscriptions/fd7edadd-187f-0000-0000-000000000000/resourceGroups/rg_lnx-cli/providers/Microsoft.Compute/virtualMachines/lnx-cli-vm",
  "location": "eastus",
  "macAddress": "00-0D-3A-8C-C6-AE",
  "powerState": "VM running",
  "privateIpAddress": "10.0.0.4",
  "publicIpAddress": "20.51.149.212",
  "resourceGroup": "rg_lnx-cli",
  "zones": ""
}

Op dit moment kunt u verbinding maken met de Azure-VM door de volgende opdracht uit te voeren (nadat u de tijdelijke aanduiding voor de <public_ip_address> hebt vervangen door het IP-adres dat u hebt geïdentificeerd in de door Azure CLI gegenereerde uitvoer) van de computer waarop de persoonlijke sleutel is opgeslagen:

ssh azureuser@<public_ip_address>