Usando o AWS CDK como uma ferramenta de IaC - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usando o AWS CDK como uma ferramenta de IaC

AWS Cloud Development Kit (AWS CDK)É uma estrutura de desenvolvimento de software de código aberto que permite definir seus recursos de aplicativos em nuvem usando linguagens de programação conhecidas. Os AWS CDK suportes JavaScript são Python, Java, C# e Go. TypeScript O AWS CDK provisiona seus recursos de forma segura e repetível. AWS CloudFormation Quando você sintetiza seu AWS CDK código, o resultado é um CloudFormation modelo. Isso AWS CDK fornece abstrações de alto nível que simplificam o processo de definição AWS de recursos.

AWS CDK Ele usa o conceito de construções. Uma construção é um componente dentro do seu aplicativo que representa um ou mais CloudFormation recursos e suas configurações, como um bucket do Amazon Simple Storage Service (Amazon S3). As construções podem ser compostas e personalizadas para criar uma infraestrutura mais complexa. Para obter mais informações, consulte Níveis de construção na AWS CDK documentação. O AWS CDK gera CloudFormation modelos com base no código escrito pelos desenvolvedores. Isso elimina a necessidade de criação manual CloudFormation de modelos. Muitas organizações personalizam, compartilham e reutilizam construções dentro de uma comunidade, assim como qualquer outra biblioteca de software. O compartilhamento de construções ajuda os desenvolvedores a programar com mais rapidez e a incorporar as melhores práticas por padrão.

AWS CDK aspectos podem ajudar as organizações a aplicar padrões a todas as construções dentro de um determinado escopo. O aspecto pode modificar as construções, por exemplo, adicionando tags. Ou poderia verificar algo sobre o estado das construções.

AWS CDK Isso permite que os desenvolvedores usem suas habilidades e conhecimentos de programação existentes para definir a infraestrutura de nuvem. Ao usar linguagens de programação conhecidas, os desenvolvedores podem aplicar seus conhecimentos para descrever AWS recursos, facilitando a transição do desenvolvimento de aplicativos para o provisionamento de infraestrutura. Além disso, AWS CDK eles podem agilizar a criação de AWS infraestrutura. Isso acelera o ciclo de vida do desenvolvimento em comparação com a criação manual de modelos. CloudFormation

Vantagens de usar o AWS CDK:

  • O AWS CDK suporta linguagens de programação conhecidas.

  • As linguagens de uso geral permitem o uso de construções lógicas, como for-loops, objetos, tipos fortes e outras técnicas de programação. Isso ajuda os desenvolvedores a declarar a infraestrutura de forma concisa e sem erros. Essa abordagem também possibilita o uso de um ambiente de desenvolvimento integrado (IDE) e ferramentas relacionadas para ajudar a gerenciar a complexidade da declaração de um grande número de recursos.

  • AWS CDK as construções são compartilháveis e ajudam você a atender aos requisitos de governança e conformidade.

  • As AWS CDK construções podem diminuir o tempo e o esforço de desenvolvimento. Para obter mais informações, consulte a Referência da API Construct Library.

  • O AWS CDK é baseado em CloudFormation. Se você estiver familiarizado com CloudFormation seus conceitos, os AWS CDK conceitos serão mais fáceis de entender.

  • AWS CDK Isso ajuda você a realizar testes de unidade e testes instantâneos.

  • Se um recurso não for suportado nativamente no AWS CDK, você pode usar uma construção de nível 1 e substituições brutas. Como alternativa, você pode usar um recurso CloudFormation personalizado que chame a API diretamente.

  • Você pode limpar os recursos de forma eficiente excluindo as CloudFormation pilhas.

Desvantagens de usar o AWS CDK:

  • AWS CDK Isso requer um ambiente inicializado em cada um. Conta da AWS O bootstrapping é uma ação única que você deve executar em cada ambiente em que você implanta recursos.

  • O AWS CDK pode ser usado para implantar o IaC somente no Nuvem AWS.