Anthos in der Infrastruktur im Wartemodus ausführen

Diese Seite richtet sich an Infrastrukturbetreiber.

Im Wartemodus ausgeführte Anthos ist eine Version von Anthos, die vollständig in einer Umgebung mit Luftlücken vom Internet isoliert ausgeführt werden kann. Sie können Anthos im Wartemodus verwenden, um stark regulierte Arbeitslasten lokal auszuführen. Gleichzeitig profitieren Sie von vielen Vorteilen einer cloudnativen Infrastruktur.

Einführung

Die Architektur von Anthos, die im Wartemodus ausgeführt wird, ähnelt der Architektur der verbundenen Version von Anthos on Bare Metal: Es gibt einen Administrator-Cluster, den Sie zum Erstellen und Verwalten von Nutzer-Cluster verwenden. Ihre Arbeitslasten werden auf den Nutzerclustern ausgeführt. Sie haben auch eine Administrator-Workstation, eine einzelne Maschine mit den Tools, die zum Installieren und Verwalten des Anthos erforderlich sind, das im Deployment im Wartemodus ausgeführt wird.

Im Vergleich zur verbundenen Version von Anthos auf Bare-Metal enthält Anthos im Wartemodus drei zusätzliche Komponenten:

  • Eine optionale Container Registry, die auf der Administrator-Workstation ausgeführt wird, um alle Anthos-Container-Images zu speichern (erforderlich in einem Szenario, in dem Sie keinen Zugriff auf eine Container Registry haben).
  • Ein actl-Befehlszeilentool, mit dem Sie Anthos installieren und im Wartemodus ausführen sowie andere Verwaltungsaufgaben ausführen können.
  • Anthos Management Center, mit dem Sie die Autorisierung und Authentifizierung, die Beobachtbarkeit und die Verwaltung von Multi-Cluster-Anthos-Features verwalten können. Management Center enthält eine webbasierte Console, die auf dem Administratorcluster ausgeführt wird. Über die Benutzeroberfläche der Management Center Console können Sie alle Ressourcen verwalten, aus denen die Anthos-Bereitstellung besteht, einschließlich Maschinen, Adresspools und Nutzerclustern. Sie können die Management Center Console auch verwenden, um die Anthos-Features zu verwalten und Ihre Arbeitslasten zu überwachen.

Diagramm zur Beschreibung der Anthos-Architektur

Abbildung: Architekturbild für Anthos.

Umgebung vorbereiten

Zugriff auf den Produktrelease erhalten, die neueste Version herunterladen und Abhängigkeiten installieren

Hinweis

Bevor Sie die Anleitung auf dieser Seite durcharbeiten, müssen Sie dafür sorgen, dass die technischen Anforderungen für den Anthos-Wartemodus erfüllt sind.

Zugriff auf Anthos im Wartemodus erhalten

Google muss Ihnen Zugriff auf Anthos gewähren, das in Releases im Wartemodus ausgeführt wird. Teilen Sie Ihrem Ansprechpartner bei Google eine E-Mail-Adresse für jeden Tester mit, damit wir ihm Zugriff auf das Download-Repository gewähren können. Diese E-Mail-Adressen müssen Google-Konten sein.

Wenn Ihr Ansprechpartner bei Google bestätigt hat, dass Sie Zugriff auf die im Rahmen des Anthos-Wartemodus verteilten Releases haben, prüfen Sie, ob Sie die Berechtigungen zum Herunterladen der Releases des Anthos-Wartemodus haben. Führen Sie dazu den folgenden Befehl aus:

gsutil ls gs://anthos-private-mode-release/

Wenn eine Fehlermeldung angezeigt wird, prüfen Sie, ob gsutil dasselbe Google-Konto verwendet, das Sie Ihrem Google-Ansprechpartner bereitgestellt haben. Führen Sie dazu den Befehl gcloud auth list aus.

Alternativ können Sie den neuesten Release-Bucket aufrufen, um zu prüfen, ob Sie die richtigen Berechtigungen haben. Sie müssen mit dem Google-Konto angemeldet sein, das Sie zuvor angegeben haben.

Wenn Sie Probleme beim Zugriff auf die Releases des Anthos-Wartemodus haben, wenden Sie sich an Ihren Ansprechpartner bei Google.

Anthos im Wartemodus herunterladen

In diesem Abschnitt laden Sie den Release für den Anthos-Wartemodus herunter, der in mehreren Dateien mit mehreren Gigabyte enthalten ist. Je nach Internetverbindung kann das Herunterladen länger dauern.

Anthos im Wartemodus herunterladen

Führen Sie auf Ihrer Administrator-Workstation die folgenden Befehle aus:

# Login with the account granted access to Anthos running in disconnected mode
gcloud auth login

# Download the script which helps download all the latest components
export VERSION=1.11.3-gke.0

# Please use official 'INSTALLER_DIGEST' value from https://cloud.google.com/anthos/private-mode/docs/1.11/installing/infrastructure#download
export INSTALLER_DIGEST=1b8b1a8a596c0cbadd8aa2c0fc1bb2217d2f22d3d1f27f19b76e3f158e394e54
export INSTALLER=get-anthos-private-mode-$VERSION.sh
gsutil cp gs://anthos-private-mode-release/$VERSION/$INSTALLER .
if [[ -n "$INSTALLER_DIGEST" ]]; then echo "$INSTALLER_DIGEST $INSTALLER" | sha256sum -c; fi && chmod +x $INSTALLER && ./$INSTALLER

# If you are working on a workstation shared with other users,
# we recommend that you revoke your credentials after downloading the release.
gcloud auth revoke YOUR_EMAIL_ADDRESS

Verbleibende Abhängigkeiten installieren

Nachdem der Download des Anthos im Wartemodus abgeschlossen ist, führen Sie die folgenden Befehle aus:

cd anthos-baremetal-private-mode

# Add actl command line tool and tools directory to the PATH
export PATH=$PWD/bin:$PATH

# Download Harbor offline installer
curl -SL \
  https://github.com/goharbor/harbor/releases/download/v2.2.0/harbor-offline-installer-v2.2.0.tgz \
  --output "local-registry/harbor-offline-installer.tgz"

# Install docker-compose
curl -SL \
  https://github.com/docker/compose/releases/download/1.28.5/docker-compose-Linux-x86_64 \
  --output "local-registry/docker-compose"

Das sind die einzigen beiden Schritte des Vorgangs, die eine Internetverbindung erfordern. Wenn Sie den privaten Anthos-Wartemodus in einer Umgebung installieren, die vollständig vom Internet isoliert ist, haben Sie folgende Möglichkeiten:

  • Verbinden Sie zuerst Ihre Administrator-Workstation mit dem Internet und laden Sie den Release wie oben beschrieben herunter. Trennen Sie dann Ihre Workstation vom Internet und stellen Sie eine Verbindung zur Umgebung mit Luftspalt her.
  • Laden Sie den Release von einer mit dem Internet verbundenen Entwickler-Workstation herunter, kopieren Sie ihn auf ein tragbares Speichergerät und verschieben Sie dieses tragbare Speichergerät auf Ihre Administrator-Workstation mit Luftspalt.

Sie können den Inhalt des Anthos ansehen, das im Releasemodus im Wartemodus ausgeführt wird:

./anthos-baremetal-private-mode
├── actl-workspace
│   └── admin
│       └── admin.yaml
├── baremetal
│   ├── images
│   └── package-spec.yaml
├── bin
│   ├── actl
│   ├── istioctl
│   └── nomos
├── local-registry
│   ├── cleanup.sh
│   ├── docker-compose
│   ├── generate-certs.sh
│   ├── harbor-offline-installer.tgz
│   └── install.sh
├── managementcenter
│   ├── images
│   └── management-center.yaml
├── services
│   ├── anthos-config-management
│   ├── anthos-service-mesh
│   └── images
├── third_party
└── updatecenter
    └── images
  • Das Verzeichnis local-registry enthält die Ressourcen zum Einrichten einer lokalen Container Registry.
  • Andere Verzeichnisse wie managementcenter, services und baremetal enthalten alles, was zur Installation des Administratorclusters und von Anthos Management Center erforderlich ist.

Optional: Automatische actl-Shell-Vervollständigung aktivieren

Das actl-Befehlszeilentool unterstützt die automatische Shell-Vervollständigung für Bash, Zsh und Fish. Folgen Sie der Anleitung in actl help completion, um die Einrichtung abzuschließen. Beispiel für Ubuntu/Debian, Bash:

# One time setup: install bash-completion
sudo apt update && sudo apt install bash-completion

# In ~/.bashrc
source /etc/profile.d/bash_completion.sh
source <(actl completion bash)

Container Registry einrichten

Im Anthos-Wartemodus werden die Anthos-Container-Images in einer lokalen Container Registry gespeichert. Sie können entweder Ihre eigene vorhandene Container-Registry verwenden oder die Anthos-Registry im gebündelten Modus ausführen.

Exportieren Sie die folgenden Umgebungsvariablen:

export REGISTRY_HOST=REGISTRY_HOST
export REGISTRY_PASSWORD=REGISTRY_PASSWORD

# By default, a public project called 'library' is created,
# and you can also create other public or private projects with the container registry portal.
export PRIVATE_REGISTRY=${REGISTRY_HOST}/library

Dabei gilt:

  • REGISTRY_HOST ist Ihre Registry-IP-Adresse. Wenn Sie die Container-Registry des Anthos-Wartemodus auf der Administrator-Workstation installieren und verwenden möchten, verwenden Sie hier die IP-Adresse Ihrer Administrator-Workstation.

  • REGISTRY_PASSWORD ist der Wert, den Sie für Ihr Registry-Passwort festgelegt haben.

Wenn Sie eine eigene Container Registry verwenden möchten, fahren Sie mit dem Abschnitt Images in Container Registry hochladen fort.

Anthos einrichten, das im Container-Registry im Wartemodus ausgeführt wird

In diesem Abschnitt richten Sie eine private Container Registry auf der Administrator-Workstation ein. Führen Sie alle unten genannten Befehle auf der Administrator-Workstation aus.

  1. Wenn Sie keine eigene private Container Registry haben, installieren Sie Anthos, das in der Container Registry im Wartemodus ausgeführt wird.

    cd ~/anthos-baremetal-private-mode
    
    # Move it to a path under $PATH
    chmod a+x local-registry/docker-compose
    sudo cp local-registry/docker-compose /usr/bin
    
    # Install local registry
    ./local-registry/install.sh
    
  2. Melden Sie sich in der Registry an, um zu prüfen, ob Sie Zugriff haben. Wenn Sie eine Fehlermeldung erhalten, müssen Sie möglicherweise einige Sekunden warten.

    docker login ${REGISTRY_HOST} -u admin -p ${REGISTRY_PASSWORD}
    

Hinweise:

  • Die im nicht verbundenen Modus ausgeführte Container Registry wird nur zur Installation von Anthos verwendet, das im Wartemodus ausgeführt wird. Der Produktionsdienst ist noch nicht einsatzbereit.
  • Das öffentliche Standard-Registry-Projekt ist library. Es kann standardmäßig verwendet werden. Sie haben aber auch die Möglichkeit, sich anzumelden und ein neues Projekt zu erstellen.
  • Die Container-Registry ist nach dem Start des Dienstes unter https://REGISTRY_HOST/ verfügbar. Die Anmeldedaten sind der Nutzername admin und REGISTRY_PASSWORD als Passwort.
  • Die Anmeldedaten werden unverschlüsselt in /home/<USER>/.docker/config.json gespeichert.

Images in Container Registry hochladen

In diesem Abschnitt laden Sie die mit einem Container ausgeführten Images in Anthos in Ihre Container Registry hoch.

Bereiten Sie die in Anthos ausgeführten Container-Images im Container vor und laden Sie sie in Ihre Container Registry hoch. Wenn Sie dazu aufgefordert werden, wählen Sie die Option Use that credential aus oder geben Sie die neuen Anmeldedaten ein.

actl images push --private-registry=${PRIVATE_REGISTRY} \
    --images ~/anthos-baremetal-private-mode

Hinweis: Wenn Sie auf Ihrer Workstation einen HTTP-Proxy verwenden, müssen Sie möglicherweise die folgenden Umgebungsvariablen deaktivieren, damit der Befehl actl images push funktioniert:

unset http_proxy
unset https_proxy
unset HTTP_PROXY
unset HTTPS_PROXY

Optional: Helm-Diagramme in die Container Registry hochladen

In diesem Abschnitt laden Sie die optionalen Anthos-Helm-Diagramme im Wartemodus in Ihre Container Registry hoch. Anthos im Wartemodus, Version 1.10, enthält gebündelte Helm-Diagramme für drei Google Cloud Marketplace-Lösungen: PostgreSQL, Redis und Kafka. Diese beliebten Open-Source-Software-Stacks wurden von Google verpackt und für die Ausführung in nicht verbundenen Umgebungen entwickelt.

  1. Bereiten Sie die in Anthos ausgeführten Helm-Diagramme im Wartemodus vor und laden Sie sie in Ihre Container Registry hoch. Wenn Sie dazu aufgefordert werden, wählen Sie die Option Use that credential aus oder geben Sie die neuen Anmeldedaten ein.

    actl packages push --private-registry=${PRIVATE_REGISTRY} \
      ~/anthos-baremetal-private-mode/services/third_party-postgresql/package-spec.yaml
    actl packages push --private-registry=${PRIVATE_REGISTRY} \
      ~/anthos-baremetal-private-mode/services/third_party-redis-ha/package-spec.yaml
    actl packages push --private-registry=${PRIVATE_REGISTRY} \
      ~/anthos-baremetal-private-mode/services/third_party-kafka/package-spec.yaml
    
  2. Aktivieren Sie die experimentelle OCI-Unterstützung von Helm, um Anthos in getrennten Helm-Diagrammen aus Ihrer Container-Registry abzurufen:

    export HELM_EXPERIMENTAL_OCI=1
    
  3. Wenn Ihre private Registry ein selbst signiertes Zertifikat verwendet, müssen Sie auch die Zertifikate der Zertifizierungsstelle auf Ihrem System aktualisieren. Weitere Informationen finden Sie unter Helm-Problem.

    sudo cp local-registry/ca.crt /usr/local/share/ca-certificates/
    sudo update-ca-certificates
    
  4. Melden Sie sich in der Registry an, um zu prüfen, ob Sie Zugriff haben:

    helm registry login ${REGISTRY_HOST} -u admin -p ${REGISTRY_PASSWORD}
    
  5. Rufen Sie die Helm-Diagramme des Anthos-Wartemodus aus Ihrer Container-Registry ab und exportieren Sie sie:

    helm chart pull ${PRIVATE_REGISTRY}/<CHART>:<TAG>
    helm chart export ${PRIVATE_REGISTRY}/<CHART>:<TAG> .
    

Weitere Informationen