Seções de modelos do CloudFormation - AWS CloudFormation

Seções de modelos do CloudFormation

Cada modelo do CloudFormation consiste em uma ou mais seções, cada uma servindo a um propósito específico.

A seção Recursos é obrigatória em todos os modelos do CloudFormation e forma o núcleo do modelo. Ela especifica os recursos da pilha e suas propriedades, como uma instância do Amazon EC2 ou um bucket do Amazon S3. Cada recurso é definido com um ID lógico exclusivo, tipo e detalhes de configuração específicos.

A seção Parâmetros, embora opcional, desempenha um papel importante para tornar os modelos mais flexíveis. Ele permite que os usuários passem valores em tempo de execução ao criarem ou atualizarem uma pilha. Esses parâmetros podem ser referenciados nas seções Resources e Outputs, permitindo a personalização sem alterar o modelo em si. Por exemplo, você pode usar parâmetros para especificar tipos de instância ou configurações de ambiente que variam entre as implantações.

A seção Saídas, também opcional, define os valores que são retornados quando as propriedades de uma pilha são visualizadas. As saídas fornecem informações úteis, como identificadores de recursos ou URLs, as quais podem ser aproveitadas para fins operacionais ou para integração com outras pilhas. Esta seção ajuda os usuários a recuperar e usar detalhes importantes sobre os recursos criados pelo modelo.

Outras seções opcionais incluem Mapeamentos, que funcionam como tabelas de pesquisa para gerenciar valores condicionais. Com os mapeamentos, você define pares de chave valor e os usa com a função intrínseca Fn::FindInMap nas seções Resources e Outputs. Isso é útil para cenários em que você precisa ajustar as configurações com base em condições como Região da AWS ou ambiente.

As seções Metadados e Regras, embora menos usadas, fornecem funcionalidades adicionais. Metadata pode incluir informações adicionais sobre o modelo, ao mesmo tempo que Rules valida um parâmetro ou uma combinação de parâmetros durante a criação ou as atualizações da pilha, garantindo que atendam a critérios específicos. A seção Condições aumenta ainda mais a flexibilidade ao controlar se determinados recursos são criados ou propriedades são atribuídas a um valor com base em condições como o tipo de ambiente.

Por fim, a seção Transformar é usada para aplicar macros durante o processamento do modelo. Em Aplicações sem servidor (também chamadas de aplicações do Lambda), especifique a versão do AWS Serverless Application Model (AWS SAM) que deve ser usada. Quando você especifica uma transformação, você pode usar a sintaxe do AWS SAM para declarar recursos em seu modelo. O modelo define a sintaxe que você pode usar e como ela é processada. Você também pode usar a transformação AWS::Include para incluir trechos de modelo que são armazenados separadamente do modelo principal do CloudFormation.

Os tópicos a seguir fornecem informações adicionais e exemplos para usar cada seção.