Rövid útmutató: Linux-kiszolgálói virtuális gép létrehozása az Azure CLI használatával az Azure Stack Hubban

Az Azure CLI használatával létrehozhat egy Ubuntu Server 20.04 LTS virtuális gépet (VM). Ebben a cikkben virtuális gépet hoz létre és használ. Ez a cikk a következőket is ismerteti:

  • Csatlakozzon a virtuális géphez egy távoli ügyféllel.
  • Telepítsen egy NGINX-webkiszolgálót, és tekintse meg az alapértelmezett kezdőlapot.
  • A nem használt erőforrások eltávolítása.

Előfeltételek

Mielőtt elkezdené, győződjön meg róla, hogy az alábbi előfeltételek rendelkezésre állnak:

  • Linux-rendszerkép az Azure Stack Hub Marketplace-en

    Az Azure Stack Hub Marketplace alapértelmezés szerint nem tartalmaz Linux rendszerképet. Az Azure Stack Hub operátor adja meg a szükséges Ubuntu Server 20.04 LTS-lemezképet. Az operátor az Azure-ból az Azure Stack Hubba töltheti le a Marketplace-elemeket.

  • Az Azure Stack Hub erőforrásainak létrehozásához és kezeléséhez az Azure CLI egy adott verziója szükséges. Ha nem rendelkezik az Azure Stack Hubhoz konfigurált Azure CLI-vel, jelentkezzen be egy Windows-alapú külső ügyfélalkalmazásba, ha VPN-en keresztül csatlakozik, és kövesse az Azure CLI telepítésére és konfigurálására vonatkozó utasításokat.

  • Nyilvános Secure Shell-kulcs (SSH) a Windows felhasználói profil .ssh könyvtárában mentett id_rsa.pub névvel. További információ az SSH-kulcsok létrehozásáról: SSH-kulcspár használata az Azure Stack Hubbal.

Erőforráscsoport létrehozása

Az erőforráscsoport egy logikai tároló, ahol üzembe helyezheti és kezelheti az Azure Stack Hub-erőforrásokat. Az Azure Stack Hub integrált rendszerében futtassa az az group create parancsot egy erőforráscsoport létrehozásához.

Feljegyzés

Az alábbi kód példákban az összes változóhoz rendeltünk értékeket. Azonban saját értékeket is hozzárendelhet.

Az alábbi példa létrehoz egy myResourceGroup nevű erőforráscsoportot egy véletlenszerű utótaggal a helyi helyen:

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

Eredmények:

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

Virtuális gép létrehozása

Hozzon létre egy virtuális gépet az az vm create paranccsal. Az alábbi példában egy myVM nevű virtuális gépet hoz létre. A példa rendszergazdai felhasználónévként szolgál Demouser . Módosítsa ezeket az értékeket a környezetének megfelelő értékre.

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

Eredmények:

{
  "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"
}

A nyilvános IP-cím a paraméterben PublicIpAddress lesz visszaadva. Jegyezze fel a virtuális géppel való későbbi használathoz használt címet.

A 80-as port megnyitása a webes adatforgalom számára

Mivel ez a virtuális gép az IIS-webkiszolgálót futtatja, meg kell nyitnia a 80-es portot az internetes forgalom felé. A port megnyitásához használja az az vm open-port parancsot:

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

Eredmények:

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

SSH használata a virtuális géphez való csatlakozáshoz

Egy telepített SSH-val rendelkező ügyfélszámítógépről csatlakozzon a virtuális géphez. Ha Windows-kliensen dolgozik, a PuTTY használatával hozza létre a kapcsolatot. A virtuális géphez való csatlakozáshoz használhatja a ssh parancsot.

Az NGINX-webkiszolgáló telepítése

A csomagerőforrások frissítéséhez és a legújabb NGINX-csomag telepítéséhez futtassa a következő szkriptet:

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"

Az NGINX kezdőlapjának megtekintése

Az NGINX webkiszolgáló telepítve van, és a 80-os port meg van nyitva a virtuális gépen, a virtuális gép nyilvános IP-címével érheti el a webkiszolgálót. Ehhez nyisson meg egy böngészőt, és nyissa meg a http://<public IP address>kívánt lehetőséget. Másik lehetőségként a curl paranccsal is megtekintheti az NGINX üdvözlőoldalát:

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"

Eredmények:

<!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>

Az NGINX webkiszolgáló üdvözlőoldala

Következő lépések

Ebben a rövid útmutatóban üzembe helyezett egy alapszintű Linux-kiszolgálói virtuális gépet egy webkiszolgálóval. Az Azure Stack Hub virtuális gépekkel kapcsolatos további információkért tekintse meg az Azure Stack Hub virtuális gépeinek szempontjait.