Compartilhar via


Como criar e gerenciar recursos no Azure?

Este artigo é a parte cinco de uma série de sete artigos que ajudam os desenvolvedores a começar a usar o Azure.

O Azure oferece várias ferramentas para criar e gerenciar os recursos que o seu aplicativo utiliza.

Ferramentas diferentes dão suporte a vários casos de uso e a maioria dos desenvolvedores do Azure usa uma combinação de ferramentas dependendo do trabalho. Por exemplo, é possível:

  • Use uma ferramenta de GUI como o portal do Azure ou a extensão Ferramentas do Azure para VS Code ao criar protótipos de recursos do Azure para um novo aplicativo. As ferramentas de GUI orientam você no processo de criação de novos serviços e permitem que você revise e selecione as opções de um serviço usando menus suspensos e outros elementos gráficos.

  • Escreva um script usando a CLI do Azure ou o Azure PowerShell para automatizar uma tarefa comum. Por exemplo, você pode criar um script que cria um ambiente de desenvolvimento básico para um novo aplicativo Web que consiste em um Serviço de Aplicativo do Azure, um banco de dados e um armazenamento de blobs. Escrever um script garante a criação de recursos consistente e é mais rápido do que usar uma interface do usuário.

  • Use ferramentas de IaC (Infraestrutura como código) para implantar e gerenciar de forma declarativa os recursos do Azure. Ferramentas como Terraform, Ansible e Bicep permitem codificar os recursos do Azure em sintaxe declarativa, garantindo a implantação consistente entre ambientes e evitando a descompasso ambiental.

portal do Azure

O portal do Azure é uma interface da Web para gerenciar recursos do Azure, como aplicativos de API. Os recursos do portal do Azure:

  • Uma interface do usuário fácil de usar e baseada na Web para criar e gerenciar recursos do Azure
  • Criar painéis configuráveis
  • Acessar as configurações de assinatura e as informações de cobrança

A screenshot showing the Azure portal.Uma captura de tela mostrando o portal do Azure.

Pacote de Extensão de Ferramentas do Azure para VS Code

Os desenvolvedores que usam o Visual Studio Code gerenciam recursos do Azure diretamente no VS Code com o Pacote de Extensão das Ferramentas do Azure para VS Code. O Pacote de Extensão das Ferramentas do Azure permite:

  • Criar, gerenciar e implantar código em sites com o Serviço de Aplicativo do Azure
  • Criar, procurar e consultar bancos de dados do Azure
  • Criar, depurar e implantar o Azure Functions diretamente no VS Code
  • Implantar aplicativos em contêineres no VS Code

Para obter a lista completa de recursos, consulte a página de download da extensão.

A screenshot showing Visual Studio Code with the Azure Tools extension pack installed.Uma captura de tela mostrando o Visual Studio Code com o pacote de extensão das ferramentas do Azure instalado.

Ferramentas de linha de comando

As ferramentas de linha de comando oferecem eficiência, repetibilidade e capacidade de criar script de tarefas recorrentes. O Azure fornece duas ferramentas de linha de comando: a CLI do Azure e o Azure PowerShell. Ambas as ferramentas são funcionalmente equivalentes, portanto, selecione aquela que se ajuste ao fluxo de trabalho.

CLI do Azure

A CLI do Azure é uma ferramenta de linha de comando multiplataforma que é executada no Windows, linux e macOS. A CLI do Azure:

  • Apresenta uma sintaxe concisa e eficiente para gerenciar recursos do Azure
  • Gera resultados como JSON (por padrão). Os resultados também podem ser formatados como YAML, uma tabela ASCII ou como valores separados por tabulação, sem a inclusão de chaves.
  • Fornece a capacidade de consultar e moldar a saída usando consultas JMESPath

Os comandos da CLI do Azure se integram facilmente a linguagens de script populares, como o Bash, permitindo que você crie scripts de tarefas comuns.

LOCATION='eastus'                                        
RESOURCE_GROUP_NAME='msdocs-expressjs-mongodb-tutorial'

WEB_APP_NAME='msdocs-expressjs-mongodb-123'
APP_SERVICE_PLAN_NAME='msdocs-expressjs-mongodb-plan-123'    
RUNTIME='NODE|14-lts'

# Create a resource group
az group create \
    --location $LOCATION \
    --name $RESOURCE_GROUP_NAME

# Create an app service plan
az appservice plan create \
    --name $APP_SERVICE_PLAN_NAME \
    --resource-group $RESOURCE_GROUP_NAME \
    --sku B1 \
    --is-linux

# Create the web app in the app service
az webapp create \
    --name $WEB_APP_NAME \
    --runtime $RUNTIME \
    --plan $APP_SERVICE_PLAN_NAME \
    --resource-group $RESOURCE_GROUP_NAME 

Azure PowerShell

O Azure PowerShell é um conjunto de cmdlets para gerenciar recursos do Azure diretamente do PowerShell. O Azure PowerShell é instalado como um módulo PowerShelld e funciona com o PowerShell 7.0.6 LTS e o PowerShell 7.1.3 ou superior em todas as plataformas, incluindo Windows, macOS e Linux. Também é compatível com o Windows PowerShell 5.1.

O Azure PowerShell integra-se firmemente ao idioma do PowerShell. Os comandos usam um formato de verbo-substantivo e os dados são retornados como objetos do PowerShell. Se você já estiver familiarizado com o script do PowerShell, o Azure PowerShell será uma opção natural.

$location = 'eastus'
$resourceGroupName = 'msdocs-blob-storage-demo-azps'
$storageAccountName = 'stblobstoragedemo999'

# Create a resource group
New-AzResourceGroup `
    -Location $location `
    -Name $resourceGroupName

# Create the storage account
New-AzStorageAccount `
    -Name $storageAccountName `
    -ResourceGroupName $resourceGroupName `
    -Location $location `
    -SkuName Standard_LRS

Para obter mais informações sobre como escolher entre a CLI do Azure e o Azure PowerShell, consulte o artigo Escolher a ferramenta de linha de comando certa.

Infraestrutura como ferramentas de código

A infraestrutura como código é o processo de gerenciamento e provisionamento de recursos por meio de arquivos de configuração declarativos. As ferramentas de infraestrutura como código usam uma especificação de estado final declarativa para garantir que um conjunto de recursos seja criado e configurado da mesma maneira todas as vezes. A maioria das ferramentas de infraestrutura como código também monitora os recursos para garantir que eles permaneçam configurados no estado desejado.

O Azure dá suporte a várias infraestruturas como ferramentas de código para implantações automatizadas, repetidas e confiáveis.

Bicep

O Bicep é um DSL (linguagem específica de domínio) que usa sintaxe declarativa para implantar recursos do Azure. Ele fornece sintaxe concisa, segurança de tipos confiável e suporte para reutilização de código.

param location string = resourceGroup().location
param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}'

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-06-01' = {
  name: storageAccountName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
  properties: {
    accessTier: 'Hot'
  }
}

Terraform

O Hashicorp Terraform é uma ferramenta de software livre para provisionar e gerenciar infraestruturas de nuvem. Ele codifica a infraestrutura em arquivos de configuração que descrevem a topologia dos recursos de nuvem. A CLI do Terraform fornece um mecanismo simples para implantar e controlar a versão de arquivos de configuração para o Azure.

provider "azurerm" {
  features {}
}

resource "azurerm_resource_group" "main" {
  name     = "${var.prefix}-resources"
  location = var.location
}

resource "azurerm_app_service_plan" "main" {
  name                = "${var.prefix}-asp"
  location            = azurerm_resource_group.main.location
  resource_group_name = azurerm_resource_group.main.name
  kind                = "Linux"
  reserved            = true

  sku {
    tier = "Standard"
    size = "S1"
  }
}

resource "azurerm_app_service" "main" {
  name                = "${var.prefix}-appservice"
  location            = azurerm_resource_group.main.location
  resource_group_name = azurerm_resource_group.main.name
  app_service_plan_id = azurerm_app_service_plan.main.id

  site_config {
    linux_fx_version = "NODE|10.14"
  }
}

Ansible

Ansible é um produto de código-fonte aberto que automatiza o provisionamento de nuvem, o gerenciamento de configurações e as implantações de aplicativos. Usando o Ansible, você pode provisionar máquinas virtuais, contêineres, redes e infraestruturas de nuvem completas. O Ansible também permite automatizar a implantação e a configuração de recursos em seu ambiente.

- hosts: localhost
  connection: local
  vars:
    resource_group: myResourceGroup
    webapp_name: myfirstWebApp
    plan_name: myAppServicePlan
    location: eastus
  tasks:
    - name: Create a resource group
      azure_rm_resourcegroup:
        name: "{{ resource_group }}"
        location: "{{ location }}"

    - name: Create App Service on Linux with Java Runtime
      azure_rm_webapp:
        resource_group: "{{ resource_group }}"
        name: "{{ webapp_name }}"
        plan:
          resource_group: "{{ resource_group }}"
          name: "{{ plan_name }}"
          is_linux: true
          sku: S1
          number_of_workers: 1
        frameworks:
          - name: "java"
            version: "8"
            settings:
              java_container: tomcat
              java_container_version: 8.5

SDK do Azure e APIs REST

Os recursos do Azure podem ser criados programaticamente a partir do código. Isso permite que você escreva aplicativos que provisionam dinamicamente os recursos do Azure em resposta às solicitações do usuário. O SDK do Azure fornece pacotes de gerenciamento de recursos no .NET, Go, Java, JavaScript e Python que permitem criar e gerenciar recursos do Azure diretamente no código. Como alternativa, a API REST do Azure permite gerenciar recursos do Azure por meio de solicitações HTTP para um ponto de extremidade RESTful.