Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
AWS::Serverless::CapacityProvider
Crea un proveedor de capacidad para AWS Lambda las funciones que permite ejecutar instancias administradas por Lambda en instancias de Amazon Elastic Compute Cloud propiedad del cliente. Este recurso forma parte de la función Lambda Managed Instances, que permite optimizar los costos de las cargas de trabajo de Lambda a gran escala mediante el uso de los modelos de precios de Amazon EC2.
El proveedor de capacidad administra el ciclo de vida de las instancias de Amazon EC2 y proporciona la infraestructura necesaria para que las funciones de Lambda se ejecuten en los recursos informáticos propiedad del cliente, manteniendo al mismo tiempo el modelo de programación sin servidor.
nota
Cuando lo implementa AWS CloudFormation, AWS SAM transforma sus recursos en recursos. AWS SAM CloudFormation Para obtener más información, consulte Generado CloudFormation recursos para AWS SAM.
Sintaxis
Para declarar esta entidad en tu plantilla AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis.
YAML
Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName:StringVpcConfig:VpcConfigOperatorRole:StringTags:MapPropagateTags:BooleanInstanceRequirements:InstanceRequirementsScalingConfig:ScalingConfigLoggingConfig:CapacityProviderLoggingConfigKmsKeyArn:StringManagedResourceTags:ManagedResourceTags
Propiedades
-
CapacityProviderName -
El nombre del proveedor de capacidad. Este nombre debe ser único en tu AWS cuenta y región.
Tipo: cadena
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se transfiere directamente a la
CapacityProviderNamepropiedad de unAWS::Lambda::CapacityProviderrecurso. -
VpcConfig -
La configuración de VPC para el proveedor de capacidad. Especifica las subredes y los grupos de seguridad de la VPC en los que se lanzarán las instancias de Amazon EC2.
Tipo: VpcConfig
Obligatorio: sí
CloudFormation compatibilidad: esta propiedad se transfiere directamente a la
VpcConfigpropiedad de un recurso.AWS::Lambda::CapacityProvider -
OperatorRole -
El ARN del rol de operador de Lambda con permisos para crear y administrar instancias de Amazon EC2 y los recursos relacionados en la cuenta del cliente. Si no se proporciona, genera AWS SAM automáticamente un rol con los permisos necesarios.
Tipo: cadena
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se pasa directamente a la
CapacityProviderOperatorRoleArnpropiedadPermissionsConfigde unAWS::Lambda::CapacityProviderrecurso. -
Un mapa de pares clave-valor para aplicar al proveedor de capacidad y a sus recursos asociados.
Tipo: mapa
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se pasa directamente a la
Tagspropiedad de unAWS::Lambda::CapacityProviderrecurso. LaTagspropiedad en AWS SAM consiste en pares clave-valor (mientras que en CloudFormation esta propiedad consiste en una lista de objetos de etiqueta). Además, agrega AWS SAM automáticamente unalambda:createdBy:SAMetiqueta a esta función de Lambda y a los roles predeterminados generados para esta función. -
Indica si se deben transferir o no las etiquetas de la propiedad Tags a los recursos
AWS::Serverless::CapacityProvidergenerados. Configure esta opciónTruepara propagar las etiquetas en los recursos generados.Tipo: Booleano
Obligatorio: no
CloudFormation compatibilidad: esta propiedad es exclusiva AWS SAM y no tiene un CloudFormation equivalente.
-
InstanceRequirements -
Especificaciones de los tipos de instancias de procesamiento que puede usar el proveedor de capacidad. Esto incluye los requisitos de arquitectura
allowedo los tipos deexcludedinstancias.Tipo: InstanceRequirements
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se pasa directamente a la
InstanceRequirementspropiedad de unAWS::Lambda::CapacityProviderrecurso. -
ScalingConfig -
La configuración de escalado del proveedor de capacidad. Define cómo el proveedor de capacidad escala las instancias de Amazon EC2 en función de la demanda.
Tipo: ScalingConfig
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se transfiere directamente a la
CapacityProviderScalingConfigpropiedad de unAWS::Lambda::CapacityProviderrecurso. -
LoggingConfig -
Se usa
LoggingConfigpara configurar el registro del sistema para el proveedor de capacidad. Los registros del sistema capturan la actividad de escalado y los eventos operativos y los envían a un grupo de CloudWatch registros de Amazon a un nivel de registro configurable.Tipo: CapacityProviderLoggingConfig
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se transfiere directamente a la
LoggingConfigpropiedadTelemetryConfigde unAWS::Lambda::CapacityProviderrecurso. -
KmsKeyArn -
El ARN de la AWS KMS clave utilizada para cifrar los datos en reposo y en tránsito para el proveedor de capacidad.
Tipo: cadena
Obligatorio: no
CloudFormation compatibilidad: esta propiedad se pasa directamente a la
KmsKeyArnpropiedad de unAWS::Lambda::CapacityProviderrecurso. -
Aplica etiquetas explícitas a las instancias de Amazon Elastic Compute Cloud y a otros recursos gestionados que el proveedor de capacidad aprovisiona en su nombre.
Tipo: ManagedResourceTags
Obligatorio: no
CloudFormation compatibilidad: AWS SAM usa esta propiedad para construir la
PropagateTagspropiedad de unAWS::Lambda::CapacityProviderrecurso.
valores devueltos
Ref.
Cuando se proporciona el identificador lógico de este recurso a la función Ref intrínseca, devuelve el nombre del proveedor de capacidad.
Para obtener más información sobre el uso de la función Ref, consulta Ref en la Guía del usuario de AWS CloudFormation .
Fn:: GetAtt
Fn::GetAtt devuelve un valor para un atributo especificado de este tipo. A continuación se indican los atributos disponibles y los valores devueltos de muestra.
Para obtener más información acerca de cómo usar Fn::GetAtt, consulta Fn::GetAtt en la Guía del usuario de AWS CloudFormation .
Arn-
El ARN del proveedor de capacidad.
Ejemplos
Proveedor de capacidad básica
En el siguiente ejemplo, se crea un proveedor de capacidad básica con una configuración de VPC.
MyCapacityProvider: Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName:my-capacity-providerVpcConfig: SubnetIds: -subnet-12345678-subnet-87654321SecurityGroupIds: -sg-12345678Tags: Environment: Production Team: ServerlessTeam
Proveedor de capacidad avanzada con escalado
En el siguiente ejemplo, se crea un proveedor de capacidad con requisitos de instancia personalizados y una configuración de escalado.
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