

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# AWS::Serverless::CapacityProvider
<a name="sam-resource-capacityprovider"></a>

 Crée un fournisseur de capacité pour les AWS Lambda fonctions qui permettent d'exécuter des instances gérées Lambda sur des instances Amazon Elastic Compute Cloud appartenant au client. Cette ressource fait partie de la fonctionnalité Lambda Managed Instances, qui permet d'optimiser les coûts pour les charges de travail Lambda à grande échelle en utilisant les modèles de tarification Amazon. EC2 

 Le fournisseur de capacité gère le cycle de vie des EC2 instances Amazon et fournit l'infrastructure nécessaire pour que les fonctions Lambda s'exécutent sur les ressources informatiques appartenant au client tout en conservant le modèle de programmation sans serveur. 

**Note**  
Lorsque vous déployez vers AWS CloudFormation, vos AWS SAM ressources sont AWS SAM transformées en CloudFormation ressources. Pour de plus amples informations, veuillez consulter [CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md). 

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

## Propriétés
<a name="sam-resource-capacityprovider-properties"></a>

 `CapacityProviderName`   <a name="sam-capacityprovider-capacityprovidername"></a>
Nom du fournisseur de capacité. Ce nom doit être unique au sein de votre AWS compte et de votre région.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CapacityProviderName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityprovidername)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. 

 `VpcConfig`   <a name="sam-capacityprovider-vpcconfig"></a>
Configuration VPC pour le fournisseur de capacité. Spécifie les sous-réseaux VPC et les groupes de sécurité sur lesquels les EC2 instances Amazon seront lancées.  
*Type :* [VpcConfig](sam-property-capacityprovider-vpcconfig.md)  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. 

 `OperatorRole`   <a name="sam-capacityprovider-operatorrole"></a>
 L'ARN du rôle d'opérateur pour Lambda avec les autorisations nécessaires pour créer et gérer les EC2 instances Amazon et les ressources associées dans le compte client. Si ce n'est pas le cas, il génère AWS SAM automatiquement un rôle avec les autorisations nécessaires.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[CapacityProviderOperatorRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderpermissionsconfig.html#cfn-lambda-capacityprovider-capacityproviderpermissionsconfig-capacityprovideroperatorrolearn)` propriété `[PermissionsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-permissionsconfig)` d'une `AWS::Lambda::CapacityProvider` ressource. 

 `Tags`   <a name="sam-capacityprovider-tags"></a>
Carte des paires clé-valeur à appliquer au fournisseur de capacité et à ses ressources associées.  
*Type*: carte (map)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-tags)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. La `Tags` propriété in AWS SAM se compose de paires clé-valeur (alors que dans CloudFormation cette propriété se compose d'une liste d'objets Tag). Ajoute également AWS SAM automatiquement une `lambda:createdBy:SAM` balise à cette fonction Lambda et aux rôles par défaut générés pour cette fonction. 

 `PropagateTags`   <a name="sam-capacityprovider-propagatetags"></a>
 Indique s'il faut ou non transmettre les balises de la propriété Tags aux ressources que vous `AWS::Serverless::CapacityProvider` avez générées. Définissez ce paramètre sur `True` pour propager les balises dans les ressources que vous avez générées.   
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `InstanceRequirements`   <a name="sam-capacityprovider-instancerequirements"></a>
 Spécifications relatives aux types d'instances de calcul que le fournisseur de capacité peut utiliser. Cela inclut les exigences d'architecture `allowed` et/ou les types d'`excluded`instances.  
*Type :* [InstanceRequirements](sam-property-capacityprovider-instancerequirements.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. 

 `ScalingConfig`   <a name="sam-capacityprovider-scalingconfig"></a>
 Configuration de mise à l'échelle pour le fournisseur de capacité. Définit la manière dont le fournisseur de capacité adapte EC2 les instances Amazon en fonction de la demande.  
*Type :* [ScalingConfig](sam-property-capacityprovider-scalingconfig.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. 

 `KmsKeyArn`   <a name="sam-capacityprovider-kmskeyarn"></a>
L'ARN de la AWS KMS clé utilisée pour chiffrer les données au repos et en transit pour le fournisseur de capacité.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-kmskeyarn)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. 

## Valeurs renvoyées
<a name="sam-resource-capacityprovider-return-values"></a>

### Réf
<a name="sam-resource-capacityprovider-return-values-ref"></a>

Lorsque l'identifiant logique de cette ressource est fourni à la fonction `Ref` intrinsèque, elle renvoie le nom du fournisseur de capacité.

Pour plus d'informations sur l'utilisation de la fonction `Ref`, consultez [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) dans le *Guide de l'utilisateur AWS CloudFormation *. 

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

`Fn::GetAtt` renvoie une valeur pour un attribut de ce type indiqué. Voici les attributs disponibles et des exemples de valeurs de retour. 

Pour plus d'informations sur l'utilisation de `Fn::GetAtt`, consultez [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) dans le *Guide de l'utilisateur AWS CloudFormation *. 

`Arn`  <a name="Arn-fn::getatt"></a>
L'ARN du fournisseur de capacité.

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

### Fournisseur de capacité de base
<a name="sam-resource-capacityprovider-examples-basic"></a>

L'exemple suivant crée un fournisseur de capacité de base avec une configuration 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
```

### Fournisseur de capacité avancé avec évolutivité
<a name="sam-resource-capacityprovider-examples-advanced"></a>

L'exemple suivant crée un fournisseur de capacité avec des exigences d'instance personnalisées et une configuration de dimensionnement.

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

# VpcConfig
<a name="sam-property-capacityprovider-vpcconfig"></a>

Configure les paramètres VPC d'un fournisseur de capacité, y compris les sous-réseaux et les groupes de sécurité sur EC2 lesquels les instances seront lancées.

## Syntaxe
<a name="sam-property-capacityprovider-vpcconfig-syntax"></a>

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

```
[SubnetIds](#sam-capacityprovider-vpcconfig-subnetids): List
[SecurityGroupIds](#sam-capacityprovider-vpcconfig-securitygroupids): List
```

## Propriétés
<a name="sam-property-capacityprovider-vpcconfig-properties"></a>

 `SubnetIds`   <a name="sam-capacityprovider-vpcconfig-subnetids"></a>
Liste des sous-réseaux IDs dans lesquels EC2 les instances seront lancées. Au moins un sous-réseau doit être spécifié.  
*Type* : liste  
*Obligatoire* : oui  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[SubnetIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-subnetids)` propriété `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) ` d'une `AWS::Lambda::CapacityProvider` ressource. 

 `SecurityGroupIds`   <a name="sam-capacityprovider-vpcconfig-securitygroupids"></a>
Liste des groupes de sécurité IDs à associer aux EC2 instances. S'il n'est pas spécifié, le groupe de sécurité par défaut du VPC sera utilisé.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[SecurityGroupIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-securitygroupids)` `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propriété d'une `AWS::Lambda::CapacityProvider` ressource. 

## Exemples
<a name="sam-property-capacityprovider-vpcconfig-examples"></a>

### Configuration VPC
<a name="sam-property-capacityprovider-vpcconfig-examples-basic"></a>

L'exemple suivant montre une configuration VPC avec plusieurs sous-réseaux et groupes de sécurité.

```
VpcConfig:
  SubnetIds:
    - subnet-12345678
    - subnet-87654321
  SecurityGroupIds:
    - sg-12345678
    - sg-87654321
```

# InstanceRequirements
<a name="sam-property-capacityprovider-instancerequirements"></a>

Spécifie les exigences relatives aux EC2 instances qui seront lancées par le fournisseur de capacité, y compris les architectures et les contraintes de type d'instance.

## Syntaxe
<a name="sam-property-capacityprovider-instancerequirements-syntax"></a>

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

```
[Architectures](#sam-capacityprovider-instancerequirements-architectures): List
[AllowedTypes](#sam-capacityprovider-instancerequirements-allowedtypes): List
[ExcludedTypes](#sam-capacityprovider-instancerequirements-excludedtypes): List
```

**Note**  
Vous pouvez choisir de spécifier l'une `AllowedTypes` ou l'autre des exigences d'instance pour votre fournisseur de capacité ou `ExcludedTypes` lors de la définition des exigences en matière d'instance, mais pas les deux.

## Propriétés
<a name="sam-property-capacityprovider-instancerequirements-properties"></a>

 `Architectures`   <a name="sam-capacityprovider-instancerequirements-architectures"></a>
Les architectures du jeu d'instructions pour les instances du fournisseur de capacité.  
*Valeurs valides* : `x86_64` ou `arm64`  
*Type* : liste  
*Obligatoire* : non  
*Par défaut* : `x86_64`  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[Architectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-architectures)` propriété `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` d'une `AWS::Lambda::CapacityProvider` ressource. 

 `AllowedTypes`   <a name="sam-capacityprovider-instancerequirements-allowedtypes"></a>
Liste des types d' EC2 instances autorisés pour l'instance du fournisseur de capacité.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[AllowedInstanceTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-allowedinstancetypes)` propriété `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` d'une `AWS::Lambda::CapacityProvider` ressource. 

 `ExcludedTypes`   <a name="sam-capacityprovider-instancerequirements-excludedtypes"></a>
Liste des types d' EC2 instances à exclure du fournisseur de capacité.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[ExcludedInstanceTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-excludedinstancetypes)` propriété `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` d'une `AWS::Lambda::CapacityProvider` ressource. 

## Exemples
<a name="sam-property-capacityprovider-instancerequirements-examples"></a>

### Configuration des exigences de l'instance
<a name="sam-property-capacityprovider-instancerequirements-examples-basic"></a>

L'exemple suivant montre les exigences d'une instance avec des contraintes d'architecture et de type d'instance spécifiques.

```
InstanceRequirements:
  Architectures:
    - x86_64
  ExcludedTypes:
    - t2.micro
```

# ScalingConfig
<a name="sam-property-capacityprovider-scalingconfig"></a>

Configure la manière dont le fournisseur de capacité fait évoluer les EC2 instances en fonction de la demande, y compris les limites maximales d'instances et les politiques de dimensionnement.

## Syntaxe
<a name="sam-property-capacityprovider-scalingconfig-syntax"></a>

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

```
[MaxVCpuCount](#sam-capacityprovider-scalingconfig-maxvcpucount): Integer
[AverageCPUUtilization](#sam-capacityprovider-scalingconfig-averagecpuutilization): Double
```

## Propriétés
<a name="sam-property-capacityprovider-scalingconfig-properties"></a>

 `MaxVCpuCount`   <a name="sam-capacityprovider-scalingconfig-maxvcpucount"></a>
Le nombre maximum de v CPUs que le fournisseur de capacité peut fournir sur toutes les instances de calcul.  
*Type* : entier  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[MaxVCpuCount](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-maxvcpucount)` propriété `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` d'une `AWS::Lambda::CapacityProvider` ressource. 

 `AverageCPUUtilization`   <a name="sam-capacityprovider-scalingconfig-averagecpuutilization"></a>
Pourcentage moyen d'utilisation du processeur cible (0 à 100) pour les décisions de dimensionnement. Lorsque l'utilisation moyenne du processeur dépasse ce seuil, le fournisseur de capacité augmente le volume EC2 des instances Amazon. Lorsque cela est spécifié, AWS SAM construit `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` une `AWS::Lambda::CapacityProvider` ressource avec les valeurs `[ScalingMode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingmode)` set to `'Manual'` et `[ScalingPolicies](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingpolicies)` set to`[{PredefinedMetricType: 'LambdaCapacityProviderAverageCPUUtilization', TargetValue: <this value>}]`.   
*Type* : double  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent. 

## Exemples
<a name="sam-property-capacityprovider-scalingconfig-examples"></a>

### Configuration de la mise à l'échelle
<a name="sam-property-capacityprovider-scalingconfig-examples-basic"></a>

L'exemple suivant montre une configuration de dimensionnement avec un VCpu nombre maximal et une utilisation moyenne du processeur.

```
ScalingConfig:
  MaxVCpuCount: 10
  AverageCPUUtilization: 70.0
```