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

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

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.

Syntaxe

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

YAML

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

Propriétés

CapacityProviderName

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 propriété d'une AWS::Lambda::CapacityProvider ressource.

VpcConfig

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

Obligatoire : oui

CloudFormation compatibilité : cette propriété est transmise directement à la VpcConfig propriété d'une AWS::Lambda::CapacityProvider ressource.

OperatorRole

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 propriété PermissionsConfig d'une AWS::Lambda::CapacityProvider ressource.

Tags

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

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

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'excludedinstances.

Type : InstanceRequirements

Obligatoire : non

CloudFormation compatibilité : cette propriété est transmise directement à la InstanceRequirements propriété d'une AWS::Lambda::CapacityProvider ressource.

ScalingConfig

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

Obligatoire : non

CloudFormation compatibilité : cette propriété est transmise directement à la CapacityProviderScalingConfig propriété d'une AWS::Lambda::CapacityProvider ressource.

KmsKeyArn

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 propriété d'une AWS::Lambda::CapacityProvider ressource.

Valeurs renvoyées

Réf

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 Ref dans le Guide de l'utilisateur AWS CloudFormation .

Ventilateur : GetAtt

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 Fn::GetAtt dans le Guide de l'utilisateur AWS CloudFormation .

Arn

L'ARN du fournisseur de capacité.

Exemples

Fournisseur de capacité de base

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é

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