In diesem Schritt wird beschrieben, wie Sie apigeectl auf Ihrem Anthos GKE on AWS-Administratorcomputer herunterladen und installieren. Zu den Schritten gehören das Einrichten von Installationsverzeichnissen, das Erstellen von Google Cloud-Dienstkonten, die für die Kommunikation zwischen Hybrid-Komponenten benötigt werden, und das Erstellen von TLS-Anmeldedaten, die für das Ausführen von Apigee Hybrid erforderlich sind.
apigeectl
herunterladen und installieren
apigeectl
ist die Befehlszeile zur Installation und Verwaltung von Apigee Hybrid in einem Kubernetes-Cluster.
In den folgenden Schritten wird beschrieben, wie Sie auf apigeectl
zugreifen:
- Speichern Sie die aktuelle Versionsnummer mit dem folgenden Befehl in einer Variablen:
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1)
-
Prüfen Sie mit dem folgenden Befehl, ob die Variable mit einer Versionsnummer ausgefüllt wurde. Wenn Sie eine andere Version verwenden möchten, können Sie diese stattdessen in einer Umgebungsvariablen speichern.
echo $VERSION
-
Laden Sie das Releasepaket für Ihr Betriebssystem mit dem folgendem Befehl herunter:
Mac 64-Bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gz
Linux 64-Bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gz
Mac 32-Bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_32.tar.gz
Linux 32-Bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_32.tar.gz
- Erstellen Sie ein Verzeichnis auf Ihrem System, das als Basisverzeichnis für die Installation von Apigee Hybrid verwendet wird.
-
Extrahieren Sie den Inhalt der heruntergeladenen GZIP-Datei mit dem folgenden Befehl in das Verzeichnis, das Sie gerade erstellt haben:
tar xvzf filename.tar.gz -C path-to-base-directory
- Ändern Sie das Verzeichnis mit dem Befehl
cd
in das Basisverzeichnis. -
Die TAR-Inhalte werden standardmäßig in einem Verzeichnis gezeigt, dessen Name die Version und Plattform enthält. Beispiel:
./apigeectl_1.0.0-f7b96a8_linux_64
. Benennen Sie dieses Verzeichnis mit dem folgenden Befehl inapigeectl
um:mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
- Wechseln Sie mit dem folgenden Befehl in das Verzeichnis:
cd ./apigeectl
Dieses Verzeichnis ist das Basisverzeichnis
apigeectl
. Hier befindet sich der ausführbare Befehlapigeectl
. - Erstellen Sie mit dem folgenden Befehl eine Umgebungsvariable, die diesen Pfad des Basisverzeichnisses enthält:
export APIGEECTL_HOME=$PWD
- Prüfen Sie mit dem folgenden Befehl, ob die Variable den richtigen Pfad enthält:
echo $APIGEECTL_HOME
Projektverzeichnisstruktur einrichten
Die folgende Verzeichnisstruktur ist ein Vorschlag. Hier wird die Apigee Hybrid-Releasesoftware von Konfigurationsdateien getrennt, die Sie erstellen müssen. Mit der Variable $APIGEECTL_HOME
und symbolischen Links, die Sie erstellen, können Sie bei Bedarf jederzeit zu einer neuen Softwareversion wechseln. Siehe auch Apigee Hybrid aktualisieren.
- Prüfen Sie mit dem folgenden Befehl, ob Sie das Basisverzeichnis (Verzeichnis, in dem sich das Verzeichnis
apigeectl
befindet) geöffnet haben:cd $APIGEECTL_HOME/..
-
Erstellen Sie mit dem folgenden Befehl einen neuen Ordner mit dem Namen
hybrid-files
. Sie können dem Verzeichnis einen beliebigen Namen geben. In der Anleitung wird jedoch der Namehybrid-files
einheitlich verwendet. Später speichern Sie Konfigurationsdateien, Dienstkontoschlüssel und TLS-Zertifikate in diesem Ordner. Außerdem können Sie in diesem Ordner Ihre Konfigurationsdateien von der Softwareinstallationapigeectl
getrennt halten:mkdir hybrid-files
- Die aktuelle Verzeichnisstruktur sieht jetzt so aus:
pwd && ls
/hybrid-base-directory apigeectl hybrid-files - Wechseln Sie mit folgendem Befehl in das Verzeichnis
hybrid-files
:cd hybrid-files
- Erstellen Sie die folgenden Unterverzeichnisse im Verzeichnis
hybrid-files
, um Dateien zu organisieren, die Sie später erstellen:mkdir overrides
mkdir service-accounts
mkdir certs
-
Erstellen Sie im Verzeichnis
hybrid-files
die folgenden symbolischen Links zu$APIGEECTL_HOME
. Mit diesen Links können Sie den Befehlapigeectl
innerhalb des Verzeichnisseshybrid-files
ausführen. Nachfolgend sehen Sie ein Beispiel dafür:ln -s
$APIGEECTL_HOME
/tools toolsln -s
$APIGEECTL_HOME
/config configln -s
$APIGEECTL_HOME
/templates templatesln -s
$APIGEECTL_HOME
/plugins plugins - Prüfen Sie, ob die Symlinks ordnungsgemäß erstellt wurden. Führen Sie dazu den folgenden Befehl aus und achten Sie darauf, dass die Linkpfade auf die richtigen Speicherorte verweisen:
ls -l | grep ^l
Dienstkonten erstellen
Apigee Hybrid verwendet Google Cloud-Dienstkonten, um die Kommunikation zwischen Hybrid-Komponenten über autorisierte API-Aufrufe zu ermöglichen. In diesem Schritt verwenden Sie ein Apigee Hybrid-Befehlszeilentool, um eine Reihe von Dienstkonten zu erstellen. Das Tool lädt auch die privaten Schlüssel für das Dienstkonto herunter. Diese Schlüssel müssen Sie dann Ihrer Konfigurationsdatei für den Apigee Hybrid-Cluster hinzufügen.
Apigee stellt das Tool create-service-account
bereit, mit dem das Dienstkonto erstellt wird, die Rollen dem Dienstkonto zugewiesen werden und die Schlüsseldateien für das Dienstkonto in einem einzigen Befehl erstellt und heruntergeladen werden. Weitere Informationen zu den verknüpften Google Cloud-Konzepten finden Sie unter Dienstkonten erstellen und verwalten und Dienstkontoschlüssel erstellen und verwalten.
- Sie müssen sich in dem Verzeichnis
base_directory/hybrid-files
befinden, das Sie unter Projektverzeichnisstruktur einrichten konfiguriert haben. -
Führen Sie den folgenden Befehl im Verzeichnis
hybrid-files
aus. Mit diesem Befehl wird ein Dienstkonto für die Komponenteapigee-metrics
erstellt und der heruntergeladene Schlüssel im Verzeichnis./service-accounts
abgelegt:./tools/create-service-account apigee-metrics ./service-accounts
Wenn die folgende Eingabeaufforderung angezeigt wird, geben Sie y ein:
[INFO]: gcloud configured project ID is project_id. Press: y to proceed with creating service account in project: project_id Press: n to abort.
Wenn ein Dienstkonto zum ersten Mal mit genau dem Namen erstellt wird, der vom Tool zugewiesen wurde, wird es einfach vom Tool erstellt. Sie müssen nichts weiter tun.
Wenn jedoch die folgende Meldung und Eingabeaufforderung angezeigt wird, geben Sie y ein, um neue Schlüssel zu generieren:
[INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists. ... [INFO]: The service account might have keys associated with it. It is recommended to use existing keys. Press: y to generate new keys.(this does not de-activate existing keys) Press: n to skip generating new keys.
-
Erstellen Sie nun die übrigen Dienstkonten mit den folgenden Befehlen: Der Befehl
create-service-account
ist interaktiv und erfordert eine Antwort für jedes Konto../tools/create-service-account apigee-synchronizer ./service-accounts
./tools/create-service-account apigee-udca ./service-accounts
./tools/create-service-account apigee-mart ./service-accounts
./tools/create-service-account apigee-cassandra ./service-accounts
./tools/create-service-account apigee-logger ./service-accounts
./tools/create-service-account apigee-watcher ./service-accounts
-
Prüfen Sie mit dem folgenden Befehl, ob die Dienstkontoschlüssel erstellt wurden. Sie sind dafür verantwortlich, diese privaten Schlüssel sicher zu speichern. Den Schlüsselnamen ist der Name Ihres Google Cloud-Projekts vorangestellt.
ls ./service-accounts
Das Ergebnis sollte ungefähr so aussehen:
gcp-project-id-apigee-cassandra.json gcp-project-id-apigee-logger.json gcp-project-id-apigee-mart.json gcp-project-id-apigee-metrics.json gcp-project-id-apigee-synchronizer.json gcp-project-id-apigee-udca.json gcp-project-id-apigee-watcher.json
- Weisen Sie den
apigee-org-admin
-Dienstkonten die Rolle „Apigee-Organisationsadministrator“ zu: - Prüfen Sie, ob die E-Mail-Adresse für das Dienstkonto
apigee-org-admin
dem Musterservice_account@PROJECT_ID.iam.gserviceaccount.com
entspricht. Nachfolgend sehen Sie ein Beispiel:gcloud iam service-accounts list --filter "apigee-org-admin"
- Weisen Sie die Rolle mit dem folgenden Befehl zu:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com --role roles/apigee.admin
Dabei ist PROJECT_ID Ihr Google Cloud-Projekt. Wenn die E-Mail-Adressen Ihres Dienstkontos von diesem Muster abweichen, ersetzen Sie sie entsprechend.
Die Ausgabe sollte eine Liste aller Dienstkonten und deren Rollen enthalten, darunter:
- members: - serviceAccount:apigee-org-admin@hybrid-example-2.iam.gserviceaccount.com role: roles/apigee.admin
TLS-Zertifikate erstellen
Sie müssen TLS-Zertifikate für das Laufzeit-Ingress-Gateway in Ihrer Apigee Hybrid-Konfiguration bereitstellen. Bei dieser Kurzanleitung (eine Nicht-Produktions-Testinstallation) akzeptiert das Laufzeitgateway selbst signierte Anmeldedaten. In den folgenden Schritten wird openssl verwendet, um die selbst signierten Anmeldedaten zu generieren.
In diesem Schritt erstellen Sie die TLS-Anmeldedatendateien und fügen sie dem Verzeichnis base_directory/hybrid-files/certs
hinzu.
In Schritt 4: Cluster konfigurieren fügen Sie der Clusterkonfigurationsdatei die Dateipfade hinzu.
- Sie müssen sich in dem Verzeichnis
base_directory/hybrid-files
befinden, das Sie unter Projektverzeichnisstruktur einrichten konfiguriert haben. - Achten Sie darauf, dass Ihr Domainname in der Umgebungsvariablen
DOMAIN
gespeichert wird. Verwenden Sie dazu den folgenden Befehl:echo $DOMAIN
- Führen Sie den folgenden Befehl im Verzeichnis
hybrid-files
aus:openssl req -nodes -new -x509 -keyout ./certs/keystore.key -out \ ./certs/keystore.pem -subj '/CN='$DOMAIN'' -days 3650
Dabei ist
DOMAIN
die Domain, die Sie in Schritt 5: DNS konfigurieren der Kurzanleitung für Ihre Hybrid-Installation reserviert haben.Mit diesem Befehl wird ein selbst signiertes Zertifikat-/Schlüsselpaar erstellt, das Sie für die Schnellinstallation verwenden können.
- Prüfen Sie mit dem folgenden Befehl, ob sich die Dateien im Verzeichnis
./certs
befinden:ls ./certs
keystore.pem keystore.keyDabei ist
keystore.pem
die selbst signierte TLS-Zertifikatsdatei undkeystore.key
die Schlüsseldatei.
Sie haben nun eine Basis, in der Sie Apigee Hybrid in Ihrem Kubernetes-Cluster konfigurieren, bereitstellen und verwalten können. Als Nächstes erstellen Sie eine Datei, mit der Kubernetes die Hybrid-Laufzeitkomponenten im Cluster bereitstellt.
1 2 3 (WEITER) Schritt 4: Cluster konfigurieren 5