AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
Wie starte und behebe ich Spot-Instances mit von Amazon EKS verwalteten Knotengruppen?
Ich möchte eine verwaltete Knotengruppe mit Spot-Kapazität für meinen Amazon Elastic Kubernetes Service (Amazon EKS)-Cluster erstellen und Probleme beheben.
Lösung
Wichtig: Stellen Sie sicher, dass Sie alle Befehle der AWS Command Line Interface (AWS CLI) überprüfen, bevor Sie sie verwenden, und ersetzen Sie Instances der Beispiel-Zeichenfolgen durch Ihre Werte. Ersetzen Sie beispielsweise example_cluster durch Ihren Clusternamen.
2. Erstellen Sie eine verwaltete Knotengruppe mit Spot-Kapazität in Ihrem vorhandenen Cluster, indem Sie den folgenden Befehl ausführen:
#eksctl create nodegroup --cluster=<example_cluster> --spot --instance-types=<Comma-separated list of instance types> --region <EKS cluster AWS region. Defaults to the value set in your AWS config (~/.aws/config)>
Beispiel:
#eksctl create nodegroup --cluster=demo --spot --instance-types=c3.large,c4.large,c5.large --region us-east-1
Hinweis: Es gibt andere Flags, die Sie beim Erstellen einer Spot-verwalteten Knotengruppe einrichten können, wie z. B. --name, --nodes, --nodes-min und --nodes-max. Rufen Sie die vollständige Liste aller verfügbaren Flags ab, indem Sie den folgenden Befehl ausführen:
#eksctl create nodegroup --help
3. Wenn Sie eine eksctl ClusterConfig-Konfigurationsdatei für Ihren Cluster verwalten, können Sie mit dieser Datei auch eine Spot-verwaltete Knotengruppe erstellen. Erstellen Sie Spot-Instances mithilfe von verwalteten Knotengruppen mit einer spot-cluster.yaml -Konfigurationsdatei, indem Sie den folgenden Befehl ausführen:
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: <example_cluster> region: <example_region> managedNodeGroups: - name: spot instanceTypes: ["c3.large","c4.large","c5.large","c5d.large","c5n.large","c5a.large"] spot: true
4. Erstellen Sie eine Knotengruppe mithilfe der Konfigurationsdatei, indem Sie den folgenden Befehl ausführen:
# eksctl create nodegroup -f spot-cluster.yaml
Behebung von Problemen im Zusammenhang mit Spot-Instances in Amazon EKS
Überprüfen Sie den Zustand einer verwalteten Knotengruppe, indem Sie eksctl oder die Amazon-EKS-Konsole wie folgt verwenden:
$ eksctl utils nodegroup-health --name=<example_nodegroup> --cluster=<example_cluster>
Der Zustand von Spot-verwalteten Knotengruppen kann sich aufgrund eines Mangels an Spot-Kapazität für verwendete Instance-Typen mit einem Fehler verschlechtern. Sehen Sie sich zum Beispiel den folgenden Fehler an:
AsgInstanceLaunchFailures Could not launch Spot Instances. UnfulfillableCapacity - Unable to fulfill capacity due to your request configuration. Please adjust your request and try again. Launching EC2 instance failed.
Hinweis: Um Spot-Instances erfolgreich einzusetzen, empfiehlt es sich, die Diversifizierung von Spot-Instances als Teil der Konfiguration der Spot-verwalteten Knotengruppe zu implementieren. Die Diversifizierung von Spot-Instances hilft dabei, Kapazität aus mehreren Spot-Instance-Pools zu beziehen. Das Abrufen dieser Kapazität dient sowohl zum Hochskalieren als auch zum Ersetzen von Spot-Instances, die möglicherweise eine Benachrichtigung über die Kündigung von Spot-Instances erhalten.
Wenn Ihre Cluster-Spot-Knotengruppen mit Instance-Typen bereitgestellt werden müssen, die ein Verhältnis von 1 vCPU:4 GB RAM einhalten, diversifizieren Sie Ihre Spot-Instance-Pools. Diversifizieren Sie Ihre Instance-Pools, indem Sie eine der folgenden Strategien anwenden:
- Erstellen Sie mehrere Knotengruppen mit jeweils unterschiedlichen Größen. Beispielsweise eine Knotengruppe mit 4 vCPUs und 16 GB RAM und eine andere Knotengruppe mit 8 vCPUs und 32 GB RAM.
- Implementieren Sie die Instance-Diversifizierung innerhalb der Knotengruppen. Wählen Sie dazu eine Mischung aus Instance-Typen und -Familien aus verschiedenen Spot-Instance-Pools aus, die dieselben vCPUs und Speicherkriterien erfüllen.
Verwenden Sie amazon-ec2-instance-selector, um die relevanten Instance-Typen und -Familien mit einer ausreichenden Anzahl von vCPUs und RAM auszuwählen, indem Sie den folgenden Befehl ausführen:
curl -Lo ec2-instance-selector https://github.com/aws/amazon-ec2-instance-selector/releases/download/v2.0.3/ec2-instance-selector-`uname | tr '[:upper:]' '[:lower:]'`-amd64 && chmod +x ec2-instance-selector sudo mv ec2-instance-selector /usr/local/bin/ ec2-instance-selector --version
Beispiel:
ec2-instance-selector --vcpus 4 --memory 16 --gpus 0 --current-generation -a x86_64 --deny-list '.*[ni].*'
Der vorherige Befehl zeigt eine Liste ähnlich der folgenden an. Verwenden Sie diese Instances als Teil einer Ihrer Knotengruppen.
- m4.xlarge
- m5.xlarge
- m5a.xlarge
- m5ad.xlarge
- m5d.xlarge
- t2.xlarge
- t3.xlarge
- t3a.xlarge
Hinweis: Instance-Typen vorhandener Knotengruppen können nicht mit der Amazon-EKS-API geändert werden. Es empfiehlt sich, eine neue Spot-Knotengruppe mit den gewünschten Instance-Typen zu erstellen. Geben Sie im Befehl eksctl create nodegroup Folgendes ein. Beachten Sie das neue eksctl-Flag, das angibt, dass eine Knotengruppe Spot-Instances ausführt: --spot.
$eksctl create nodegroup --cluster=<example_cluster> --spot --instance-types m5.xlarge,m4.xlarge,m5a.xlarge,m5d.xlarge,m5n.xlarge,m5ad.xlarge --region <example_region>
- Themen
- Containers
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Jahren
AWS OFFICIALAktualisiert vor 2 Jahren