

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# AWS. Berechne. EKSSelfManagedNode
<a name="node-eks-self-managed"></a>

AWS TNB unterstützt selbstverwaltete Amazon EKS-Knoten, um die Bereitstellung und das Lebenszyklusmanagement von Knoten ( EC2 Amazon-Instances) für Amazon EKS Kubernetes-Cluster zu automatisieren. Gehen Sie wie folgt vor, um eine Amazon EKS-Knotengruppe zu erstellen:
+ Wählen Sie die Amazon Machine Images (AMI) für Ihre Cluster-Worker-Knoten aus, indem Sie entweder die AMI-ID angeben.
+ Stellen Sie ein EC2 Amazon-Schlüsselpaar für den SSH-Zugriff bereit.
+ Stellen Sie sicher, dass Ihre Knotengruppe mit einem Amazon EKS-Cluster verknüpft ist.
+ Geben Sie den Instance-Typ und die gewünschten Mindest- und Maximalgrößen an.
+ Stellen Sie die Subnetze für die Worker-Knoten bereit.
+ Fügen Sie Ihrer Knotengruppe optional Sicherheitsgruppen, Knotenbezeichnungen und eine Platzierungsgruppe hinzu.

## Syntax
<a name="node-eks-self-managed-node-syntax"></a>

```
tosca.nodes.AWS.Compute.EKSSelfManagedNode:
  capabilities:
    compute:
      properties:
        ami\$1id: String
        instance\$1type: String
        key\$1pair: String
        root\$1volume\$1encryption: Boolean
        root\$1volume\$1encryption\$1key\$1arn: String    
        root\$1volume\$1size: Integer
    scaling:
      properties:
        desired\$1size: Integer
        min\$1size: Integer
        max\$1size: Integer  
  properties:
    node\$1role: String    
    tags: List          
  requirements:
    cluster: String
    subnets: List
    network\$1interfaces: List
    security\$1groups: List
    placement\$1group: String
    user\$1data: String
    labels: List
```

## Funktionen
<a name="node-eks-self-managed-node-capabilities"></a><a name="node_eks_self_managed_node_compute"></a>`compute`

Eigenschaften, die die Rechenparameter für die selbstverwalteten Amazon EKS-Knoten definieren, z. B. EC2 Amazon-Instance-Typen und EC2 Amazon-Instances AMIs.

 `ami_id`    
Die AMI-ID, die zum Starten der Instance verwendet wurde. AWS TNB unterstützt Instances, die diese Funktion nutzen IMDSv2. Weitere Informationen finden Sie unter [IMDS-Version](imds-version.md).  
Sie können die AMI-ID für aktualisieren`EKSSelfManagedNode`. Die Amazon EKS-Version des AMI muss mit der Amazon EKS-Cluster-Version identisch sein oder bis zu 2 Versionen niedriger sein. Wenn die Amazon EKS-Cluster-Version beispielsweise 1.31 ist, muss die Amazon EKS AMI-Version 1.31, 1.30 oder 1.29 sein.
Erforderlich: Ja  
Typ: Zeichenfolge

 `instance_type`    
Die Instance-Größe.  
Erforderlich: Ja  
Typ: Zeichenfolge

 `key_pair`    
Das EC2 Amazon-Schlüsselpaar zur Aktivierung des SSH-Zugriffs.  
Erforderlich: Ja  
Typ: Zeichenfolge

 `root_volume_encryption`    
Aktiviert die Amazon EBS-Verschlüsselung für das Amazon EBS-Root-Volume. Wenn diese Eigenschaft nicht angegeben wird, verschlüsselt AWS TNB standardmäßig Amazon EBS-Root-Volumes.  
Erforderlich: Nein  
Standard: true  
Typ: Boolesch

 `root_volume_encryption_key_arn`    
Der ARN des AWS KMS Schlüssels. AWS TNB unterstützt reguläre Schlüssel-ARN, Multi-Region-Schlüssel-ARN und Alias-ARN.  
Erforderlich: Nein  
Typ: Zeichenfolge  
+ Wenn der Wert falsch `root_volume_encryption` ist, schließen Sie ihn nicht ein. `root_volume_encryption_key_arn`
+ AWS TNB unterstützt die Root-Volume-Verschlüsselung von Amazon EBS-gestützten AMIs.
+ Wenn das Root-Volume des AMI bereits verschlüsselt ist, müssen Sie das `root_volume_encryption_key_arn` für AWS TNB hinzufügen, um das Root-Volume erneut zu verschlüsseln.
+  Wenn das Root-Volume des AMI nicht verschlüsselt ist, verwendet AWS TNB das, `root_volume_encryption_key_arn` um das Root-Volume zu verschlüsseln.

  Wenn Sie dies nicht angeben`root_volume_encryption_key_arn`, verwendet AWS TNB das AWS Managed Services Root-Volume zur Verschlüsselung.
+ AWS TNB entschlüsselt kein verschlüsseltes AMI.

 `root_volume_size`    
Die Größe des Amazon Elastic Block Store-Root-Volumes in GiBs.  
Erforderlich: Nein  
Standard: 20  
Typ: Ganzzahl  
Mögliche Werte: 1 bis 16.384<a name="node_eks_self_managed_node_scaling"></a>`scaling`

Eigenschaften, die die Skalierungsparameter für die selbstverwalteten Amazon EKS-Knoten definieren, z. B. die gewünschte Anzahl von EC2 Amazon-Instances und die Mindest- und Höchstanzahl von EC2 Amazon-Instances in der Knotengruppe.

 `desired_size`    
Die Anzahl der Instances in dieser NodeGroup.  
Erforderlich: Ja  
Typ: Ganzzahl

 `min_size`    
Die Mindestanzahl von Instanzen in diesem Bereich NodeGroup.  
Erforderlich: Ja  
Typ: Ganzzahl

 `max_size`    
Die maximale Anzahl von Instanzen in diesem Bereich NodeGroup.  
Erforderlich: Ja  
Typ: Ganzzahl

## Eigenschaften
<a name="node-eks-self-managed-node-properties"></a>

 `node_role`    
Der ARN der IAM-Rolle, die der EC2 Amazon-Instance zugeordnet ist.  
Erforderlich: Ja  
Typ: Zeichenfolge

 `tags`    
Die Tags, die an die Ressource angehängt werden sollen. Die Tags werden an die von der Ressource erstellten Instanzen weitergegeben.  
Erforderlich: Nein  
Typ: Liste

## Voraussetzungen
<a name="node-eks-self-managed-node-requirements"></a>

 `cluster`    
Ein [AWS.compute.EKS-Knoten](node-eks.md).  
Erforderlich: Ja  
Typ: Zeichenfolge

 `subnets`    
[Ein .Networking.Subnet-Knoten.AWS](node-subnet.md)  
Erforderlich: Ja  
Typ: Liste

 `network_interfaces`    
[Ein .Networking.ENI-Knoten.AWS](node-eni.md) Stellen Sie sicher, dass die Netzwerkschnittstellen und Subnetze auf dieselbe Availability Zone eingestellt sind. Andernfalls schlägt die Instanziierung fehl.  
[Wenn Sie diese Eigenschaft festlegen`network_interfaces`, erhält AWS TNB die entsprechende Berechtigung für die Eigenschaft, sofern Sie die `multus_role` Eigenschaft in ENIs den AWS.Compute.eks-Knoten aufgenommen haben. `multus`](https://docs.aws.amazon.com/tnb/latest/ug/node-eks.html) [Andernfalls erhält AWS TNB die entsprechende Berechtigung von der Eigenschaft node\$1role. ENIs ](#node_eks_self_managed_node_role)  
Erforderlich: Nein  
Typ: Liste

 `security_groups`    
[Ein .Networking.AWS SecurityGroup](node-networking-security-group.md)Knoten.  
Erforderlich: Nein  
Typ: Liste

 `placement_group`    
Ein [tosca.nodes.AWS. Rechnen. PlacementGroup](node-compute-placement-group.md)Knoten.  
Erforderlich: Nein  
Typ: Zeichenfolge

 `user_data`    
Ein [tosca.nodes.AWS. Rechnen. UserData](node-compute-user-data.md)Knotenreferenz. Ein Benutzerdatenskript wird an die EC2 Amazon-Instances übergeben, die von der selbstverwalteten Knotengruppe gestartet wurden. Fügen Sie der an die Knotengruppe übergebenen node\$1role die Berechtigungen hinzu, die für die Ausführung benutzerdefinierter Benutzerdaten erforderlich sind.  
Erforderlich: Nein  
Typ: Zeichenfolge

 `labels`    
Eine Liste von Knotenbezeichnungen. Eine Knotenbezeichnung muss einen Namen und einen Wert haben. Erstellen Sie ein Label anhand der folgenden Kriterien:  
+ Der Name und der Wert müssen durch getrennt werden`=`.
+ Der Name und der Wert können jeweils bis zu 63 Zeichen lang sein.
+ Die Bezeichnung kann Buchstaben (A-Z, a-z,), Zahlen (0-9) und die folgenden Zeichen enthalten: `[-, _, ., *, ?]`
+ Der Name und der Wert müssen mit einem alphanumerischen Zeichen oder beginnen und enden. `?` `*`
Beispiel: `myLabelName1=*NodeLabelValue1`  
Erforderlich: Nein  
Typ: Liste

## Beispiel
<a name="node-eks-self-managed-node-example"></a>

```
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"
```