View a markdown version of this page

Uso de recursos do Registro Público do AWS CloudFormation - AWS Kit de desenvolvimento em nuvem (AWS CDK) v2

Este é o Guia do desenvolvedor do AWS CDK v2. O CDK v1 antigo entrou em manutenção em 1º de junho de 2022 e encerrou o suporte em 1º de junho de 2023.

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á.

Uso de recursos do Registro Público do AWS CloudFormation

O Registro Público do AWS CloudFormation permite gerenciar extensões, públicas e privadas, como recursos, módulos e hooks que estejam disponíveis para uso na sua conta da AWS. É possível usar extensões de recursos públicos em suas aplicações do kit de desenvolvimento em nuvem da AWS (CDK da ) da AWS com o constructo CfnResource.

Para saber mais sobre o Registro Público do AWS CloudFormation, consulte Uso do registro do AWSCloudFormation no Guia do usuário do AWSCloudFormation.

Todas as extensões públicas publicadas por AWS estão disponíveis para todas as contas em todas as regiões sem nenhuma ação de sua parte. No entanto, você deve ativar cada extensão de terceiros que deseja usar, em cada conta e região em que deseja usá-la.

nota

Ao usar o AWS CloudFormation com tipos de recursos de terceiros, você incorrerá em cobranças. As cobranças são baseadas no número de operações do manipulador que você executa por mês e na duração da operação do manipulador. Consulte os preços do CloudFormation para obter detalhes completos.

Para saber mais sobre extensões públicas, consulte Uso de extensões públicas no CloudFormation no Guia do usuário doAWS CloudFormation.

Ative um recurso de terceiros em sua conta e região

As extensões publicadas por AWS não exigem ativação. Estão sempre disponíveis em todas as contas e regiões. É possível ativar uma extensão de terceiros por meio do Console de Gerenciamento da AWS, via AWS Command Line Interface ou implantando um recurso especial do AWS CloudFormation.

Para ativar uma extensão de terceiros por meio do Console de Gerenciamento da AWS ou ver quais recursos estão disponíveis
ativação da extensão cfn
  1. Faça login na conta AWS na qual você deseja usar a extensão e, em seguida, alterne para a região em que deseja usá-la.

  2. Navegue até o console do CloudFormation por meio do menu Serviços.

  3. Escolha Extensões públicas na barra de navegação e ative o botão de rádio de terceiros no Publicador. Uma lista das extensões públicas de terceiros disponíveis é exibida. (Você também pode escolher AWS para ver uma lista das extensões públicas publicadas por AWS, embora não precise ativá-las.)

  4. Navegue pela lista e encontre a extensão que deseja ativar. Como alternativa, procure-a e ative o botão de opção no canto superior direito do cartão da extensão.

  5. Escolha o botão Ativar na parte superior da lista para ativar a extensão selecionada. A página Ativar da extensão será exibida.

  6. Na página Ativar, será possível substituir o nome padrão da extensão e especificar um perfil de execução e uma configuração de logs. Você também pode escolher se deseja atualizar a extensão automaticamente quando uma nova versão for lançada. Depois de definir essas opções conforme desejar, escolha Ativar extensão na parte inferior da página.

Para ativar uma extensão de terceiros usando a AWS CLI
  • Use o comando activate-type. Substitua o ARN do tipo personalizado que você deseja usar onde indicado.

    Veja um exemplo a seguir:

    aws cloudformation activate-type --public-type-arn <public_extension_ARN> --auto-update-activated
Para ativar uma extensão de terceiros por meio do CloudFormation ou do CDK
  1. Implante um recurso do tipo AWS::CloudFormation::TypeActivation e especifique as seguintes propriedades:

    1. TypeName - O nome do tipo, como AWSQS::EKS::Cluster.

    2. MajorVersion - O número da versão principal da extensão que você deseja. Omita se quiser a versão mais recente.

    3. AutoUpdate - Se essa extensão deve ser atualizada automaticamente quando uma nova versão secundária for lançada pelo publicador. (As principais atualizações da versão exigem a alteração explícita da propriedade MajorVersion.)

    4. ExecutionRoleArn - O ARN de perfil do IAM sob o qual essa extensão será executada.

    5. LoggingConfig - A configuração de log da extensão.

    O recurso TypeActivation pode ser implantado pelo CDK usando o constructo CfnResource. Isso é mostrado para as extensões reais na seção a seguir.

Adicione um recurso do Registro Público do AWS CloudFormation à sua aplicação do CDK

Use o constructo CfnResource para incluir um recurso do Registro Público do AWS CloudFormation em sua aplicação. Esse constructo está no módulo aws-cdk-lib do CDK.

Por exemplo, suponha que haja um recurso público chamado MY::S5::UltimateBucket que você deseja usar em sua aplicação AWS do CDK. Esse recurso usa uma propriedade: o nome do bucket. A instanciação CfnResource correspondente tem essa aparência.

exemplo
TypeScript
const ubucket = new CfnResource(this, 'MyUltimateBucket', { type: 'MY::S5::UltimateBucket::MODULE', properties: { BucketName: 'UltimateBucket' } });
JavaScript
const ubucket = new CfnResource(this, 'MyUltimateBucket', { type: 'MY::S5::UltimateBucket::MODULE', properties: { BucketName: 'UltimateBucket' } });
Python
ubucket = CfnResource(self, "MyUltimateBucket", type="MY::S5::UltimateBucket::MODULE", properties=dict( BucketName="UltimateBucket"))
Java
CfnResource.Builder.create(this, "MyUltimateBucket") .type("MY::S5::UltimateBucket::MODULE") .properties(java.util.Map.of( // Map.of requires Java 9+ "BucketName", "UltimateBucket")) .build();
C#
new CfnResource(this, "MyUltimateBucket", new CfnResourceProps { Type = "MY::S5::UltimateBucket::MODULE", Properties = new Dictionary<string, object> { ["BucketName"] = "UltimateBucket" } });