AWS.Calculez. EKSManagedNode - 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.Calculez. EKSManagedNode

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

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

  • Fournissez une paire de EC2 clés Amazon pour SSH l'accès et les propriétés de dimensionnement de votre groupe de nœuds.

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

  • 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.EKSManagedNode: capabilities: compute: properties: ami_type: String ami_id: String instance_types: List key_pair: String root_volume_encryption: Boolean root_volume_encryption_key_arn: String 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

compute

Propriétés qui définissent les paramètres informatiques du groupe de nœuds EKS gérés par Amazon, tels que les types d'EC2instances Amazon et les EC2 instances AmazonAMIs.

ami_type

Le AMI type EKS pris en charge par Amazon.

Obligatoire : oui

Type : String

Valeurs possibles : AL2_x86_64 | AL2_x86_64_GPU | AL2_ARM_64 | CUSTOM | BOTTLEROCKET_ARM_64 | BOTTLEROCKET_x86_64 | BOTTLEROCKET_ARM_64_NVIDIA | BOTTLEROCKET_x86_64_NVIDIA

ami_id

L'identifiant duAMI.

Obligatoire : non

Type : String

Note

Si ami_type les deux ami_id sont spécifiés dans le modèle, AWS TNB il utilisera uniquement la ami_id valeur pour créerEKSManagedNode.

instance_types

Taille de l'instance.

Obligatoire : oui

Type: liste

key_pair

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

Obligatoire : oui

Type : String

root_volume_encryption

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

Obligatoire : non

Valeur par défaut : true

Type : booléen

root_volume_encryption_key_arn

ARNLa AWS KMS clé. AWS TNBprend en charge la clé normaleARN, la clé multirégionale ARN et l'aliasARN.

Obligatoire : non

Type : String

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

  • AWS TNBprend en charge le chiffrement du volume racine des fichiers EBS soutenus par AMI Amazon.

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

  • Si le AMI volume racine 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 utilise la clé par défaut fournie par AWS Key Management Service pour chiffrer le volume racine.

  • AWS TNBne déchiffre pas un chiffréAMI.

scaling

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

desired_size

Le nombre d'instances qu'il contient NodeGroup.

Obligatoire : oui

Type : entier

min_size

Le nombre minimum d'instances dans ce cas NodeGroup.

Obligatoire : oui

Type : entier

max_size

Le nombre maximum d'instances dans ce cas NodeGroup.

Obligatoire : oui

Type : entier

Propriétés

node_role

Le ARN IAM rôle qui est attaché à l'EC2instance Amazon.

Obligatoire : oui

Type : String

tags

Les balises à associer à la ressource.

Obligatoire : non

Type: liste

Prérequis

cluster

Un AWS.Compute. EKSnœud.

Obligatoire : oui

Type : String

subnets

Un nœud AWS.Networking.Subnet.

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 associée à ENIs la multus_role propriété si vous l'avez incluse dans le multus AWSfichier .Compute. EKSnœud. Sinon, AWS TNB obtient l'autorisation associée à ENIs 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.Calculez. PlacementGroupnœud.

Obligatoire : non

Type : String

user_data

Un tosca.nodes.AWS.Calculez. UserDataréférence de nœud. Un script de données utilisateur est transmis aux EC2 instances Amazon lancées par le groupe de nœuds gérés. 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 : String

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

SampleEKSManagedNode: type: tosca.nodes.AWS.Compute.EKSManagedNode capabilities: compute: properties: ami_type: "AL2_x86_64" instance_types: - "t3.xlarge" 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" scaling: properties: desired_size: 1 min_size: 1 max_size: 1 properties: node_role: "arn:aws:iam::${AWS::TNB::AccountId}:role/SampleRole" tags: - "Name=SampleVPC" - "Environment=Testing" requirements: cluster: SampleEKS subnets: - SampleSubnet network_interfaces: - SampleENI01 - SampleENI02 security_groups: - SampleSecurityGroup01 - SampleSecurityGroup02 placement_group: SamplePlacementGroup user_data: CustomUserData labels: - "sampleLabelName001=sampleLabelValue001" - "sampleLabelName002=sampleLabelValue002"