É possível usar o Terraform no Azure Cloud Shell?

Marcelo Gonçalves
3 min readNov 17, 2023

--

Parece uma indagação boba, todavia, sabemos que as necessidades no mundo da tecnologia da informação depende de cada situação gerada no momento e acredito que um dia alguém vai precisar dessa informação.

O que é o Cloud Shell?

A melhor forma de elucidar sobre Azure Cloud Shell sem muitos rodeios é dizer que é um recurso no do qual podemos gerenciar, configurar e desenvolver recursos do Azure por meio de um shell que roda em um navegador. Podemos ter a experiência de um shell no portal de gerenciamento.

O que é o Terraform?

Sabemos como tem crescido o provisionamento de recursos na nuvem por meio de IaC, para aqueles que vivem a filosofia DevOps nem preciso apresentar o Terraform, mas vou explicar para aqueles que são novos no mundo cloud.

“Terraform é uma ferramenta de código aberto comumente utilizada para construir, alterar e versionar uma infraestrutura de forma segura e eficiente, através de uma linguagem declarativa.” 4Linux

Agora irei responder a pergunta! Sim é possível, vamos para os passos logo abaixo:

1 — Clique no Cloud Shell no portal do Azure:

2 — Selecione a opção Bash

2.1 — Confirme

3 — Como boa prática crie um diretório

mkdir prov_rg

4 — Entre no diretório criado

cd prov_rg/

5 — Crie o arquivo main.tf

vi main.tf

5.1 — Copie e cole o conteúdo abaixo

Obs: Para habilitar o modo inserção aperte a tecla I

terraform {
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "=3.0.0"
}
}
}

# Configure the Microsoft Azure Provider
provider "azurerm" {
skip_provider_registration = true # This is only required when the User, Service Principal, or Identity running Terraform lacks the permissions to register Azure Resource Providers.
features {}
}

6 — Para salvar o arquivo aperte a tecla ESC e depois digite :x e aperte ENTER

7 — Para teste vamos criar um resource group

7.1- Crie o arquivo rg.tf

vi rg.tf

7.2 — Copie e cole o código abaixo e salve:

resource "azurerm_resource_group" "rg" {
name = lower("rg-testecloudshell")
location = "eastus"
}

8 — Digite

terraform init

9 — Digte

terraform validate

10 — Digite

terraform plan

11 — Agora digite

terraform apply -auto-approve

Voilá!!! Você usou o Terraform no Azure Cloud Shell

--

--

Marcelo Gonçalves

Microsoft Solutions Architect | Teacher | Linux | MCP | MCT | LGPDF™ | OCI | AWS