Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Installation des Adapters

Wenn Sie versuchen, den Adapter neu zu installieren, können Sie bis zu einer Stunde lang fehlerhafte Meldungen über Nichteinhaltung erhalten.

Rancher vs. Adapter-Kompatibilitätsmatrix

Wichtig:

Verschiedene Versionen des CSP-Adapters basieren auf Funktionen, die in bestimmten Versionen von Rancher zu finden sind. Um den Adapter erfolgreich bereitzustellen und auszuführen, müssen Sie sicherstellen, dass seine Version mit der erforderlichen Version von Rancher übereinstimmt.

Rancher-Version Adapterversion

v2.14.1

v109.0.0+up9.0.0

v2.13.3

v108.0.0+up8.0.0

v2.13.2

v108.0.0+up8.0.0

v2.13.1

v108.0.0+up8.0.0

v2.13.0

v108.0.0+up8.0.0

1. Zugriff auf den lokalen Cluster erhalten

Nur Administratorbenutzer sollten Zugriff auf den lokalen Cluster haben. Da der CSP-Adapter im lokalen Cluster installiert werden muss, muss diese Installation von einem Administratorbenutzer durchgeführt werden.

Zuerst klicken Sie auf den lokalen Cluster und laden ein kubeconfig-Token herunter. Sie können dann Ihre CLI mit dem folgenden Befehl so konfigurieren, dass dieses neue Token verwendet wird, wobei Sie $TOKEN_PATH durch den Pfad auf Ihrem Dateisystem zum heruntergeladenen Token ersetzen:

export KUBECONFIG=$TOKEN_PATH

2. Erstellen Sie den Namespace für den Adapter

Erstellen Sie den Namespace, in dem der Adapter installiert wird.

kubectl create ns cattle-csp-adapter-system

3. Erstellen Sie Zertifikat-Geheimnisse

Der Adapter benötigt Zugriff auf die Root-CA, die Rancher verwendet, um mit dem Rancher-Server zu kommunizieren. Sie können mehr darüber lesen, welche Zertifikatsoptionen Rancher unterstützt, auf der Chart-Optionen-Seite.

Wenn Ihre Rancher-Installation ein von einer anerkannten Zertifizierungsstelle wie Let’s Encrypt signiertes Zertifikat verwendet, können Sie sicher zu Schritt 4 überspringen.

Wenn Ihre Rancher-Installation jedoch ein benutzerdefiniertes Zertifikat verwendet, wie ein von Rancher generiertes Zertifikat oder eines, das von einer privaten Zertifizierungsstelle signiert wurde, müssen Sie das Zertifikat für diese Zertifizierungsstelle im PEM-codierten Format bereitstellen, damit der Adapter mit Rancher kommunizieren kann.

Zuerst holen Sie das Zertifikat, das Rancher verwendet, und speichern es in einer Datei mit dem Namen ca-additional.pem. Wenn Sie die von Rancher generierten Zertifikate verwenden, kann dies mit dem folgenden Befehl erfolgen:

kubectl get secret tls-rancher -n cattle-system -o jsonpath="{.data.tls\.crt}" | base64 -d  >> ca-additional.pem

Erstellen Sie dann ein Geheimnis, das dieses Zertifikat verwendet:

kubectl -n cattle-csp-adapter-system create secret generic tls-ca-additional --from-file=ca-additional.pem
Ändern Sie nicht die Namen der Datei oder des erstellten Geheimnisses. Änderungen an diesen Werten können zu Fehlern führen, wenn der Adapter ausgeführt wird.

4. Installieren Sie das Chart

Fügen Sie zuerst das rancher/charts Repository mit dem folgenden Befehl hinzu:

helm repo add rancher-charts https://charts.rancher.io

Installieren Sie als Nächstes den CSP-Adapter. Sie müssen mehrere Werte angeben, einschließlich der Kontonummer und des Namens der im Voraus erstellten Rolle.

Stellen Sie sicher, dass Sie die Version des CSP-Adapters verwenden, die mit der Version von Rancher übereinstimmt, die Sie ausführen, wie oben definiert.

Ersetzen Sie in den folgenden Anweisungen $MY_ACC_NUM durch Ihre AWS-Kontonummer und $MY_ROLE_NAME durch den Namen der im Voraus erstellten Rolle. Darüber hinaus ersetzen Sie $CSP_ADAPTER_VERSION durch die Version, die mit Ihrer Rancher-Version in der Versionsmatrix übereinstimmt.

Wenn Sie Shell-Variablen verwenden, geben Sie keine Anführungszeichen an. Zum Beispiel funktioniert MY_ACC_NUM=123456789012, aber MY_ACC_NUM="123456789012" schlägt fehl.
Konten, die die AWS Marketplace-Liste für die EU und das Vereinigte Königreich verwenden, müssen eine zusätzliche --set image.repository=rancher/rancher-csp-adapter-eu Option angeben. Um zu sehen, ob Ihr Konto diese Option beim Installieren des Adapters benötigt, siehe die Nutzungsanweisungen der Marketplace-Liste.
  • Let’s Encrypt/Öffentliche Zertifizierungsstelle

  • Private Zertifizierungsstelle/Von Rancher generierte Zertifikate

  helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter --namespace cattle-csp-adapter-system --set aws.enabled=true --set aws.roleName=$MY_ROLE_NAME --set-string aws.accountNumber=$MY_ACC_NUM --version $CSP_ADAPTER_VERSION

Alternativ können Sie ein values.yaml verwenden und Optionen wie unten angeben:

  aws:
    enabled: true
    accountNumber: "$MY_ACC_NUM"
    roleName: $MY_ROLE_NAME
Die Kontonummer muss im String-Format angegeben werden, wie oben, oder die Installation schlägt fehl.

Sie können dann den Adapter mit dem folgenden Befehl installieren:

  helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter -f values.yaml --version $CSP_ADAPTER_VERSION
  helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter --namespace cattle-csp-adapter-system --set aws.enabled=true --set aws.roleName=$MY_ROLE_NAME --set-string aws.accountNumber=$MY_ACC_NUM --set additionalTrustedCAs=true --version $CSP_ADAPTER_VERSION

Alternativ können Sie ein values.yaml verwenden und Optionen wie unten angeben:

  aws:
    enabled: true
    accountNumber: "$MY_ACC_NUM"
    roleName: $MY_ROLE_NAME
  additionalTrustedCAs: true
Die Kontonummer muss im String-Format angegeben werden, wie oben, oder die Installation schlägt fehl.

Sie können dann den Adapter mit dem folgenden Befehl installieren:

  helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter -f values.yaml --version $CSP_ADAPTER_VERSION

5. Verwaltung von Zertifikat-Updates

Wenn Sie ein Secret erstellen mussten, das ein benutzerdefiniertes Zertifikat in Schritt 3 speichert, müssen Sie dieses Secret im Laufe der Zeit aktualisieren, wenn das Zertifikat erneuert wird.

Zuerst löschen Sie das ursprüngliche Secret im Namespace cattle-csp-adapter-system mit dem folgenden Befehl:

kubectl delete secret tls-ca-additional -n cattle-csp-adapter-system

Anschließend folgen Sie den ursprünglichen Installationsschritten in Schritt 3, um den Inhalt des Secrets mit dem aktualisierten Wert zu ersetzen.

Schließlich starten Sie die Implementierung des rancher-csp-adapter neu, um sicherzustellen, dass der aktualisierte Wert dem Adapter zur Verfügung steht.

kubectl rollout restart deploy rancher-csp-adapter -n cattle-csp-adapter-system
Methoden wie der Trust Operator von cert-manager ermöglichen es Ihnen, einige dieser Aufgaben zu automatisieren. Obwohl diese Methoden nicht offiziell unterstützt werden, können sie die Häufigkeit reduzieren, mit der Sie Zertifikate manuell rotieren müssen.