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.Calcular. EKSSelfManagedNode
AWS TNB es compatible con los nodos autogestionados de Amazon EKS para automatizar el aprovisionamiento y la administración del ciclo de vida de los nodos ( EC2 instancias de Amazon) para los clústeres de Amazon EKS Kubernetes. Para crear un grupo de nodos de Amazon EKS, haga lo siguiente:
-
Elija Amazon Machine Images (AMI) para los nodos de trabajadores del clúster proporcionando el ID de la AMI.
-
Proporcione un par de EC2 claves de Amazon para el acceso SSH.
-
Asegúrese de que su grupo de nodos esté asociado a un clúster de Amazon EKS.
-
Proporcione el tipo de instancia y los tamaños deseado, mínimo y máximo.
-
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.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
Capacidades
compute
Propiedades que definen los parámetros informáticos de los nodos autogestionados de Amazon EKS, como los tipos de instancias de Amazon y la EC2 instancia de Amazon EC2 . AMIs
-
ami_id
-
El ID de AMI utilizado para lanzar la instancia. AWS TNB admite instancias que aprovechan IMDSv2. Para obtener más información, consulte Versión IMDS.
Obligatorio: sí
Tipo: cadena
-
instance_type
-
El tamaño de la instancia.
Obligatorio: sí
Tipo: cadena
-
key_pair
-
El par de EC2 claves de Amazon 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_encryption
es falso, no lo incluya.root_volume_encryption_key_arn
-
AWS TNB admite el cifrado del volumen raíz de las AMI respaldadas por Amazon EBS.
-
Si el volumen raíz de la AMI ya está cifrado, debe incluirlo
root_volume_encryption_key_arn
para 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_arn
para cifrar el volumen raíz.Si no lo incluye
root_volume_encryption_key_arn
, AWS TNB lo utiliza AWS Managed Services para cifrar el volumen raíz. -
AWS TNB no descifra una AMI cifrada.
-
scaling
Propiedades que definen los parámetros de escalado de los nodos autogestionados de Amazon EKS, como el número deseado de EC2 instancias de Amazon y el número mínimo y máximo de EC2 instancias de Amazon 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 de la función de IAM asociada a la instancia de Amazon. EC2
Obligatorio: sí
Tipo: cadena
-
tags
-
Las etiquetas que deben asociarse al recurso. Las etiquetas se propagarán a las instancias creadas por el recurso.
Obligatorio: no
Tipo: lista
Requisitos
-
cluster
-
Un nodo AWS.Compute.EKS.
Obligatorio: sí
Tipo: cadena
-
subnets
-
Un nodo AWS.Networking.Subnet.
Obligatorio: sí
Tipo: lista
-
network_interfaces
-
Un nodo AWS.Networking.ENI. 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.
Al configurarlo
network_interfaces
, AWS TNB obtiene el permiso correspondiente ENIs de lamultus_role
propiedad si la incluyó en el nodomultus
AWS.Compute.EKS. De lo contrario, AWS TNB obtiene el permiso correspondiente de la propiedad node_role. ENIsObligatorio: no
Tipo: lista
-
security_groups
-
Un .Networking.AWS 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. Se pasa un script de datos de usuario a las EC2 instancias de Amazon lanzadas por el grupo de nodos autogestionado. 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 alfanumérico o un carácter.
?
*
Por ejemplo,
myLabelName1=*NodeLabelValue1
.Obligatorio: no
Tipo: lista
-
Ejemplo
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"