Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você pode criar uma VM (máquina virtual) 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, verifique se você 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 necessária. 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 meio de 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 salva 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 em que você pode implantar e gerenciar recursos do Azure Stack Hub. No sistema integrado do Azure Stack Hub, execute o comando az group create para criar um grupo de recursos.
Observação
Atribuimos 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:
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 a seguir cria uma VM chamada myVM. O exemplo usa Demouser como nome de usuário administrador. Altere esses valores para algo apropriado para 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. Anote o endereço para uso posterior com a máquina virtual.
Abra a porta 80 para 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
Em um computador cliente com SSH instalado, conecte-se à máquina virtual. Se você trabalhar 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"
Exibir a página de boas-vindas do NGINX
Com o servidor Web NGINX instalado e a porta 80 aberta em sua 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 exibir 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>
Próximas etapas
Neste guia de início rápido, você implantou uma máquina virtual de servidor Linux básica com um servidor Web. Para saber mais sobre máquinas virtuais do Azure Stack Hub, confira Considerações sobre máquinas virtuais no Azure Stack Hub.