Delen via


Quickstart: Een virtuele Linux-server maken met behulp van de Azure CLI in Azure Stack Hub

U kunt een virtuele Ubuntu Server 20.04 LTS-machine (VM) maken met behulp van de Azure CLI. In dit artikel maakt en gebruikt u een virtuele machine. In dit artikel leest u ook hoe u het volgende kunt doen:

  • Maak verbinding met de virtuele machine met een externe client.
  • Installeer een NGINX-webserver en bekijk de standaardstartpagina.
  • Ongebruikte resources opschonen.

Vereisten

Voordat u begint, zorg ervoor dat u over de volgende vereisten beschikt:

  • Een Linux-installatiekopieën in Azure Stack Hub Marketplace

    Azure Stack Hub Marketplace bevat standaard geen Linux-installatiekopieën. Laat de Azure Stack Hub-operator de Ubuntu Server 20.04 LTS-installatiekopie opgeven die u nodig hebt. De operator kan de instructies in Marketplace-items downloaden van Azure naar Azure Stack Hub gebruiken.

  • Voor Azure Stack Hub is een specifieke versie van de Azure CLI vereist om de resources te maken en te beheren. Als u de Azure CLI niet hebt geconfigureerd voor Azure Stack Hub, meldt u zich aan bij een externe Windows-client als u via VPN bent verbonden en volgt u de instructies voor het installeren en configureren van de Azure CLI.

  • Een openbare SSH-sleutel (Secure Shell) met de naam id_rsa.pub die is opgeslagen in de MAP .ssh van uw Windows-gebruikersprofiel. Zie Een SSH-sleutelpaar gebruiken met Azure Stack Hub voor meer informatie over het maken van SSH-sleutels.

Een brongroep maken

Een resourcegroep is een logische container waar u Azure Stack Hub-resources kunt implementeren en beheren. Voer vanuit uw geïntegreerde Azure Stack Hub-systeem de opdracht az group create uit om een resourcegroep te maken.

Notitie

We hebben waarden toegewezen voor alle variabelen in de volgende codevoorbeelden. U kunt echter uw eigen waarden toewijzen.

In het volgende voorbeeld wordt een resourcegroep met de naam myResourceGroup gemaakt met een willekeurig achtervoegsel op de lokale locatie:

export RANDOM_SUFFIX=$(openssl rand -hex 3)
export RESOURCE_GROUP="myResourceGroup$RANDOM_SUFFIX"
export LOCATION="eastus2"
az group create --name $RESOURCE_GROUP --location $LOCATION

Resultaten:

{
  "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx",
  "location": "local",
  "managedBy": null,
  "name": "myResourceGroupxxx",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

Maak een virtuele machine

Maak een virtuele machine met behulp van de opdracht az vm create . In het volgende voorbeeld wordt een VM met de naam myVM gemaakt. In het voorbeeld wordt de gebruikersnaam van de beheerder gebruikt Demouser . Wijzig deze waarden in iets dat geschikt is voor uw omgeving.

export VM_NAME="myVM$RANDOM_SUFFIX"
az vm create \
  --resource-group $RESOURCE_GROUP \
  --name $VM_NAME \
  --image "Ubuntu2204" \
  --admin-username "azureuser" \
  --assign-identity \
  --generate-ssh-keys \
  --public-ip-sku Standard \
  --location $LOCATION

Resultaten:

{
  "fqdns": "",
  "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.Compute/virtualMachines/myVMxxx",
  "location": "local",
  "name": "myVMxxx",
  "osProfile": {
    "computerName": "myVMxxx",
    "adminUsername": "Demouser"
  },
  "publicIpAddress": "x.x.x.x",
  "powerState": "VM running",
  "provisioningState": "Succeeded"
}

Het openbare IP-adres wordt geretourneerd in de PublicIpAddress parameter. Noteer het adres voor later gebruik met de virtuele machine.

Poort 80 openen voor webverkeer

Omdat deze virtuele machine de IIS-webserver uitvoert, moet u poort 80 openen voor internetverkeer. Gebruik de opdracht az vm open-port om de poort te openen:

az vm open-port --port 80 --resource-group $RESOURCE_GROUP --name $VM_NAME

Resultaten:

{
  "endPort": 80,
  "name": "openPort80",
  "port": 80,
  "protocol": "Tcp",
  "provisioningState": "Succeeded",
  "resourceGroup": "myResourceGroupxxx",
  "startPort": 80
}

SSH gebruiken om verbinding te maken met de virtuele machine

Maak vanaf een clientcomputer waarop SSH is geïnstalleerd, verbinding met de virtuele machine. Als u met een Windows-client werkt, gebruikt u PuTTY om de verbinding te maken. Als u verbinding wilt maken met de virtuele machine, kunt u de ssh opdracht gebruiken.

De NGINX-webserver installeren

Voer het volgende script uit om pakketbronnen bij te werken en het meest recente NGINX-pakket te installeren:

output=$(az vm run-command invoke --resource-group $RESOURCE_GROUP --name $VM_NAME --command-id RunShellScript --scripts 'apt-get -y install nginx')
value=$(echo "$output" | jq -r '.value[0].message')
extracted=$(echo "$value" | awk '/[stdout]/,/[stderr]/' | sed '/[stdout]/d' | sed '/[stderr]/d')
echo "$extracted"

De welkomstpagina van NGINX weergeven

Als de NGINX-webserver is geïnstalleerd en poort 80 is geopend op uw virtuele machine, hebt u toegang tot de webserver met behulp van het openbare IP-adres van de virtuele machine. Hiervoor opent u een browser en gaat u naar http://<public IP address>. U kunt ook de curl-opdracht gebruiken om de welkomstpagina van NGINX weer te geven:

export PUBLIC_IP=$(az vm show -d -g $RESOURCE_GROUP -n $VM_NAME --query publicIps -o tsv)

output=$(az vm run-command invoke --resource-group $RESOURCE_GROUP --name $VM_NAME --command-id RunShellScript --scripts 'curl -v http://localhost')
value=$(echo "$output" | jq -r '.value[0].message')
extracted=$(echo "$value" | awk '/[stdout]/,/[stderr]/' | sed '/[stdout]/d' | sed '/[stderr]/d')
echo "$extracted"

Resultaten:

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
  body {
    width: 35em;
    margin: 0 auto;
    font-family: Tahoma, Verdana, Arial, sans-serif;
  }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

De welkomstpagina van de NGINX-webserver

Volgende stappen

In deze quickstart hebt u een eenvoudige virtuele Linux-servermachine geïmplementeerd met een webserver. Zie Overwegingen voor virtuele machines in Azure Stack Hub voor meer informatie over virtuele Machines in Azure Stack Hub.