View a markdown version of this page

AWS.Compute.EKSSelfManagedNode - AWS Construtor de rede Telco

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS.Compute.EKSSelfManagedNode

AWS O TNB oferece suporte aos nós autogerenciados do Amazon EKS para automatizar o provisionamento e o gerenciamento do ciclo de vida dos nós (instâncias do Amazon EC2) para clusters do Amazon EKS Kubernetes. Para criar um grupo de nós do Amazon EKS, faça o seguinte:

  • Escolha as Amazon Machine Images (AMI) para seus nós de trabalho de cluster fornecendo o ID da AMI.

  • Forneça um par de chaves do Amazon EC2 para acesso SSH.

  • Certifique-se de que seu grupo de nós esteja associado a um cluster do Amazon EKS.

  • Forneça o tipo de instância e os tamanhos desejados, mínimos e máximos.

  • Forneça as sub-redes para os nós de trabalho.

  • Opcionalmente, anexe grupos de segurança, rótulos de nós e um grupo de posicionamento ao seu grupo de nós.

Sintaxe

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

Capacidades

computação

Propriedades que definem os parâmetros de computação para os nós autogerenciados do Amazon EKS, como tipos de instância do Amazon EC2 e AMIs de instância do Amazon EC2.

ami_id

O ID da AMI usado para iniciar a instância. AWS O TNB oferece suporte a instâncias que utilizam o IMDSv2. Para obter mais informações, consulte Versão do IMDS.

nota

Você pode atualizar o ID da AMI paraEKSSelfManagedNode. A versão do Amazon EKS da AMI deve ser igual ou até duas versões inferior à versão do cluster do Amazon EKS. Por exemplo, se a versão do cluster Amazon EKS for 1.31, a versão da Amazon EKS AMI deverá ser 1.31, 1.30 ou 1.29.

Obrigatório: Sim

Tipo: string

instance_type

O tamanho da instância.

Obrigatório: Sim

Tipo: string

key_pair

O par de chaves do Amazon EC2 para permitir o acesso SSH.

Obrigatório: Sim

Tipo: string

root_volume_encryption

Ativa a criptografia do Amazon EBS para o volume raiz do Amazon EBS. Se essa propriedade não for fornecida, o AWS TNB criptografará os volumes raiz do Amazon EBS por padrão.

Obrigatório: não

Padrão: verdadeiro

Tipo: booliano

root_volume_encryption_key_arn

O ARN da chave. AWS KMS AWS O TNB suporta ARN de chave regular, ARN de chave multirregional e ARN de alias.

Obrigatório: não

Tipo: string

nota
  • Se root_volume_encryption for falso, não incluaroot_volume_encryption_key_arn.

  • AWS O TNB oferece suporte à criptografia do volume raiz das EBS-backed AMIs da Amazon.

  • Se o volume raiz da AMI já estiver criptografado, você deverá incluir o root_volume_encryption_key_arn para que o AWS TNB recriptografe o volume raiz.

  • Se o volume raiz da AMI não estiver criptografado, o AWS TNB usará o root_volume_encryption_key_arn para criptografar o volume raiz.

    Se você não incluirroot_volume_encryption_key_arn, o AWS TNB usa AWS Managed Services para criptografar o volume raiz.

  • AWS O TNB não decifra uma AMI criptografada.

root_volume_size

O tamanho do volume raiz do Amazon Elastic Block Store em GiBs.

Obrigatório: não

Padrão: 20

Tipo: inteiro

Valores possíveis: 1 a 16.384

Em escala

Propriedades que definem os parâmetros de escalabilidade para os nós autogerenciados do Amazon EKS, como o número desejado de instâncias do Amazon EC2 e os números mínimo e máximo de instâncias do Amazon EC2 no grupo de nós.

desired_size

O número de instâncias neste NodeGroup.

Obrigatório: Sim

Tipo: inteiro

min_size

O número mínimo de instâncias neste NodeGroup.

Obrigatório: Sim

Tipo: inteiro

max_size

O número máximo de instâncias neste NodeGroup.

Obrigatório: Sim

Tipo: inteiro

Propriedades

node_role

O ARN do perfil do IAM anexado à instância do Amazon EC2.

Obrigatório: Sim

Tipo: string

tags

As tags a serem anexadas ao recurso. As tags serão propagadas para as instâncias criadas pelo recurso.

Obrigatório: não

Tipo: lista

Requisitos

cluster

Um AWS. Compute.EKSnodo.

Obrigatório: Sim

Tipo: string

subnets

Um AWS. Networking.Subnetnodo.

Obrigatório: Sim

Tipo: lista

network_interfaces

Um AWS. Networking.ENInodo. Certifique-se de que as interfaces de rede e sub-redes estejam definidas com a mesma zona de disponibilidade, senão a instanciação falhará.

Quando você definenetwork_interfaces, o AWS TNB obtém a permissão relacionada aos ENIs da multus_role propriedade se você incluiu a multus propriedade no nó. AWS.Compute.EKS Caso contrário, o AWS TNB recebe a permissão relacionada a ENIs da propriedade node_role.

Obrigatório: não

Tipo: lista

security_groups

Um AWS. Networking.SecurityGroupnodo.

Obrigatório: não

Tipo: lista

placement_group

Um tosca.nodes.AWS. Compute.PlacementGroupnodo.

Obrigatório: não

Tipo: string

user_data

Um tosca.nodes.AWS. Compute.UserDatareferência de nó. Um script de dados de usuário é transmitido às instâncias do Amazon EC2 iniciadas pelo grupo de nós autogerenciados. Adicione as permissões necessárias para executar dados de usuário personalizados no node_role transmitido ao grupo de nós.

Obrigatório: não

Tipo: string

labels

Uma lista de rótulos de nós. Um rótulo de nó deve ter um nome e um valor. Crie um rótulo usando os seguintes critérios:

  • O nome e o valor devem ser separados por=.

  • O nome e o valor podem ter, cada um, até 63 caracteres.

  • O rótulo pode incluir letras (A-Z, a-z,), números (0-9) e os seguintes caracteres: [-, _, ., *, ?]

  • O nome e o valor devem começar e terminar com um caractere alfanumérico ou * caractere. ?

Por exemplo, myLabelName1=*NodeLabelValue1.

Obrigatório: não

Tipo: lista

Exemplo

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"