View a markdown version of this page

AWS.Compute.EKSSelfManagedNode - AWS Générateur de réseaux de télécommunications

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.Compute.EKSSelfManagedNode

AWS TNB prend en charge les nœuds autogérés Amazon EKS pour automatiser le provisionnement et la gestion du cycle de vie des nœuds (instances Amazon EC2) pour les clusters Amazon EKS Kubernetes. Pour créer un groupe de nœuds Amazon EKS, procédez comme suit :

  • Choisissez les Amazon Machine Images (AMI) pour les nœuds de travail de votre cluster en fournissant soit l'ID de l'AMI.

  • Fournissez une paire de clés Amazon EC2 pour l'accès SSH.

  • Assurez-vous que votre groupe de nœuds est associé à un cluster Amazon EKS.

  • Indiquez le type d'instance et les tailles souhaitées, minimales et maximales.

  • Fournissez les sous-réseaux pour les nœuds de travail.

  • Vous pouvez éventuellement associer des groupes de sécurité, des étiquettes de nœuds et un groupe de placement à votre groupe de nœuds.

Syntaxe

tosca.nodes.AWS.Compute.EKSSelfManagedNode: capabilities: compute: properties: ami_id: String instance_type: String key_pair: String root_volume_encryption: Boolean root_volume_encryption_key_arn: String root_volume_size: Integer scaling: properties: desired_size: Integer min_size: Integer max_size: Integer properties: node_role: String tags: List requirements: cluster: String subnets: List network_interfaces: List security_groups: List placement_group: String user_data: String labels: List

Fonctionnalités

Calcul

Propriétés qui définissent les paramètres de calcul pour les nœuds autogérés Amazon EKS, tels que les types d'instances Amazon EC2 et les AMI d'instance Amazon EC2.

ami_id

ID d'AMI utilisé pour lancer l'instance. AWS TNB prend en charge les instances qui exploitent IMDSv2. Pour de plus amples informations, veuillez consulter Version IMDS.

Note

Vous pouvez mettre à jour l'ID AMI pourEKSSelfManagedNode. La version Amazon EKS de l'AMI doit être identique ou inférieure à 2 versions au maximum à la version du cluster Amazon EKS. Par exemple, si la version du cluster Amazon EKS est 1.31, la version de l'AMI Amazon EKS doit être 1.31, 1.30 ou 1.29.

Obligatoire : oui

Type : String

instance_type

Taille de l'instance.

Obligatoire : oui

Type : String

key_pair

La paire de clés Amazon EC2 pour activer l'accès SSH.

Obligatoire : oui

Type : String

root_volume_encryption

Active le chiffrement Amazon EBS pour le volume racine Amazon EBS. Si cette propriété n'est pas fournie, AWS TNB chiffre les volumes racine Amazon EBS par défaut.

Obligatoire : non

Valeur par défaut : true

Type : Boolean

root_volume_encryption_key_arn

L'ARN de la AWS KMS clé. AWS TNB prend en charge l'ARN clé standard, l'ARN clé multirégional et l'ARN alias.

Obligatoire : non

Type : Chaîne

Note
  • Si root_volume_encryption c'est faux, ne l'incluez pasroot_volume_encryption_key_arn.

  • AWS TNB prend en charge le chiffrement du volume racine des EBS-backed AMI Amazon.

  • Si le volume racine de l'AMI est déjà chiffré, vous devez inclure le AWS TNB root_volume_encryption_key_arn pour le rechiffrer.

  • Si le volume racine de l'AMI n'est pas chiffré, AWS TNB utilise le root_volume_encryption_key_arn pour chiffrer le volume racine.

    Si vous ne l'incluez pasroot_volume_encryption_key_arn, AWS TNB l'utilise AWS Managed Services pour chiffrer le volume racine.

  • AWS TNB ne déchiffre pas une AMI chiffrée.

root_volume_size

Taille du volume racine d'Amazon Elastic Block Store en GiBs.

Obligatoire : non

Valeur par défaut : 20

Type : Integer

Valeurs possibles : 1 à 16 384

mise à l’échelle

Propriétés qui définissent les paramètres de dimensionnement pour les nœuds autogérés Amazon EKS, tels que le nombre souhaité d'instances Amazon EC2 et le nombre minimum et maximum d'instances Amazon EC2 dans le groupe de nœuds.

desired_size

Le nombre d'instances qu'il contient NodeGroup.

Obligatoire : oui

Type : Integer

min_size

Le nombre minimum d'instances dans ce cas NodeGroup.

Obligatoire : oui

Type : Integer

max_size

Le nombre maximum d'instances dans ce cas NodeGroup.

Obligatoire : oui

Type : Integer

Propriétés

node_role

L'ARN du rôle IAM attaché à l'instance Amazon EC2.

Obligatoire : oui

Type : String

tags

Les balises à associer à la ressource. Les balises seront propagées aux instances créées par la ressource.

Obligatoire : non

Type : liste

Exigences

cluster

Un AWS. Compute.EKSnœud.

Obligatoire : oui

Type : String

subnets

Un AWS. Networking.Subnetnœud.

Obligatoire : oui

Type : liste

network_interfaces

Un AWS. Networking.ENInœud. Assurez-vous que les interfaces réseau et les sous-réseaux sont définis sur la même zone de disponibilité, sinon l'instanciation échouera.

Lorsque vous définisseznetwork_interfaces, AWS TNB obtient l'autorisation relative aux ENI auprès de la multus_role propriété si vous avez inclus la multus propriété dans le nœud. AWS.Compute.EKS Sinon, AWS TNB obtient l'autorisation relative aux ENI à partir de la propriété node_role.

Obligatoire : non

Type : liste

security_groups

Un AWS. Networking.SecurityGroupnœud.

Obligatoire : non

Type : liste

placement_group

Un tosca.nodes.AWS. Compute.PlacementGroupnœud.

Obligatoire : non

Type : Chaîne

user_data

Un tosca.nodes.AWS. Compute.UserDataréférence de nœud. Un script de données utilisateur est transmis aux instances Amazon EC2 lancées par le groupe de nœuds autogéré. Ajoutez les autorisations requises pour exécuter des données utilisateur personnalisées au node_role transmis au groupe de nœuds.

Obligatoire : non

Type : Chaîne

labels

Liste des étiquettes de nœuds. L'étiquette d'un nœud doit avoir un nom et une valeur. Créez une étiquette en utilisant les critères suivants :

  • Le nom et la valeur doivent être séparés par=.

  • Le nom et la valeur peuvent chacun comporter jusqu'à 63 caractères.

  • L'étiquette peut inclure des lettres (A-Z, a-z,), des chiffres (0-9) et les caractères suivants : [-, _, ., *, ?]

  • Le nom et la valeur doivent commencer et se terminer par un * caractère alphanumérique ou. ?

Par exemple, myLabelName1=*NodeLabelValue1

Obligatoire : non

Type : liste

Exemple

SampleEKSSelfManagedNode: type: tosca.nodes.AWS.Compute.EKSSelfManagedNode capabilities: compute: properties: ami_id: "ami-123123EXAMPLE" instance_type: "c5.large" key_pair: "SampleKeyPair" root_volume_encryption: true root_volume_encryption_key_arn: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" root_volume_size: 1500 scaling: properties: desired_size: 1 min_size: 1 max_size: 1 properties: node_role: "arn:aws:iam::${AWS::TNB::AccountId}:role/SampleNodeRole" tags: - "Name=SampleVPC" - "Environment=Testing" requirements: cluster: SampleEKSCluster subnets: - SampleSubnet network_interfaces: - SampleNetworkInterface01 - SampleNetworkInterface02 security_groups: - SampleSecurityGroup01 - SampleSecurityGroup02 placement_group: SamplePlacementGroup user_data: CustomUserData labels: - "sampleLabelName001=sampleLabelValue001" - "sampleLabelName002=sampleLabelValue002"