Hinweis:

Verwalten von Oracle Cloud Infrastructure Kubernetes Engine-Clustern in Argo-CD mit Workload Identity

Einführung

Argo CD ist ein deklaratives, GitOps Continuous Delivery-Tool für Kubernetes. Zum Zeitpunkt des Schreibens dieses Tutorials verfügt Argo CD über keine Oracle Cloud Infrastructure Command Line Interface-(OCI-CLI-)Funktionen, die zum Generieren des Zugriffstokens für Oracle Cloud Infrastructure Kubernetes Engine (OKE) erforderlich sind. Daher ist ein benutzerdefiniertes Argo-CD-Image erforderlich.

Hinweis: Das Basisabbild der Argo-CD, das für das benutzerdefinierte Abbild verwendet wurde, ist quay.io/argoproj/argocd:v2.14.9.

Ziele

Voraussetzungen

Aufgabe 1: Benutzerdefiniertes Image der Argo-CD in OCI Container Registry übertragen

Hinweis: Sie können Podman oder Dockingstation verwenden.

  1. Laden Sie die Datei Dockerfile hier herunter: Dockerfile.

  2. Führen Sie den folgenden Befehl aus.

    podman build --platform linux/amd64 -t argocd-oci:01 .
    

    Hinweis: Der Punkt (.) am Ende des Befehls gilt für das aktuelle Verzeichnis, in dem sich die Dockerfile befindet.

  3. Führen Sie den folgenden Befehl aus.

    podman tag argocd-oci:01 ocir.**your_region**.oci.oraclecloud.com/**your_tenancy_namespace**/**your_repository_name**/argocd-oci:01
    
  4. Führen Sie den folgenden Befehl aus.

    podman login ocir.**your_region**.oci.oraclecloud.com
    
    • Benutzer ist:
      • Wenn Identitätsdomain verwendet wird: your_tenancy_namespace/OracleIdentityCloudService/your_email.
      • Wenn die Standarddomain verwendet wird: your_tenancy_namespace/your_email.
    • Das Kennwort ist Ihr OCI-Authentifizierungstoken.
  5. Führen Sie den folgenden Befehl aus.

    podman push ocir.**your_region**.oci.oraclecloud.com/**your_tenancy_namespace**/**your_repository_name**/argocd-oci:01
    

Aufgabe 2: Installieren der Argo-CD mit dem benutzerdefinierten Abbild

Hinweis: Aktualisieren Sie nur das Image für argocd-application-controller, da dies für die Clusterauthentifizierung verantwortlich ist.

  1. Laden Sie das Argo CD-Manifest hier herunter, und installieren Sie es: argo-CD/manifests/install.yaml.

  2. Bearbeiten Sie die Datei, um das Image für argocd-application-controller zu ändern.

    • Änderung von Bild: quay.io/argoproj/argocd:latest
    • Zum Bild: ocir.**your_region**.oci.oraclecloud.com/**your_tenancy_namespace**/**your_repository_name**/argocd-oci:01
  3. Führen Sie den folgenden Befehl aus, um den argocd-Namespace zu erstellen.

    kubectl create namespace argocd
    
  4. Führen Sie den folgenden Befehl aus, um argocd bereitzustellen.

    kubectl apply -f install.yaml -n argocd
    

Aufgabe 3: Cluster zur Argo-CD-Clusterliste hinzufügen

  1. Starten Sie Argo CD.

    Hinweis: Sie können einen OCI Load Balancer verwenden, um die Argo-CD bereitzustellen. In diesem Beispiel wird stattdessen port-forward verwendet. Dazu benötigen Sie ein zusätzliches Terminal nur für die Portweiterleitung.

    1. Führen Sie im zweiten Terminal den folgenden Befehl aus.

      kubectl port-forward service/argocd-server -n argocd 63265:80
      

      Hinweis: Schließen Sie dieses Terminal nicht. Wechseln Sie zum vorherigen Terminal, da dies verwendet wird, um die Argo-CD hochzuhalten.

    2. Holen Sie sich das Argo CD Admin Passwort mit dem folgenden Befehl.

      kubectl get secret -n argocd argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
      
    3. Melden Sie sich mit dem folgenden Befehl an (Benutzer ist admin, Kennwort ist das Kennwort des vorherigen Befehls).

      argocd login 127.0.0.1:63265
      
  2. Laden Sie die Datei add_cluster.yaml herunter, und bearbeiten Sie sie hier: add_cluster.yaml:

    Hinweis: In diesem Beispiel wird unsicheres TLS verwendet. Es kann geändert werden.

    • cluster_name: Name des Clusters, das in der Argo-CD-Clusterliste angezeigt wird.
    • cluster_api_endpoint: Der Endpunkt des Clusters, das Sie der Argo-CD-Clusterliste hinzufügen möchten.
    • cluster_ocid: Die OCID des Clusters, das Sie der Argo-CD-Clusterliste hinzufügen möchten.
    • region: Die Region, in der sich das Cluster befindet.
  3. Wenden Sie die Datei an, um das Cluster mit dem folgenden Befehl in der Argo-CD-Clusterliste hinzuzufügen.

    kubectl apply -f add_cluster.yaml
    
  4. Prüfen Sie mit dem folgenden Befehl, ob das Cluster zur Argo-CD-Clusterliste hinzugefügt wurde.

    argocd cluster list
    

Aufgabe 4: Testen, indem Sie eine App von der Argo-CD im Cluster bereitstellen

  1. Laden Sie die Datei deploy_example.yaml herunter, und bearbeiten Sie sie hier: deploy_example.yaml.

    • cluster_name: Name des Clusters, das Sie die Anwendung bereitstellen möchten.
  2. Wenden Sie die Datei mit dem folgenden Befehl an, um eine einfache App für das Zielcluster bereitzustellen.

    kubectl apply -f deploy-example.yaml
    
  3. Prüfen Sie mit den folgenden Befehlen, ob die App erfolgreich bereitgestellt wurde.

    argocd app list
    argocd app sync guestbook
    

Bestätigungen

Weitere Lernressourcen

Sehen Sie sich weitere Übungen zu docs.oracle.com/learn an, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube-Kanal zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um ein Oracle Learning Explorer zu werden.

Die Produktdokumentation finden Sie im Oracle Help Center.