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. EKSSelfManagedNode
AWS TNBprend en charge les nœuds EKS autogérés Amazon 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 Amazon, procédez comme suit :
-
Choisissez les Amazon Machine Images (AMI) pour les nœuds de travail de votre cluster en fournissant l'un ou l'autre des ID duAMI.
-
Fournissez une paire de EC2 clés Amazon pour SSH y accéder.
-
Assurez-vous que votre groupe de nœuds est associé à un EKS cluster Amazon.
-
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
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 de calcul pour les nœuds EKS autogérés par Amazon, tels que les types d'EC2instances Amazon et les EC2 instances AMIs Amazon.
-
ami_id
-
AMIID utilisé pour lancer l'instance. AWS TNBprend en charge les instances qui tirent parti deIMDSv2. Pour de plus amples informations, veuillez consulter IMDSversion.
Obligatoire : oui
Type : String
-
instance_type
-
Taille de l'instance.
Obligatoire : oui
Type : String
-
key_pair
-
La paire de EC2 clés Amazon 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 n'incluez pas
root_volume_encryption_key_arn
, AWS TNB utilise AWS Managed Services 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 les nœuds EKS autogérés 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. Les balises seront propagées aux instances créées par 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éfinissez
network_interfaces
, AWS TNB obtient l'autorisation associée à ENIs lamultus_role
propriété si vous l'avez incluse dans lemultus
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 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 : 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
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
" 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"