Ein Nutzercluster von Anthos-Cluster auf AWS (GKE auf AWS) hostet Ihre Kubernetes-Arbeitslasten. In diesem Artikel wird gezeigt, wie Sie einen einfachen Nutzercluster erstellen. Weitere Informationen zur Konfiguration eines Nutzerclusters finden Sie unter Benutzerdefinierten Nutzercluster erstellen.
Sie stellen einen Anthos-Cluster auf einem AWS-Nutzercluster mit den benutzerdefinierten Ressourcen AWSCluster
und AWSNodePool
bereit.
Hinweis
Zum Erstellen eines Nutzerclusters müssen Sie zuerst einen Verwaltungsdienst installieren.
Führen Sie die folgenden Schritte aus, um eine Verbindung zu Ihren Anthos-Clustern auf AWS-Ressourcen herzustellen. Wählen Sie aus, ob Sie eine bestehende AWS-VPC (oder eine direkte Verbindung zu Ihrer VPC) verwenden oder beim Erstellen Ihres Verwaltungsdienstes eine dedizierte VPC angelegt haben.
Vorhandene VPC
Wenn Sie eine direkte Verbindung oder eine VPN-Verbindung zu einer vorhandenen VPC verwenden, lassen Sie die Zeile env HTTP_PROXY=http://localhost:8118
in den Befehlen in diesem Thema weg.
Dedizierte VPC
Wenn Sie einen Verwaltungsdienst in einer dedizierten VPC erstellen, enthält Anthos-Cluster auf AWS einen Bastion-Host in einem öffentlichen Subnetz.
So stellen Sie eine Verbindung zu Ihrem Verwaltungsdienst her:
Wechseln Sie in das Verzeichnis mit Ihrer Anthos-Cluster auf AWS-Konfiguration. Sie haben dieses Verzeichnis bei der Installation des Verwaltungsdienstes erstellt.
cd anthos-aws
Führen Sie das Skript
bastion-tunnel.sh
aus, um den Tunnel zu öffnen. Über den Tunnel erfolgt eine Weiterleitung zulocalhost:8118
.Führen Sie den folgenden Befehl aus, um einen Tunnel zum Bastion Host zu öffnen:
./bastion-tunnel.sh -N
In diesem Fenster werden Nachrichten aus dem SSH-Tunnel angezeigt. Wenn Sie bereit sind, die Verbindung zu trennen, beenden Sie den Vorgang mit Strg+C oder schließen Sie das Fenster.
Öffnen Sie ein neues Terminal und wechseln Sie in das Verzeichnis
anthos-aws
:cd anthos-aws
Prüfen Sie, ob Sie mit
kubectl
eine Verbindung zum Cluster herstellen können.env HTTPS_PROXY=http://localhost:8118 \ kubectl cluster-info
Die Ausgabe enthält die URL für den API-Server des Verwaltungsdienstes.
Größe der Instanz der Steuerungsebene auswählen
Anthos-Cluster auf AWS unterstützen keine Größenanpassung der Steuerungsebeneninstanzen. Sie müssen deshalb vor dem Erstellen Ihres Nutzerclusters die Instanzgröße der Steuerungsebenen auswählen. Die Größe der Steuerungsebene hängt von der Anzahl der Knoten im Cluster ab. Die folgende Tabelle enthält die empfohlenen Instanzgrößen für die Steuerungsebene bei verschiedenen Clustergrößen.
Clustergröße (Knoten) | Instanztyp der Steuerungsebene |
---|---|
1–10 | m5.large |
11–100 | m5.xlarge |
101–200 | m5.2xlarge |
Nutzercluster erstellen
In diesem Beispiel verwenden Sie terraform
, um eine Konfiguration zum Erstellen eines einfachen Clusters zu generieren. Anschließend übernehmen Sie die Konfiguration mit kubectl apply
.
Öffnen Sie Ihr Terminal und stellen Sie gegebenenfalls eine Verbindung zum Bastion Host her.
Wechseln Sie in das Verzeichnis, das Sie bei der Installation des Verwaltungsdienstes erstellt haben.
Verwenden Sie Terraform, um ein Manifest zu generieren, das einen Beispielcluster konfiguriert, und speichern Sie es in einer YAML-Datei. Wählen Sie Ihre Terraform-Version aus und führen Sie dann die folgenden Befehle aus:
Terraform 0.12, 0.13
terraform output cluster_example > cluster-0.yaml
Terraform 0.14.3+
terraform output -raw cluster_example > cluster-0.yaml
Weitere Informationen zum Inhalt dieser Datei finden Sie in der Dokumentation zu
AWSCluster
undAWSNodePool
.Öffnen Sie die Datei in einem Texteditor und bearbeiten Sie sie gegebenenfalls. Standardmäßig erstellt Anthos-Cluster in AWS Knotenpools in jeder Verfügbarkeitszone, die in
anthos-gke.yaml
angegeben ist. Sie können die Größe und Anzahl der Knotenpools an den gewünschten Cluster anpassen. Außerdem haben Sie die Möglichkeit, weitere Änderungen an Ihrer Konfiguration vorzunehmen. Sie können beispielsweise die Instanztypen Ihrer Anthos-Cluster auf AWS-Knoten ändern. Sie können auch Logging und Monitoring auf den Knoten der Steuerungsebene aktivieren.Wenden Sie die Datei auf Ihren Verwaltungsdienst an.
env HTTPS_PROXY=http://localhost:8118 \ kubectl apply -f cluster-0.yaml
kubeconfig erstellen
Während Ihr Nutzercluster gestartet wird, können Sie einen kubeconfig
-Kontext für Ihren neuen Nutzercluster erstellen. Sie verwenden den Kontext, um sich bei einem Nutzer- oder Verwaltungscluster zu authentifizieren.
Verwenden Sie
anthos-gke aws clusters get-credentials
, um einenkubeconfig
für Ihren Nutzercluster in~/.kube/config
zu generieren.env HTTPS_PROXY=http://localhost:8118 \ anthos-gke aws clusters get-credentials CLUSTER_NAME
Ersetzen Sie dabei CLUSTER_NAME durch den Namen Ihres Clusters. Beispiel:
cluster-0
.Verwenden Sie
kubectl
, um sich beim neuen Nutzercluster zu authentifizieren.env HTTPS_PROXY=http://localhost:8118 \ kubectl cluster-info
Wenn Ihr Cluster bereit ist, enthält die Ausgabe die URLs für Kubernetes-Komponenten in Ihrem Cluster.
Status des Clusters ansehen
Der Verwaltungsdienst stellt AWS-Ressourcen bereit, wenn Sie AWSCluster
oder AWSNodePool
anwenden.
Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Verwenden Sie
kubectl get AWSClusters
, um Ihre Cluster aufzulisten.env HTTPS_PROXY=http://localhost:8118 \ kubectl get AWSClusters
Die Ausgabe enthält den Namen, den Status, das Alter, die Version und den Endpunkt jedes Clusters.
Die folgende Ausgabe enthält beispielsweise nur einen
AWSCluster
mit dem Namencluster-0
:NAME STATE AGE VERSION ENDPOINT cluster-0 Provisioning 2m41s 1.25.5-gke.2100 gke-xyz.elb.us-east-1.amazonaws.com
Cluster-Ereignisse abrufen
Verwenden Sie kubectl get events
, um aktuelle Kubernetes-Ereignisse aus Ihrem Nutzercluster aufzurufen.
Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Führen Sie
kubectl get events
aus.env HTTPS_PROXY=http://localhost:8118 \ kubectl get events
Die Ausgabe enthält Informationen, Warnungen und Fehler in Verbindung mit Ihrem Verwaltungsdienst.
Nutzercluster löschen
So löschen Sie einen Nutzercluster:
Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Löschen Sie mit
kubectl delete
das Manifest, das Ihre Nutzercluster enthält.env HTTPS_PROXY=http://localhost:8118 \ kubectl delete -f CLUSTER_FILE
Ersetzen Sie CLUSTER_FILE durch den Namen des Manifests, das Ihre AWS-Cluster- und AWSNodePool-Objekte enthält. Beispiel:
cluster-0.yaml
.
Alle Nutzercluster löschen
Führen Sie die folgenden Schritte aus, um alle Nutzercluster zu löschen:
Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Löschen Sie mit
kubectl delete
Ihre AWSNodePools und AWSCluster aus Ihrem Verwaltungsdienst.env HTTPS_PROXY=http://localhost:8118 \ kubectl delete AWSNodePool --all env HTTPS_PROXY=http://localhost:8118 \ kubectl delete AWSCluster --all
Weitere Informationen finden Sie unter Anthos-Cluster auf AWS deinstallieren.
Nächste Schritte
Starten Sie Ihre erste Arbeitslast in Anthos-Cluster auf AWS.
Konfigurieren Sie Ihren Identitätsanbieter mit dem Anthos Identity-Dienst.
Stellen Sie eine Verbindung zu Ihrem Nutzercluster über die Cloud Console her.
Benutzerdefinierten Nutzercluster mit anderen Einstellungen erstellen
Richten Sie ein AWS-Netzwerk für das Load-Balancing Ihrer Arbeitslasten ein.
Lesen Sie die Spezifikationen für die benutzerdefinierten Ressourcendefinitionen für AWSCluster und AWSNodePools.