View a markdown version of this page

Fournisseurs de capacité - AWS Lambda

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.

Fournisseurs de capacité

Un fournisseur de capacité constitue la base de l'exécution des instances gérées Lambda. Il constitue la limite de sécurité de vos fonctions et définit les ressources de calcul que Lambda met à disposition et gère en votre nom.

Lorsque vous créez un fournisseur de capacité, vous spécifiez :

  • Configuration VPC  : sous-réseaux et groupes de sécurité sur lesquels les instances s'exécutent

  • Autorisations  : rôles IAM permettant à Lambda de gérer les ressources EC2

  • Exigences relatives à l'instance (facultatif) - Préférences relatives à l'architecture et au type d'instance

  • Configuration de dimensionnement (facultatif) - Comment Lambda fait évoluer vos instances

Comprendre les fournisseurs de capacités en tant que limite de sécurité

Les fournisseurs de capacité constituent la limite de sécurité pour les fonctions Lambda au sein de votre VPC, remplaçant Firecracker-based ainsi l'isolation. Les fonctions s'exécutent dans des conteneurs au sein des instances, mais les conteneurs ne fournissent pas une isolation de sécurité solide entre les fonctions, contrairement aux Firecracker MicroVMS.

Concepts de sécurité clés :

  • Fournisseur de capacité : limite de sécurité qui définit les niveaux de confiance pour les fonctions Lambda

  • Isolation des conteneurs : les conteneurs ne sont PAS un fournisseur de sécurité. Ne vous y fiez pas pour la sécurité entre des charges de travail non fiables

  • Séparation de confiance : séparez les charges de travail qui ne sont pas mutuellement fiables en utilisant différents fournisseurs de capacité

Création d'un fournisseur de capacité

Vous pouvez créer un fournisseur de capacité à l'aide de l' AWS interface de ligne de commande, AWS de la console de gestion ou AWS des kits SDK.

En utilisant la AWS CLI :

aws lambda create-capacity-provider \ --capacity-provider-name my-capacity-provider \ --vpc-config SubnetIds=subnet-12345,subnet-67890,subnet-11111,SecurityGroupIds=sg-12345 \ --permissions-config CapacityProviderOperatorRoleArn=arn:aws:iam::123456789012:role/MyOperatorRole \ --instance-requirements Architectures=x86_64 \ --capacity-provider-scaling-config ScalingMode=Auto

Paramètres requis

CapacityProviderName

  • Un nom unique pour votre fournisseur de capacité

  • Doit être unique au sein de votre AWS compte

VpcConfig

  • SubnetIds(obligatoire) : au moins un sous-réseau, maximum de 16. Utilisez des sous-réseaux dans plusieurs zones de disponibilité pour garantir la résilience

  • SecurityGroupIds(facultatif) : groupes de sécurité pour vos instances. Par défaut, le groupe de sécurité par défaut du VPC s'il n'est pas spécifié

PermissionsConfig

  • CapacityProviderOperatorRoleArn(obligatoire) : rôle IAM qui permet à Lambda de gérer les ressources EC2 dans votre fournisseur de capacité

Paramètres facultatifs

InstanceRequirements

Spécifiez l'architecture et les types d'instance pour votre fournisseur de capacité :

  • Architectures  : Choisissez x86_64 ouarm64. La valeur par défaut est x86_64

  • AllowedInstanceTypes: Spécifiez les types d'instances autorisés. Exemple : m5.8xlarge

  • ExcludedInstanceTypes: Spécifiez les types d'instances exclus à l'aide de caractères génériques. Vous ne pouvez spécifier qu'un seul AllowedInstanceTypes des ExcludedInstanceTypes

Par défaut, Lambda choisit les types d'instance optimaux pour votre charge de travail. Nous vous recommandons de laisser les instances gérées Lambda choisir les types d'instance pour vous, car la restriction du nombre de types d'instances possibles peut entraîner une baisse de disponibilité.

CapacityProviderScalingConfig

Configurez la manière dont Lambda fait évoluer vos instances :

  • ScalingMode: Réglez sur Auto pour la mise à l'échelle automatique ou Manual pour le contrôle manuel. La valeur par défaut est Auto

  • MaxVCpuCount: nombre maximum de vCPU pour le fournisseur de capacité. La valeur par défaut est 400.

  • ScalingPolicies: définissez des politiques de dimensionnement du suivi des cibles pour l'utilisation du processeur et de la mémoire

KmsKeyArn

Spécifiez une AWS KMS clé pour le chiffrement EBS. La valeur par défaut est la clé AWS gérée si elle n'est pas spécifiée.

Balises

Ajoutez des balises pour organiser et gérer vos fournisseurs de capacité.

PropagateTags

Configurez la propagation des balises pour appliquer automatiquement des balises aux ressources gérées (instances Amazon EC2, volumes Amazon EBS et ENI) lancées par le fournisseur de capacité. Utilisez la propagation des balises pour appliquer la répartition des coûts, les SCP et les exigences de conformité. Pour plus d'informations, consultez la section Propagation des balises.

Gestion des fournisseurs de capacités

Mise à jour d’un fournisseur de capacité

Vous pouvez mettre à jour certaines propriétés d'un fournisseur de capacité à l'aide de l'UpdateCapacityProviderAPI.

aws lambda update-capacity-provider \ --capacity-provider-name my-capacity-provider \ --capacity-provider-scaling-config ScalingMode=Auto

Suppression d’un fournisseur de capacité

Vous pouvez supprimer un fournisseur de capacité lorsqu'il n'est plus nécessaire à l'aide de l'DeleteCapacityProviderAPI.

aws lambda delete-capacity-provider \ --capacity-provider-name my-capacity-provider

Remarque : Vous ne pouvez pas supprimer un fournisseur de capacité auquel sont associées des versions de fonctions.

Affichage des informations sur le fournisseur de capacité

Récupérez des informations sur un fournisseur de capacité à l'aide de l'GetCapacityProviderAPI.

aws lambda get-capacity-provider \ --capacity-provider-name my-capacity-provider

États fournisseurs de capacités

Un fournisseur de capacité peut se trouver dans l'un des états suivants :

  • En attente  : le fournisseur de capacité est en cours de création

  • Actif  : le fournisseur de capacité est prêt à être utilisé

  • Échec  : échec de la création du fournisseur de capacité

  • Suppression  : le fournisseur de capacité est en cours de suppression

Quotas

  • Capacité maximale de fournisseurs par compte  : 1 000

  • Nombre maximum de versions de fonctions par fournisseur de capacité  : 100 (ne peut pas être augmenté)

Bonnes pratiques

  1. Séparer par niveau de confiance  : créez différents fournisseurs de capacité pour les charges de travail présentant des exigences de sécurité différentes

  2. Utilisez des noms descriptifs  : nommez les fournisseurs de capacités pour indiquer clairement leur utilisation prévue et leur niveau de confiance (par exempleproduction-trusted,dev-sandbox).

  3. Utiliser plusieurs zones de disponibilité  : Spécifiez des sous-réseaux sur plusieurs zones de disponibilité pour une haute disponibilité

  4. Laissez Lambda choisir les types d'instance  : sauf si vous avez des exigences matérielles spécifiques, autorisez Lambda à sélectionner les types d'instance optimaux en termes de disponibilité

  5. Surveiller l'utilisation  : permet AWS CloudTrail de surveiller les attributions des fournisseurs de capacité et les modèles d'accès

Étapes suivantes