IaC na Azure [1/X] Configurando o CLI.

Ola, nessa série de post vou mostrar e explicar como montar uma estrutura de IaC (Infrastructure as code) na Azure. Estou fazendo isso, pois um dos meus clientes esta utilizando a Azure mas faz uso de IaC, e desta forma vou aproveitar a necessidade da portabilidade para essa estrutura para ir explicando o modelo e os conceitos.

Se você, não tem ideia do que é IaC, ao menos leia: https://pt.wikipedia.org/wiki/Infraestrutura_como_C%C3%B3digo

Nesse primeiro post, vou tratar apenas da configuração da Azure CLI, se você já tem isso, pode ir para o próximo.

Do inicio.

Vou começar prevendo que a Azure esta vazia, sem nada rodando nela. Se já existe coisas, não fique preocupado, a ideia é partir do principio de que esta sem uma configuração previa “escondida”. Também vamos usar a CLI para facilitar a documentação. Daria para fazer tudo via web, mas o numero de telas seria muito maior.

Crie a sua conta em: https://azure.microsoft.com

Instalando o Azure CLI.

Depois da conta criada, faça a instalação do Azure CLI. Aqui esta a documentação: https://docs.microsoft.com/pt-br/cli/azure/install-azure-cli-linux?pivots=apt

Mais basicamente é:

sudo apt-get update
sudo apt-get install ca-certificates curl apt-transport-https lsb-release gnupg
curl -sL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
AZ_REPO=$(lsb_release -cs)
echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ $AZ_REPO main" | sudo tee /etc/apt/sources.list.d/azure-cli.list
sudo apt-get update
sudo apt-get install azure-cli

Com o CLI instalado, vamos fazer nossa configuração de conta.

Fazendo o login no CLI.

Usando o comando:

az login

Ele vai te direcionar para a tela de login da Azure no navegador.

Após a autenticação, a saída do comando, deve ser algo parecido com isso:

[
  {
    "cloudName": "AzureCloud",
    "homeTenantId": "7c46e530-57ea-47f0-9f1f-6f16946ba668",
    "id": "1171107f-3bec-454d-9f7a-7a9a6a18bc7a",
    "isDefault": true,
    "managedByTenants": [],
    "name": "Assinatura do Azure 1",
    "state": "Enabled",
    "tenantId": "7c46e530-57ea-47f0-9f1f-6f16946ba668",
    "user": {
      "name": "paulo.ferreira25",
      "type": "user"
    }
  }
]

Para testar se esta ok, utilize o:

az account show

Pode acontecer de você precisar passar a TENANT_ID no login.

Esse HowTo mostra como achar a sua TENANT

https://docs.microsoft.com/en-us/azure/active-directory/fundamentals/active-directory-how-to-find-tenant

Desta forma seu comando de login fica:

az login --tenant c85f42b5-0356-4597-9710-c85f6d52ccbe

Obs: Todos os UUIDs foram regerados para não precisar trocar ou esconder.