Wie erstelle ich mit eksctl mehrere Knotengruppen für Amazon EKS-Knoten?
Ich möchte mithilfe von eksctl mehrere Knotengruppen für Amazon Elastic Kubernetes Service (Amazon EKS)-Knoten erstellen.
Kurzbeschreibung
Sie können eine Knotengruppe mit eksctl entweder mit Standardparametern oder mit benutzerdefinierten Parametern erstellen, indem Sie eine Konfigurationsdatei für mehrere Knotengruppen verwenden.
Lösung
Knotengruppe mit Standardparametern erstellen
2. Führen Sie den folgenden Befehl aus, um zu bestätigen, dass eksctl konfiguriert und auf dem Terminal mit den richtigen Berechtigungen installiert ist:
$ eksctl version
3. Führen Sie diesen Befehl aus, um eine zusätzliche Knotengruppe mit Standardparametern zu erstellen:
$ eksctl create nodegroup --cluster=yourClusterName --name=yourNodeGroupName --region yourRegionName
Hier sind die Standardparameter:
Instance type = m5.large AMI : lastest AWS EKS AMI Nodes-desired capacity = 2 Nodes-min capacity =2 Nodes-max capacity=2
Hinweis: Standardmäßig erben neue Knotengruppen die von der Steuerebene installierte Version von Kubernetes (–version=auto), Sie können jedoch eine andere Version von Kubernetes angeben (z. B. version=1.13). Um die neueste Version von Kubernetes zu verwenden, führen Sie den Befehl –version=latest aus.
4. Öffnen Sie die AWS CloudFormation-Konsole, und wählen Sie den Stack aus, der der von Ihnen erstellten Knotengruppe zugeordnet ist. Wählen Sie dann den Reiter Events, um nach einem AWS CloudFormation-Ereignis zu suchen, welches anzeigt, dass Ihr Stack bereitgestellt ist.
5. Führen Sie die folgenden Befehle aus, um zu überprüfen, ob die neuen Knotengruppen an den Cluster angehängt sind, und ob die Knotengruppenkonfiguration angewendet wird:
$ Kubectl get nodes $ eksctl get nodegroups --cluster yourClusterName
Erstellen Sie eine Knotengruppe mit benutzerdefinierten Parametern
1. Definieren Sie die Parameter für die neue Knotengruppe in einer Konfigurationsdatei. Zum Beispiel:
kind: ClusterConfig apiVersion: eksctl.io/v1alpha5 metadata: name: yourClusterName region: yourRegionName nodeGroups: - name: ng1-Workers availabilityZones: ["az-name"] desiredCapacity: 3 instanceType: m5.large iam: instanceProfileARN: "arn:aws:iam::11111:instance-profile/eks-nodes-base-role" #Attaching IAM role instanceRoleARN: "arn:aws:iam::1111:role/eks-nodes-base-role" privateNetworking: true securityGroups: withShared: true withLocal: true attachIDs: ['sg-11111', 'sg-11112'] ssh: publicKeyName: 'my-instance-key' kubeletExtraConfig: kubeReserved: cpu: "300m" memory: "300Mi" ephemeral-storage: "1Gi" kubeReservedCgroup: "/kube-reserved" systemReserved: cpu: "300m" memory: "300Mi" ephemeral-storage: "1Gi" tags: 'environment': 'development' - name: ng-2-builders #example of a nodegroup that uses 50% spot instances and 50% on demand instances: minSize: 2 maxSize: 5 instancesDistribution: maxPrice: 0.017 instanceTypes: ["t3.small", "t3.medium"] # At least two instance types should be specified onDemandBaseCapacity: 0 onDemandPercentageAboveBaseCapacity: 50 spotInstancePools: 2 tags: 'environment': 'production'
2. Führen Sie den folgenden Befehl aus, um mithilfe der Konfigurationsdatei eine zusätzliche Knotengruppe zu erstellen:
$ eksctl create nodegroup --config-file= yourConfigFileName
3. Öffnen Sie die AWS CloudFormation-Konsole, und wählen Sie dann den Stack aus, der der von Ihnen erstellten Knotengruppe zugeordnet ist. Wählen Sie dann den Reiter Events, um nach einem AWS CloudFormation-Ereignis zu suchen, welches anzeigt, dass Ihr Stack bereitgestellt ist.
4. Führen Sie die folgenden Befehle aus, um zu überprüfen, ob die neuen Knotengruppen an den Cluster angehängt sind, und ob die Knotengruppenkonfiguration angewendet wird:
$ kubectl get nodes $ eksctl get nodegroups --cluster yourClusterName
Sie sehen, dass Ihre Knoten dem Cluster beigetreten sind. Sie können sehen, dass die beiden Knotengruppen sichtbar sind, indem Sie eksctl verwenden.
Ähnliche Videos
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 2 Jahren
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor einem Jahr