AWS::Serverless::CapacityProvider - AWS Serverless Application Model

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

AWS::Serverless::CapacityProvider

Cria um provedor de capacidade para AWS Lambda funções que permite executar instâncias gerenciadas Lambda em instâncias Amazon Elastic Compute Cloud de propriedade do cliente. Esse recurso faz parte do recurso Lambda Managed Instances, que fornece otimização de custos para cargas de trabalho Lambda em grande escala utilizando modelos de preços. EC2

O provedor de capacidade gerencia o ciclo de vida das EC2 instâncias e fornece a infraestrutura necessária para que as funções Lambda sejam executadas em recursos computacionais de propriedade do cliente, mantendo o modelo de programação sem servidor.

nota

Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte Recursos gerados do CloudFormation para o AWS SAM.

Sintaxe

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

YAML

Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName: String VpcConfig: VpcConfig OperatorRole: String Tags: Map PropagateTags: Boolean InstanceRequirements: InstanceRequirements ScalingConfig: ScalingConfig KMSKeyArn: String

Propriedades

CapacityProviderName

O nome do provedor de capacidade. Esse nome deve ser exclusivo em sua AWS conta e região.

Tipo: string

Obrigatório: não

CloudFormation compatibilidade: essa propriedade é semelhante à CapacityProviderName propriedade de um AWS::Lambda::CapacityProvider recurso.

VpcConfig

A configuração da VPC para o provedor de capacidade. Especifica as sub-redes VPC e os grupos de segurança em que as instâncias da EC2 Amazon serão lançadas.

Digite: VpcConfig

Obrigatório: Sim

CloudFormation compatibilidade: essa propriedade é passada diretamente para a VpcConfigpropriedade de um AWS::Lambda::CapacityProvider recurso.

OperatorRole

O ARN da função de operador do Lambda com permissões para criar e gerenciar EC2 instâncias da Amazon e recursos relacionados na conta do cliente. Se não for fornecido, gera AWS SAM automaticamente uma função com as permissões necessárias.

Tipo: string

Obrigatório: não

CloudFormation compatibilidade: essa propriedade é passada diretamente para a PermissionsConfigpropriedade de um AWS::Lambda::CapacityProvider recurso.

Tags

Um mapa de pares de valores-chave a serem aplicados ao provedor de capacidade e aos recursos associados.

Tipo: mapa

Obrigatório: não

CloudFormation compatibilidade: essa propriedade é passada diretamente para a Tags propriedade de um AWS::Lambda::CapacityProvider recurso. A Tags propriedade in AWS SAM consiste em pares de valores-chave (enquanto CloudFormation nessa propriedade consiste em uma lista de objetos Tag). Além disso, adiciona AWS SAM automaticamente uma lambda:createdBy:SAM tag a essa função Lambda e às funções padrão geradas para essa função.

PropagateTags

Indica se você deve ou não passar tags da propriedade Tags para os recursos AWS::Serverless::CapacityProvider gerados. Defina isso True para propagar tags nos recursos gerados.

Tipo: booliano

Obrigatório: não

CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

InstanceRequirements

Especificações dos tipos de instâncias de computação que o provedor de capacidade pode usar. Isso inclui requisitos de arquitetura allowed e/ou tipos de excluded instância.

Digite: InstanceRequirements

Obrigatório: não

CloudFormation compatibilidade: AWS SAM mapeia essa propriedade paraInstanceRequirements.

ScalingConfig

A configuração de escalabilidade para o provedor de capacidade. Define como o provedor de capacidade escala as EC2 instâncias da Amazon com base na demanda.

Digite: ScalingConfig

Obrigatório: não

CloudFormation compatibilidade: essa propriedade é passada diretamente para a CapacityProviderScalingConfig propriedade de um AWS::Lambda::CapacityProvider recurso

KMSKeyArn

O ARN da AWS KMS chave usada para criptografar dados em repouso e em trânsito para o provedor de capacidade.

Tipo: string

Obrigatório: não

CloudFormation compatibilidade: essa propriedade é passada diretamente para a KmsKeyArn propriedade de um AWS::Lambda::Function recurso.

Valores de retorno

Ref.

Quando a ID lógica desse recurso é fornecida à função Ref intrínseca, ela retorna o nome do provedor de capacidade.

Para obter mais informações sobre como usar a função Ref, consulte Ref no Guia do usuário do AWS CloudFormation .

Fã:: GetAtt

Fn::GetAtt retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra.

Para obter mais informações sobre o uso do Fn::GetAtt, consulte Fn::GetAtt o AWS CloudFormation Guia do usuário.

Arn

O ARN do provedor de capacidade.

Exemplos

Provedor de capacidade básica

O exemplo a seguir cria um provedor de capacidade básico com configuração de VPC.

MyCapacityProvider: Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName: my-capacity-provider VpcConfig: SubnetIds: - subnet-12345678 - subnet-87654321 SecurityGroupIds: - sg-12345678 Tags: Environment: Production Team: ServerlessTeam

Provedor de capacidade avançada com escalabilidade

O exemplo a seguir cria um provedor de capacidade com requisitos de instância personalizados e configuração de escalabilidade.

AdvancedCapacityProvider: Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName: advanced-capacity-provider VpcConfig: SubnetIds: - subnet-12345678 - subnet-87654321 SecurityGroupIds: - sg-12345678 OperatorRole: arn:aws:iam::123456789012:role/MyCapacityProviderRole PropagateTags: true InstanceRequirements: Architectures: - x86_64 ExcludedTypes: - t2.micro ScalingConfig: MaxInstanceCount: 10 ManualScalingPolicies: AverageCPUUtilization: 70.0 KMSKeyArn: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 Tags: Environment: Production CostCenter: Engineering