Compartilhar via


O que é o Bicep?

O Bicep é uma linguagem específica de domínio que usa a sintaxe declarativa para implantar recursos do Azure. Em um arquivo Bicep, você define a infraestrutura que deseja implantar no Azure e, em seguida, usa esse arquivo durante todo o ciclo de vida de desenvolvimento para implantar repetidamente essa infraestrutura. Os seus recursos são implantados de maneira consistente.

O Bicep fornece sintaxe concisa, segurança de tipo confiável e suporte para reutilizar código. O Bicep uma experiência de criação de alto nível para suas soluções de infraestrutura como código no Azure.

Benefícios do Bicep

O Bicep oferece as seguintes vantagens:

  • Suporte para todos os tipos de recursos e versões de API: o Bicep dá suporte imediato a todas as versões de GA e de versão prévia dos serviços do Azure. Assim que um provedor de recursos introduzir novos tipos de recursos e versões de API, será possível usá-los no arquivo Bicep. Não é necessário aguardar as ferramentas serem atualizadas antes de usar os novos serviços.

  • Sintaxe simples: quando comparados ao modelo JSON equivalente, os arquivos Bicep são mais concisos e fáceis de ler. O Bicep não requer nenhum conhecimento prévio das linguagens de programação. A sintaxe Bicep é declarativa e especifica quais recursos e propriedades de recurso você deseja implantar.

    Os exemplos a seguir mostram a diferença entre um arquivo Bicep e o modelo JSON equivalente. Ambos os exemplos implantam uma conta de armazenamento:

    param location string = resourceGroup().location
    param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}'
    
    resource storageAccount 'Microsoft.Storage/storageAccounts@2023-05-01' = {
      name: storageAccountName
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      properties: {
        accessTier: 'Hot'
      }
    }
    

  • Experiência de criação: ao usar a Extensão Bicep para VS Code para criar os arquivos Bicep, você obtém uma experiência de criação de primeira classe. O editor fornece segurança de tipo avançada, IntelliSense e validação de sintaxe.

    Uma captura de tela da criação de um arquivo Bicep em tempo real

    Você também pode criar arquivos Bicep no Visual Studio com a extensão Bicep para Visual Studio.

  • Resultados reproduzíveis: implante sua infraestrutura em todo seu ciclo de vida de desenvolvimento com a confiança de que seus recursos são implantados de forma consistente. Os arquivos Bicep são idempotentes, o que significa que você pode implantar o mesmo arquivo muitas vezes e obter os mesmos tipos de recursos no mesmo estado. Você pode desenvolver um arquivo que representa o estado desejado, em vez de desenvolver vários arquivos separados para representar atualizações. Por exemplo, o arquivo a seguir cria uma conta de armazenamento. Se você implantar esse modelo e a conta de armazenamento quando as propriedades especificadas já existirem, as alterações não serão feitas:

    param location string = resourceGroup().location
    
    resource mystore 'Microsoft.Storage/storageAccounts@2023-05-01' = {
      name: 'mystorageaccount'
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
    }
    

  • Orquestração: Você não precisa se preocupar com as complexidades das operações de ordenação. O Resource Manager orquestra a implantação dos recursos interdependentes para que eles sejam criados na ordem correta. Quando possível, o Resource Manager implanta recursos em paralelo, o que ajuda suas implantações serem concluídas mais rapidamente do que as implantações em série. Você implanta o arquivo através de um comando, em vez de vários comandos imperativos.

    Um diagrama comparando a implantação entre um arquivo Bicep e uma infraestrutura como código não em um modelo.

  • Modularidade: use módulos para segmentar seu código Bicep em partes gerenciáveis. Os módulos ajudam a reutilizar o código e simplificar o desenvolvimento. Um módulo implementa um conjunto de recursos relacionados. Adicione um módulo a um arquivo Bicep quando você precisar implantar esses recursos.

  • Integração com serviços do Azure: o Bicep é integrado aos serviços do Azure, como Azure Policy, especificações de modelo e o Azure Blueprints.

  • Pré-visualizar alterações: você pode usar a operação what-if para pré-visualizar as alterações antes de implantar o arquivo Bicep. A operação what-if mostra quais recursos criar, atualizar ou excluir e quaisquer propriedades de recurso a serem alteradas. Ela também verifica o estado atual do seu ambiente e elimina a necessidade de gerenciar esse estado.

  • Nenhum arquivo de estado ou estado para gerenciar: o Azure armazena todo o estado. Você pode colaborar com outras pessoas e ter certeza de que suas atualizações serão tratadas conforme o esperado.

  • Sem custo e de código aberto: como o Bicep é gratuito, você não precisa pagar por recursos premium. Tem o Suporte da Microsoft.

Introdução

Para começar a usar o Bicep:

  1. Instale as ferramentas. Para obter mais informações, consulte Configurar ambientes de desenvolvimento e de implantação do Bicep ou usar o repositório de desenvolvimento/codespaces do VS Code para obter um ambiente de criação pré-configurado.
  2. Conclua o Início Rápido e os Módulos do Learn sobre o Bicep.

Para descompilar um modelo do Resource Manager existente para o Bicep, confira Como descompilar o JSON do modelo do ARM para o Bicep. Você pode usar o Playground do Bicep para exibir o Bicep e seu equivalente, JSON, lado a lado.

Para saber mais sobre os recursos disponíveis no arquivo do Bicep, confira Referência de recursos do Bicep.

Você encontra exemplos do Bicep no Repositório do GitHub do Bicep.

Sobre a linguagem de programação

O Bicep não tem a finalidade de ser uma linguagem de programação geral para gravar aplicativos. Um arquivo Bicep declara recursos e propriedades de recursos do Azure sem escrever uma sequência de comandos de programação para criá-los.

Para acompanhar o status do trabalho do Bicep, confira o Repositório do projeto Bicep.

Para saber mais sobre o Bicep, assista ao vídeo a seguir:

Você pode usar o Bicep em vez do JSON para desenvolver modelos do Resource Manager. A sintaxe JSON para criar um modelo do Resource Manager pode ser detalhada e exigir expressões complicadas. A sintaxe do Bicep reduz essa complexidade e melhora a experiência de desenvolvimento. O Bicep é uma abstração transparente em relação a um modelo JSON do Resource Manager que não perde os recursos de um modelo JSON. Durante a implantação, a CLI do Bicep converte um arquivo Bicep em um modelo JSON do Resource Manager.

Tipos de recursos, versões de API e propriedades que são válidos em um modelo do Resource Manager são válidos em um arquivo Bicep.

O Bicep oferece uma sintaxe mais fácil e concisa em comparação com seu equivalente, JSON. Você não usa expressões entre colchetes [...]. Em vez disso, você chama funções diretamente e recebe valores de parâmetros e variáveis. Você dá a cada recurso implantado um nome simbólico, facilitando a referência a esse recurso em seu modelo.

Para uma comparação completa da sintaxe, confira Comparando JSON e Bicep para modelos.

O Bicep gerencia automaticamente as dependências entre os recursos. Você pode evitar configurar dependsOn quando o nome simbólico de um recurso é usado na declaração de outro recurso.

A estrutura do arquivo Bicep é mais flexível do que um modelo JSON. Você pode declarar parâmetros, variáveis e saídas em qualquer parte do arquivo. Em JSON, você precisa declarar todos os parâmetros, variáveis e saídas dentro das seções correspondentes do modelo.

Obtenha suporte

Estas são as etapas para abrir um tíquete de suporte para problemas relacionados ao modelo do Azure Resource Manager (ARM):

  1. Abra o Portal do Azure.

  2. Selecione o ícone Suporte + Solução de problemas no canto superior direito.

  3. Em Descreva o problema brevemente, insira modelo do ARM e selecione Ir.

  4. Em Com qual serviço você está tendo o problema?, selecione Portal em Monitoramento e gerenciamento e selecione Avançar.

  5. Escolha uma assinatura e selecione Avançar.

  6. Selecione Problema com modelos do ARM e selecione Avançar.

    Captura de tela da solicitação de suporte para o modelo do ARM.

Próximas etapas

Para começar, consulte o Início Rápido.

Para obter respostas a perguntas comuns, confira Perguntas frequentes sobre o Bicep.