O Bicep é um DSL (linguagem específica de domínio) que usa sintaxe declarativa para implantar recursos do Azure. Ele tem sintaxe concisa, segurança de tipos confiável e suporte para reutilização de código.
Há implementações para diversas tecnologias de implantação, inclusive com base no portal, modelos de ARM e modelos Terraform. A escolha da tecnologia de implantação não deve influenciar a implantação resultante das zonas de destino do Azure.
Acelerador do Bicep de ALZ
Você pode encontrar orientações passo a passo sobre como implementar, automatizar e manter seu módulo Bicep de ALZ com o Acelerador do Bicep de ALZ.
A estrutura do Acelerador do Bicep de ALZ foi desenvolvida para fornecer suporte aos usuários finais para integração e implantação do Bicep do ALZ usando pipelines de CI/CD completos, suporte para GitHub Actions e Azure DevOps Pipelines, Framework dedicado para permanecer em sincronia com novas versões do Bicep do ALZ e modificar ou adicionar módulos personalizados. Ela ainda fornece orientação de estratégia de ramificação e pipelines de solicitação pull para linting e validação de módulos Bicep.
Criar
A arquitetura aproveita a natureza modular do Azure Bicep e é composta por vários módulos. Cada módulo encapsula um recursos principal da arquitetura conceitual de Zonas de Destino do Azure. Os módulos podem ser implantados individualmente, mas há dependências a serem observadas.
A arquitetura propõe a inclusão de módulos orquestradores para simplificar a experiência de implantação. Os módulos do orquestrador podem ser usados para automatizar a implantação dos módulos e encapsular diferentes topologias de implantação.
Módulos
Um conceito central no Bicep é o uso de módulos. Os módulos permitem organizar implantações em agrupamentos lógicos. Com os módulos, você melhora a legibilidade dos arquivos Bicep com o encapsulamento de detalhes complexos de sua implantação. Você também pode facilmente reutilizar módulos em implantações diferentes.
A capacidade de reutilizar módulos oferece um benefício real ao definir e implantar zonas de destino. Ele permite ambientes repetíveis e consistentes no código, reduzindo o esforço necessário para implantar em escala.
Camadas e preparo
Além dos módulos, a arquitetura da zona de destino do Bicep é estruturada usando um conceito de camadas. Camadas são grupos de módulos Bicep que se destinam a ser implantados juntos. Esses grupos formam estágios lógicos da implementação.
Um benefício dessa abordagem em camadas é a capacidade de adicionar ao seu ambiente incrementalmente ao longo do tempo. Por exemplo, você pode começar com um pequeno número camadas. Você poderá adicionar as camadas restantes em um estágio subsequente quando estiver pronto.
Descrições do módulo
Esta seção fornece uma visão geral de alto nível dos módulos principais dessa arquitetura.
Camada
Módulo
Descrição
Links úteis
Núcleo
Grupos de Gerenciamento
Os grupos de gerenciamento são os recursos de nível mais alto em um locatário do Azure. Os grupos de gerenciamento permitem que você gerencie seus recursos com mais facilidade. Você pode aplicar a política no nível do grupo de gerenciamento, e os recursos de nível inferior herdarão essa política. Especificamente, você pode aplicar os seguintes itens no nível do grupo de gerenciamento que serão herdados pelas assinaturas no grupo de gerenciamento:
Políticas do Azure
Atribuições de função dos Controles de Acesso Baseados em Função (RBAC)
Controles de custo
Este módulo implanta a hierarquia do grupo de gerenciamento conforme definido na arquitetura conceitual da zona de destino do Azure.
As políticas DeployIfNotExists (DINE) ou Modify ajudam a garantir que as assinaturas e os recursos que compõem as zonas de destino sejam compatíveis. As políticas também aliviam o fardo da gestão das zonas de destino.
Este módulo implanta definições de política personalizadas em grupos de gerenciamento. Nem todos os clientes podem usar as políticas DINE ou Modify. Se esse for o seu caso, as diretrizes do CAF sobre políticas personalizadas fornecem orientação.
O RBAC (controle de acesso baseado em função) simplifica o gerenciamento de direitos de usuário em um sistema. Em vez de gerenciar os direitos dos indivíduos, você determina os direitos necessários para diferentes funções em seu sistema. O RBAC do Azure tem várias funções internas. As definições de função personalizadas permitem criar funções personalizadas para seu ambiente.
O Azure Monitor, a Automação do Azure e o Microsoft Sentinel permitem que você monitore e gerencie sua infraestrutura e cargas de trabalho. O Azure Monitor é uma solução que permite coletar, analisar e agir na telemetria do seu ambiente.
O Microsoft Sentinel é um SIEM (gerenciamento de eventos de informação de segurança) nativo da nuvem. Ele permite:
Coletar - Colete dados em toda a sua infraestrutura
Detectar - Detectar ameaças que não foram detectadas anteriormente
Responder - Responda a ameaças legítimas com orquestração integrada
Investigar - Investigue as ameaças com inteligência artificial
A Automação do Azure é um sistema de automação baseado em nuvem. Ele inclui:
Gerenciamento de configuração - Inventarie e rastreie alterações para máquinas virtuais Linux e Windows e gerencie a configuração de estado desejada
Gerenciamento de atualizações - Avalie a conformidade do sistema Windows e Linux e crie implantações agendadas para atender à conformidade
Automação de processos - Automatize tarefas de gerenciamento
Este módulo implanta as ferramentas necessárias para monitorar, gerenciar e avaliar ameaças ao seu ambiente. Essas ferramentas devem incluir o Azure Monitor, a Automação do Azure e o Microsoft Sentinel.
O IAM (gerenciamento de identidades e acesso) é um limite importante de segurança em cloud computing. O RBAC do Azure permite que você execute atribuições de função d funções integradas ou definições de função personalizadas para entidades de segurança.
Este módulo implanta as atribuições padrão da Política do Azure na Zona de Destino do Azure para grupos de gerenciamento. Ele também cria atribuições de função para identidades gerenciadas atribuídas pelo sistema criadas por políticas.
Os módulos do Orchestrator podem melhorar muito a experiência de implantação. Esses módulos encapsulam a implantação de vários módulos em um único módulo. Isso oculta a complexidade do usuário final.
As implementações da Zona de Destino do Azure fornecidas como parte da Cloud Adoption Framework se ajustam a diversos requisitos e casos de uso. No entanto, geralmente há cenários em que a personalização é necessária para atender a necessidades comerciais específicas.
Depois que a zona de destino da plataforma for implementada, a próxima etapa será implantar zonas de destino de aplicativos, que permitem as equipes do aplicativo no grupo de gerenciamento landing zones com as proteções que os administradores de Central IT ou PlatformOps exigem. O grupo de gerenciamento corp é para aplicativos corporativos conectados, enquanto o grupo de gerenciamento online é para aplicativos que são principalmente voltados para o público, mas ainda podem se conectar a aplicativos corporativos por meio de redes de hub em alguns cenários.
A implementação da Zona de Destino do Azure do Bicep pode ser usada como base de sua implantação personalizada. Ele fornece uma maneira de acelerar sua implementação, eliminando a necessidade de começar do zero por causa de uma alteração necessária específica que rege uma opção pronta.
Como arquiteto de soluções do Microsoft Azure, você aconselha os stakeholders e converte os requisitos de negócios em designs de soluções do Azure alinhadas à Azure Well-Architected Framework.