

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
<a name="sam-resource-capacityprovider"></a>

 Crea un proveedor de capacidad para AWS Lambda funciones que permite ejecutar instancias gestionadas por Lambda en instancias de Amazon Elastic Compute Cloud propiedad del cliente. Este recurso forma parte de la función de instancias gestionadas por Lambda, que optimiza los costes 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 gestiona el ciclo de vida de las EC2 instancias de Amazon 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 las implementa AWS CloudFormation, AWS SAM transforma sus AWS SAM recursos en recursos. CloudFormation Para obtener más información, consulte [CloudFormation Recursos generados para AWS SAM](sam-specification-generated-resources.md). 

## Sintaxis
<a name="sam-resource-capacityprovider-syntax"></a>

Para declarar esta entidad en tu plantilla AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis.

### YAML
<a name="sam-resource-capacityprovider-syntax.yaml"></a>

```
Type: AWS::Serverless::CapacityProvider
Properties:
  [CapacityProviderName](#sam-capacityprovider-capacityprovidername): String
  [VpcConfig](#sam-capacityprovider-vpcconfig): VpcConfig
  [OperatorRole](#sam-capacityprovider-operatorrole): String
  [Tags](#sam-capacityprovider-tags): Map
  [PropagateTags](#sam-capacityprovider-propagatetags): Boolean
  [InstanceRequirements](#sam-capacityprovider-instancerequirements): InstanceRequirements
  [ScalingConfig](#sam-capacityprovider-scalingconfig): ScalingConfig
  [KmsKeyArn](#sam-capacityprovider-kmskeyarn): String
```

## Propiedades
<a name="sam-resource-capacityprovider-properties"></a>

 `CapacityProviderName`   <a name="sam-capacityprovider-capacityprovidername"></a>
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 `[CapacityProviderName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityprovidername)` propiedad de un `AWS::Lambda::CapacityProvider` recurso. 

 `VpcConfig`   <a name="sam-capacityprovider-vpcconfig"></a>
La configuración de VPC para el proveedor de capacidad. Especifica las subredes de VPC y los grupos de seguridad en los que se lanzarán EC2 las instancias de Amazon.  
*Tipo:* [VpcConfig](sam-property-capacityprovider-vpcconfig.md)  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propiedad de un `AWS::Lambda::CapacityProvider` recurso. 

 `OperatorRole`   <a name="sam-capacityprovider-operatorrole"></a>
 El ARN del rol de operador de Lambda con permisos para crear y administrar EC2 instancias de Amazon y 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 `[CapacityProviderOperatorRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderpermissionsconfig.html#cfn-lambda-capacityprovider-capacityproviderpermissionsconfig-capacityprovideroperatorrolearn)` propiedad `[PermissionsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-permissionsconfig)` de un `AWS::Lambda::CapacityProvider` recurso. 

 `Tags`   <a name="sam-capacityprovider-tags"></a>
Un mapa de pares clave-valor para aplicarlo al proveedor de capacidad y sus recursos asociados.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-tags)` propiedad de un `AWS::Lambda::CapacityProvider` recurso. La `Tags` propiedad se AWS SAM compone de pares clave-valor (mientras que en CloudFormation esta propiedad se compone de una lista de objetos Tag). Además, agrega AWS SAM automáticamente una `lambda:createdBy:SAM` etiqueta a esta función Lambda y a las funciones predeterminadas generadas para esta función. 

 `PropagateTags`   <a name="sam-capacityprovider-propagatetags"></a>
 Indica si se deben pasar o no las etiquetas de la propiedad Tags a los recursos `AWS::Serverless::CapacityProvider` generados. `True`Configúrelo para propagar las etiquetas en los recursos generados.   
*Tipo*: Booleano  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

 `InstanceRequirements`   <a name="sam-capacityprovider-instancerequirements"></a>
 Especificaciones de los tipos de instancias informáticas que puede usar el proveedor de capacidad. Esto incluye los requisitos de arquitectura `allowed` o los tipos de `excluded` instancias.  
*Tipo:* [InstanceRequirements](sam-property-capacityprovider-instancerequirements.md)  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` propiedad de un `AWS::Lambda::CapacityProvider` recurso. 

 `ScalingConfig`   <a name="sam-capacityprovider-scalingconfig"></a>
 La configuración de escalado del proveedor de capacidad. Define cómo el proveedor de capacidad escala las EC2 instancias de Amazon en función de la demanda.  
*Tipo:* [ScalingConfig](sam-property-capacityprovider-scalingconfig.md)  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` propiedad de un `AWS::Lambda::CapacityProvider` recurso. 

 `KmsKeyArn`   <a name="sam-capacityprovider-kmskeyarn"></a>
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 transfiere directamente a la `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-kmskeyarn)` propiedad de un `AWS::Lambda::CapacityProvider` recurso. 

## valores devueltos
<a name="sam-resource-capacityprovider-return-values"></a>

### Ref.
<a name="sam-resource-capacityprovider-return-values-ref"></a>

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 [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) en la *Guía del usuario de AWS CloudFormation *. 

### Fn:: GetAtt
<a name="sam-resource-capacityprovider-return-values-fn--getatt"></a>

`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 [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) en la *Guía del usuario de AWS CloudFormation *. 

`Arn`  <a name="Arn-fn::getatt"></a>
El ARN del proveedor de capacidad.

## Ejemplos
<a name="sam-resource-capacityprovider-examples"></a>

### Proveedor de capacidad básica
<a name="sam-resource-capacityprovider-examples-basic"></a>

En el siguiente ejemplo, se crea un proveedor de capacidad básico con una configuración 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
```

### Proveedor de capacidad avanzado con escalado
<a name="sam-resource-capacityprovider-examples-advanced"></a>

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-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
```