Partilhar via


Guia de início rápido: criar uma VM de servidor Linux usando a CLI do Azure no Azure Stack Hub

Você pode criar uma máquina virtual (VM) do Ubuntu Server 20.04 LTS usando a CLI do Azure. Neste artigo, você cria e usa uma máquina virtual. Este artigo também mostra como:

  • Conecte-se à máquina virtual com um cliente remoto.
  • Instale um servidor web NGINX e visualize a página inicial padrão.
  • Limpe os recursos não utilizados.

Pré-requisitos

Antes de começar, certifique-se de que tem os seguintes pré-requisitos:

  • Uma imagem do Linux no Azure Stack Hub Marketplace

    O Azure Stack Hub Marketplace não contém uma imagem do Linux por padrão. Faça com que o operador do Azure Stack Hub forneça a imagem do Ubuntu Server 20.04 LTS de que você precisa. O operador pode usar as instruções em Baixar itens do Marketplace do Azure para o Azure Stack Hub.

  • O Azure Stack Hub requer uma versão específica da CLI do Azure para criar e gerenciar seus recursos. Se você não tiver a CLI do Azure configurada para o Azure Stack Hub, entre em um cliente externo baseado no Windows se estiver conectado por VPN e siga as instruções para instalar e configurar a CLI do Azure.

  • Uma chave pública do Secure Shell (SSH) com o nome id_rsa.pub salvo no diretório .ssh do seu perfil de usuário do Windows. Para obter mais informações sobre como criar chaves SSH, consulte Usar um par de chaves SSH com o Azure Stack Hub.

Criar um grupo de recursos

Um grupo de recursos é um contêiner lógico onde você pode implantar e gerenciar recursos do Azure Stack Hub. No seu sistema integrado do Azure Stack Hub, execute o comando az group create para criar um grupo de recursos.

Nota

Atribuímos valores para todas as variáveis nos exemplos de código a seguir. No entanto, você pode atribuir seus próprios valores.

O exemplo a seguir cria um grupo de recursos chamado myResourceGroup com um sufixo aleatório no local local:

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

Resultados:

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

Criar uma máquina virtual

Crie uma máquina virtual usando o comando az vm create . O exemplo seguinte cria uma VM com o nome myVM. O exemplo usa Demouser como o nome de usuário admin. Altere esses valores para algo que seja apropriado para o seu ambiente.

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

Resultados:

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

O endereço IP público é retornado no PublicIpAddress parâmetro. Observe o endereço para uso posterior com a máquina virtual.

Abrir a porta 80 para o tráfego da Web

Como essa máquina virtual executa o servidor Web do IIS, você deve abrir a porta 80 para o tráfego da Internet. Para abrir a porta, use o comando az vm open-port :

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

Resultados:

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

Usar SSH para se conectar à máquina virtual

A partir de um computador cliente com SSH instalado, conecte-se à máquina virtual. Se você trabalha em um cliente Windows, use PuTTY para criar a conexão. Para se conectar à máquina virtual, você pode usar o ssh comando.

Instale o servidor web NGINX

Para atualizar os recursos do pacote e instalar o pacote NGINX mais recente, execute o seguinte script:

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"

Ver a página de boas-vindas do NGINX

Com o servidor Web NGINX instalado e a porta 80 aberta na máquina virtual, você pode acessar o servidor Web usando o endereço IP público da máquina virtual. Para fazer isso, abra um navegador e vá para http://<public IP address>. Como alternativa, você pode usar o comando curl para visualizar a página de boas-vindas do NGINX:

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"

Resultados:

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

A página de boas-vindas do servidor web NGINX

Próximos passos

Neste início rápido, você implantou uma máquina virtual de servidor Linux básica com um servidor Web. Para saber mais sobre as máquinas virtuais do Azure Stack Hub, consulte Considerações sobre máquinas virtuais no Azure Stack Hub.