Utilizza un repository di immagini privato

Questo documento spiega come configurare Apigee Hybrid per utilizzare le immagini di un repository di immagini container privato.

Panoramica

Tutte le immagini di Apigee hybrid runtime sono ospitate in Google Cloud Container Registry (GCR). Se per qualsiasi motivo vuoi utilizzare un repository di container di immagini privato, puoi scaricare le immagini da GCR, caricarle nel tuo repository privato ed eseguire l'override delle posizioni predefinite delle immagini nel file overrides.yaml.

Passaggi di configurazione

Segui questi passaggi per utilizzare un repository di container di immagini privato per le immagini di Apigee Hybrid. Per eseguire questi passaggi e utilizzare correttamente le immagini nel repository privato, devi conoscere la procedura di installazione di Apigee Hybrid. In uno scenario tipico, pianificheresti di configurare il repository privato nell'ambito di una nuova installazione ibrida.

  1. Esegui il push delle immagini di Apigee Hybrid da GCR al tuo repository privato. Ti consigliamo di utilizzare l'utilità apigee-push-pull per completare questo passaggio.

    Se preferisci eseguire questo passaggio manualmente, devi aver installato Docker e utilizzare il comando docker pull come segue. Assicurati di aggiungere il tag corretto a ogni nome immagine. Ad esempio, il tag per apigee-synchronizer è 1.9.4, come mostrato di seguito.

    Di seguito sono riportate le immagini per gli spazi dei nomi apigee-system e apigee:

    Spazio dei nomi: apigee-system

    docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.14.0
    docker pull gcr.io/apigee-release/hybrid/apigee-operators:1.9.4

    Spazio dei nomi: apigee

    docker pull gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-connect-agent:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-envoy:v1.25.1
    docker pull gcr.io/apigee-release/hybrid/apigee-fluent-bit:2.1.3
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-mart-server:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.39.1
    docker pull gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.10.0
    docker pull gcr.io/apigee-release/hybrid/apigee-redis:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-runtime:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.9.12-2
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0
    docker pull gcr.io/apigee-release/hybrid/apigee-synchronizer:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-udca:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-watcher:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.17.2-asm.8-distroless
    docker pull gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.17.2-asm.8-distroless

    Dopo aver estratto e taggato le immagini, devi eseguirne il push nel tuo repository privato. Vedi docker push.

  2. Crea un Secret di Kubernetes negli spazi dei nomi apigee e apigee-system.

    Se questi spazi dei nomi non esistono nel tuo cluster, devi crearli prima di eseguire questo passaggio.

    Per i passaggi per creare il secret, consulta Creare un secret fornendo le credenziali nella riga di comando. Ad esempio, per creare un secret nello spazio dei nomi apigee-system:

    kubectl create secret docker-registry SECRET_NAME -n apigee-system \
      --docker-server=YOUR_REGISTRY_SERVER \
      --docker-username=YOUR_DOCKER_USERNAME \
      --docker-email=YOUR_DOCKER_EMAIL \
      --docker-password="YOUR_DOCKER_PASSWORD)"

    Per creare un secret nello spazio dei nomi apigee:

    kubectl create secret docker-registry SECRET_NAME -n apigee \
      --docker-server=YOUR_REGISTRY_SERVER \
      --docker-username=YOUR_DOCKER_USERNAME \
      --docker-email=YOUR_DOCKER_EMAIL \
      --docker-password="YOUR_DOCKER_PASSWORD)"
  3. Aggiungi il secret al file overrides.yaml. La creazione del file di override è descritta nei passaggi di installazione ibrida. Per maggiori dettagli, consulta Configurare il cluster.
    imagePullSecrets:
      - name: SECRET_NAME
  4. Aggiorna il file overrides.yaml con gli URL delle immagini archiviate nel tuo repository privato. Ogni componente archiviato nel repository ha un elemento image:url. Utilizza questo elemento per specificare l'URL di ogni immagine del componente. Ad esempio:
    mart:
      serviceAccountPath: /installdir/hybrid-files/service-accounts/hybrid-apigee-non-prod.json
      image:
        url: my-docker.pkg.dev/hybrid-1/registry-name/apigee-mart-server

    Segui questo pattern per aggiornare ogni componente ibrido di primo livello nel file overrides.yaml con il relativo URL dell'immagine del repository privato. Un file di override di esempio completo viene fornito con l'installazione ibrida nella directory $APIGEECTL_HOME/examples/private-overrides.yaml.

Ora puoi completare una nuova installazione ibrida utilizzando le immagini private o aggiornare l'installazione esistente. Per saperne di più, consulta i passaggi di installazione di Apigee Hybrid.

Installazione di cert-manager da un repository privato

Per installare cert-manager dal tuo repository privato, vedi Installazione con Helm. È importante installare la stessa versione di cert-manager specificata nelle istruzioni di installazione di Apigee hybrid per garantire la compatibilità.