Nutzercluster erstellen

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:

  1. 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

  2. Führen Sie das Skript bastion-tunnel.sh aus, um den Tunnel zu öffnen. Über den Tunnel erfolgt eine Weiterleitung zu localhost: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.

  3. Öffnen Sie ein neues Terminal und wechseln Sie in das Verzeichnis anthos-aws:

    cd anthos-aws
  4. 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.

  1. Öffnen Sie Ihr Terminal und stellen Sie gegebenenfalls eine Verbindung zum Bastion Host her.

  2. Wechseln Sie in das Verzeichnis, das Sie bei der Installation des Verwaltungsdienstes erstellt haben.

  3. 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 und AWSNodePool.

  4. Ö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.

  5. 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.

  1. Verwenden Sie anthos-gke aws clusters get-credentials, um einen kubeconfig 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.

  2. 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.

  1. Verwenden Sie anthos-gke im Verzeichnis anthos-aws, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.

    cd anthos-aws
    anthos-gke aws management get-credentials

  2. 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 Namen cluster-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.

  1. Verwenden Sie anthos-gke im Verzeichnis anthos-aws, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.

    cd anthos-aws
    anthos-gke aws management get-credentials

  2. 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:

  1. Verwenden Sie anthos-gke im Verzeichnis anthos-aws, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.

    cd anthos-aws
    anthos-gke aws management get-credentials

  2. 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:

  1. Verwenden Sie anthos-gke im Verzeichnis anthos-aws, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.

    cd anthos-aws
    anthos-gke aws management get-credentials

  2. 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