Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
AWS.Compute.EKSManagedNode
AWS TNB es compatible con los grupos de nodos gestionados por EKS para automatizar el aprovisionamiento y la administración del ciclo de vida de los nodos (instancias de Amazon EC2) para los clústeres de Amazon EKS Kubernetes. Para crear un grupo de nodos EKS, haga lo siguiente:
-
Elija Amazon Machine Images (AMI) para los nodos de trabajo de su clúster proporcionando el ID de la AMI o el tipo de AMI.
-
Proporcione un par de claves de Amazon EC2 para el acceso SSH y las propiedades de escalado de su grupo de nodos.
-
Asegúrese de que su grupo de nodos esté asociado a un clúster de Amazon EKS.
-
Proporcione las subredes de los nodos de trabajo.
-
Si lo desea, adjunte grupos de seguridad, etiquetas de nodos y un grupo de ubicación a su grupo de nodos.
Sintaxis
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
root_volume_size: Integer
scaling:
properties:
desired_size: Integer
min_size: Integer
max_size: Integer
properties:
node_role: String
tags: List
kubernetes_version: String
requirements:
cluster: String
subnets: List
network_interfaces: List
security_groups: List
placement_group: String
user_data: String
labels: List
Capacidades
cálculo
Propiedades que definen los parámetros de cálculo del grupo de nodos gestionado por Amazon EKS, como los tipos de instancias de Amazon EC2 y las AMI de instancias de Amazon EC2.
-
ami_type -
El tipo de Amazon EKS-supported AMI.
Obligatorio: sí
Tipo: cadena
Valores posibles:
AL2_x86_64|AL2_x86_64_GPU|AL2_ARM_64AL2023_x86_64|AL2023_ARM_64|AL2023_x86_64_NVIDIA|AL2023_x86_64_NEURON|CUSTOM|BOTTLEROCKET_ARM_64|BOTTLEROCKET_x86_64|BOTTLEROCKET_ARM_64_NVIDIA|BOTTLEROCKET_x86_64_NVIDIA -
ami_id -
Es el ID de la AMI.
Obligatorio: no
Tipo: cadena
nota
Si ambos
ami_typeyami_idse especifican en la plantilla, AWS TNB utilizará solo elami_idvalor para crearEKSManagedNode. -
instance_types -
El tamaño de la instancia.
Obligatorio: sí
Tipo: lista
-
key_pair -
El par de claves EC2 para habilitar el acceso SSH.
Obligatorio: sí
Tipo: cadena
-
root_volume_encryption -
Habilita el cifrado de Amazon EBS para el volumen raíz de Amazon EBS. Si no se proporciona esta propiedad, AWS TNB cifra los volúmenes raíz de Amazon EBS de forma predeterminada.
Obligatorio: no
Predeterminado: true
Tipo: Booleano
-
root_volume_encryption_key_arn -
El ARN de la AWS KMS clave. AWS TNB admite el ARN de clave normal, el ARN de clave multirregional y el ARN de alias.
Obligatorio: no
Tipo: cadena
nota
-
Si
root_volume_encryptiones falso, no lo incluya.root_volume_encryption_key_arn -
AWS TNB admite el cifrado del volumen raíz de las EBS-backed AMI de Amazon.
-
Si el volumen raíz de la AMI ya está cifrado, debe incluirlo
root_volume_encryption_key_arnpara que AWS TNB vuelva a cifrar el volumen raíz. -
Si el volumen raíz de la AMI no está cifrado, AWS TNB lo utiliza
root_volume_encryption_key_arnpara cifrar el volumen raíz.Si no la incluye
root_volume_encryption_key_arn, AWS TNB utilizará la clave predeterminada proporcionada por AWS Key Management Service para cifrar el volumen raíz. -
AWS TNB no descifra una AMI cifrada.
-
-
root_volume_size -
El tamaño del volumen raíz de Amazon Elastic Block Store en GiBs.
Obligatorio: no
Predeterminado: 20
Tipo: entero
Valores posibles: de 1 a 16.384
escalado
Propiedades que definen los parámetros de escalado del grupo de nodos gestionado por Amazon EKS, como el número deseado de instancias de Amazon EC2 y el número mínimo y máximo de instancias de Amazon EC2 en el grupo de nodos.
-
desired_size -
El número de instancias que contiene. NodeGroup
Obligatorio: sí
Tipo: entero
-
min_size -
El número mínimo de instancias que contiene NodeGroup.
Obligatorio: sí
Tipo: entero
-
max_size -
El número máximo de instancias que contiene NodeGroup.
Obligatorio: sí
Tipo: entero
Propiedades
-
node_role -
El ARN del rol de IAM asociado a la instancia de Amazon EC2.
Obligatorio: sí
Tipo: cadena
-
tags -
Las etiquetas que deben asociarse al recurso.
Obligatorio: no
Tipo: lista
-
kubernetes_version -
La versión de Kubernetes para el grupo de nodos gestionados. AWS TNB es compatible con las versiones 1.27 a 1.34 de Kubernetes. Considere lo siguiente:
-
Especifique la
kubernetes_versionami_idopción o. No especifique ambos. -
kubernetes_versionDebe ser menor o igual que AWS. Compute.EKSManagedNode versión. -
Puede haber una diferencia de 3 versiones entre AWS. Compute.EKSManagedNode versión y
kubernetes_version. -
Si no
ami_idsekubernetes_versionespecifica ni, AWS TNB utilizará la AMI más reciente de laAWS.Compute.EKSManagedNodeversión para crearEKSManagedNode
Obligatorio: no
Tipo: cadena
Valores posibles: 1,27 | 1,28 | 1,29 | 1,30 | 1,31 | 1,32 | 1,33 | 1,34
-
Requisitos
-
cluster -
Y AWS. Compute.EKSnodo.
Obligatorio: sí
Tipo: cadena
-
subnets -
Un AWS. Networking.Subnetnodo.
Obligatorio: sí
Tipo: lista
-
network_interfaces -
Un AWS. Networking.ENInodo. Asegúrese de que las interfaces de red y las subredes estén configuradas en la misma zona de disponibilidad o se producirá un error en la instanciación.
Cuando se establece
network_interfaces, AWS TNB obtiene el permiso relacionado con los ENI de lamultus_rolepropiedad si se ha incluido lamultuspropiedad en el nodo. AWS.Compute.EKS De lo contrario, AWS TNB obtiene el permiso relacionado con las ENI de la propiedad node_role.Obligatorio: no
Tipo: lista
-
security_groups -
Y AWS. Networking.SecurityGroupnodo.
Obligatorio: no
Tipo: lista
-
placement_group -
Un tosca.nodes.AWS. Compute.PlacementGroupnodo.
Obligatorio: no
Tipo: cadena
-
user_data -
Un tosca.nodes.AWS. Compute.UserDatareferencia de nodo. Un script de datos de usuario se pasa a las instancias de Amazon EC2 lanzadas por el grupo de nodos administrados. Agregue los permisos necesarios para ejecutar datos de usuario personalizados al node_role pasado al grupo de nodos.
Obligatorio: no
Tipo: cadena
-
labels -
Una lista de etiquetas de nodos. Una etiqueta de nodo debe tener un nombre y un valor. Cree una etiqueta con los siguientes criterios:
-
El nombre y el valor deben estar separados por
=. -
El nombre y el valor pueden tener hasta 63 caracteres cada uno.
-
La etiqueta puede incluir letras (A-Z, a-z,), números (0-9) y los siguientes caracteres:
[-, _, ., *, ?] -
El nombre y el valor deben empezar y terminar con un carácter alfanumérico o un carácter
?.*
Por ejemplo,
myLabelName1=*NodeLabelValue1Obligatorio: no
Tipo: lista
-
Ejemplo
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" root_volume_size:1500scaling: 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" kubernetes_version: - "1.30" requirements: cluster: SampleEKS subnets: - SampleSubnet network_interfaces: - SampleENI01 - SampleENI02 security_groups: - SampleSecurityGroup01 - SampleSecurityGroup02 placement_group: SamplePlacementGroup user_data: CustomUserData labels: - "sampleLabelName001=sampleLabelValue001" - "sampleLabelName002=sampleLabelValue002"