Support für AWS Outposts - Eksctl-Benutzerhandbuch

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.

Support für AWS Outposts

Warnung

EKS Managed Nodegroups werden auf Outposts nicht unterstützt.

Erweiterung vorhandener Cluster auf AWS Outposts

Sie können einen vorhandenen EKS-Cluster, der in einer AWS-Region ausgeführt wird, auf AWS Outposts erweitern, indem Sie neue Knotengruppen einrichtennodeGroup.outpostARN, um Knotengruppen in Outposts zu erstellen, wie in:

# extended-cluster.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: existing-cluster region: us-west-2 nodeGroups: # Nodegroup will be created in an AWS region. - name: ng # Nodegroup will be created on the specified Outpost. - name: outpost-ng privateNetworking: true outpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234"
eksctl create nodegroup -f extended-cluster.yaml

In diesem Setup läuft die EKS-Kontrollebene in einer AWS-Region, während Knotengruppen mit outpostARN Set auf dem angegebenen Outpost ausgeführt werden. Wenn zum ersten Mal eine Knotengruppe auf Outposts erstellt wird, erweitert eksctl die VPC, indem Subnetze auf dem angegebenen Outpost erstellt werden. Diese Subnetze werden verwendet, um Knotengruppen zu erstellen, die sich gesetzt haben. outpostARN

Kunden mit einer bereits vorhandenen VPC müssen die Subnetze auf Outposts erstellen und sie weitergeben, wie innodeGroup.subnets:

# extended-cluster-vpc.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: extended-cluster-vpc region: us-west-2 vpc: id: vpc-1234 subnets: private: outpost-subnet-1: id: subnet-1234 nodeGroups: # Nodegroup will be created in an AWS region. - name: ng # Nodegroup will be created on the specified Outpost. - name: outpost-ng privateNetworking: true # Subnet IDs for subnets created on Outpost. subnets: [subnet-5678] outpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234"

Einen lokalen Cluster auf AWS Outposts erstellen

Anmerkung

Lokale Cluster unterstützen nur Outpost-Racks.

Anmerkung

Nur Amazon Linux 2 wird für Knotengruppen unterstützt, wenn sich die Steuerungsebene auf Outposts befindet. Für Knotengruppen auf Outposts werden nur EBS-GP2-Volumetypen unterstützt.

Durch die Unterstützung von AWS Outposts in eksctl können Sie lokale Cluster erstellen, wobei der gesamte Kubernetes-Cluster, einschließlich der EKS-Steuerebene und der Worker-Knoten, lokal auf AWS Outposts ausgeführt wird. Kunden können entweder einen lokalen Cluster erstellen, in dem sowohl die EKS-Kontrollebene als auch die Worker-Knoten lokal auf AWS Outposts ausgeführt werden, oder sie können einen vorhandenen EKS-Cluster, der in einer AWS-Region läuft, auf AWS Outposts erweitern, indem sie Worker-Knoten auf Outposts erstellen.

Um die EKS-Kontrollebene und die Knotengruppen auf AWS Outposts outpost.controlPlaneOutpostARN zu erstellen, stellen Sie den Outpost-ARN ein, wie in:

# outpost.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost region: us-west-2 outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large
eksctl create cluster -f outpost.yaml

Dadurch wird eksctl angewiesen, die EKS-Kontrollebene und die Subnetze auf dem angegebenen Outpost zu erstellen. Da ein Outposts-Rack in einer einzigen Availability Zone existiert, erstellt eksctl nur ein öffentliches und ein privates Subnetz. eksctl verknüpft die erstellte VPC nicht mit einem lokalen Gateway, sodass eksctl keine Konnektivität zum API-Server hat und keine Knotengruppen erstellen kann. Wenn der während der Clustererstellung Knotengruppen ClusterConfig enthält, muss der Befehl daher wie folgt ausgeführt werden: --without-nodegroup

eksctl create cluster -f outpost.yaml --without-nodegroup

Es liegt in der Verantwortung des Kunden, die von eksctl erstellte VPC nach der Clustererstellung dem lokalen Gateway zuzuordnen, um die Konnektivität zum API-Server zu ermöglichen. Nach diesem Schritt können Knotengruppen mit erstellt werden. eksctl create nodegroup

Sie können optional den Instanztyp für die Knoten der Steuerungsebene in outpost.controlPlaneInstanceType oder für die darin enthaltenen Knotengruppen angebennodeGroup.instanceType, aber der Instanztyp muss auf Outpost vorhanden sein, sonst gibt eksctl einen Fehler zurück. Standardmäßig versucht eksctl, den kleinsten verfügbaren Instanztyp auf Outpost für die Knoten und Knotengruppen der Kontrollebene auszuwählen.

Wenn sich die Kontrollebene auf Outposts befindet, werden Knotengruppen auf diesem Außenposten erstellt. Sie können optional den Outpost-ARN für die Nodegroup in angeben, er muss nodeGroup.outpostARN jedoch mit dem Outpost-ARN der Kontrollebene übereinstimmen.

# outpost-fully-private.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost-fully-private region: us-west-2 privateCluster: enabled: true outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large
# outpost.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost region: us-west-2 outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large controlPlanePlacement: groupName: placement-group-name

Vorhandene VPC

Kunden mit einer vorhandenen VPC können lokale Cluster auf AWS Outposts erstellen, indem sie die Subnetzkonfiguration wie folgt angeben: vpc.subnets

# outpost-existing-vpc.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost region: us-west-2 vpc: id: vpc-1234 subnets: private: outpost-subnet-1: id: subnet-1234 nodeGroups: - name: outpost-ng privateNetworking: true outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large
eksctl create cluster -f outpost-existing-vpc.yaml

Die Subnetze müssen auf dem in angegebenen Outpost vorhanden sein, andernfalls gibt eksctl einen outpost.controlPlaneOutpostARN Fehler zurück. Sie können bei der Clustererstellung auch Knotengruppen angeben, wenn Sie Zugriff auf das lokale Gateway für das Subnetz haben oder Konnektivität zu VPC-Ressourcen haben.

Funktionen werden auf lokalen Clustern nicht unterstützt

Weitere Informationen