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 permitem executar instâncias gerenciadas pelo Lambda em instâncias do Amazon Elastic Compute Cloud de propriedade do cliente. Esse recurso faz parte do recurso de instâncias gerenciadas do Lambda, que fornece otimização de custos para cargas de trabalho do Lambda em grande escala, utilizando os modelos de preços do Amazon EC2.
O provedor de capacidade gerencia o ciclo de vida das instâncias do Amazon EC2 e fornece a infraestrutura necessária para que as funções do Lambda sejam executadas em recursos computacionais de propriedade do cliente, mantendo o modelo de programação sem servidor.
nota
Quando você implanta no AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte Gerado CloudFormation recursos para 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:StringVpcConfig:VpcConfigOperatorRole:StringTags:MapPropagateTags:BooleanInstanceRequirements:InstanceRequirementsScalingConfig:ScalingConfigLoggingConfig:CapacityProviderLoggingConfigKmsKeyArn:StringManagedResourceTags:ManagedResourceTags
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 é passada diretamente para a
CapacityProviderNamepropriedade de umAWS::Lambda::CapacityProviderrecurso. -
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 do Amazon EC2 serão lançadas.
Digite: VpcConfig
Obrigatório: Sim
CloudFormation compatibilidade: essa propriedade é passada diretamente para a
VpcConfigpropriedade de umAWS::Lambda::CapacityProviderrecurso. -
OperatorRole -
O ARN da função de operador do Lambda com permissões para criar e gerenciar instâncias do Amazon EC2 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
CapacityProviderOperatorRoleArnpropriedadePermissionsConfigde umAWS::Lambda::CapacityProviderrecurso. -
Um mapa de pares de valores-chave para aplicar ao provedor de capacidade e seus recursos associados.
Tipo: mapa
Obrigatório: não
CloudFormation compatibilidade: essa propriedade é passada diretamente para a
Tagspropriedade de umAWS::Lambda::CapacityProviderrecurso. ATagspropriedade in AWS SAM consiste em pares de valores-chave (enquanto que CloudFormation nesta propriedade consiste em uma lista de objetos Tag). Além disso, adiciona AWS SAM automaticamente umalambda:createdBy:SAMtag a essa função do Lambda e às funções padrão geradas para essa função. -
Indica se as tags da propriedade Tags devem ser passadas ou não para os recursos
AWS::Serverless::CapacityProvidergerados. Defina isso comoTruepara propagar tags em seus 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
allowede/ou tipos deexcludedinstância.Digite: InstanceRequirements
Obrigatório: não
CloudFormation compatibilidade: essa propriedade é passada diretamente para a
InstanceRequirementspropriedade de umAWS::Lambda::CapacityProviderrecurso. -
ScalingConfig -
A configuração de escalabilidade para o provedor de capacidade. Define como o provedor de capacidade dimensiona as instâncias do Amazon EC2 com base na demanda.
Digite: ScalingConfig
Obrigatório: não
CloudFormation compatibilidade: essa propriedade é passada diretamente para a
CapacityProviderScalingConfigpropriedade de umAWS::Lambda::CapacityProviderrecurso. -
LoggingConfig -
Use
LoggingConfigpara configurar o registro do sistema para o provedor de capacidade. Os registros do sistema capturam atividades de escalabilidade e eventos operacionais e os enviam para um grupo de CloudWatch registros da Amazon em um nível de log configurável.Digite: CapacityProviderLoggingConfig
Obrigatório: não
CloudFormation compatibilidade: essa propriedade é passada diretamente para a
LoggingConfigpropriedadeTelemetryConfigde umAWS::Lambda::CapacityProviderrecurso. -
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
KmsKeyArnpropriedade de umAWS::Lambda::CapacityProviderrecurso. -
Aplica tags explícitas às instâncias do Amazon Elastic Compute Cloud e a outros recursos gerenciados que o provedor de capacidade provisiona em seu nome.
Digite: ManagedResourceTags
Obrigatório: não
CloudFormation compatibilidade: AWS SAM usa essa propriedade para construir a
PropagateTagspropriedade de umAWS::Lambda::CapacityProviderrecurso.
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-providerVpcConfig: SubnetIds: -subnet-12345678-subnet-87654321SecurityGroupIds: -sg-12345678Tags: 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-providerVpcConfig: SubnetIds: -subnet-12345678-subnet-87654321SecurityGroupIds: -sg-12345678OperatorRole: arn:aws:iam::123456789012:role/MyCapacityProviderRolePropagateTags: 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-123456789012LoggingConfig: LogGroup: /aws/lambda/capacity-provider/advanced-capacity-providerSystemLogLevel: INFO ManagedResourceTags: Tags: CostCenter:cc-1234Environment:ProductionTags: Environment: Production CostCenter: Engineering