Utilizza un repository di immagini private

Questo documento spiega come configurare Apigee hybrid per l'utilizzo di immagini da un repository privato di immagini container.

Panoramica

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

Passaggi di configurazione

Segui questi passaggi per utilizzare un repository di container di immagini private per le immagini ibride Apigee. Per eseguire questi passaggi e utilizzare correttamente le immagini nel tuo repository privato, devi avere familiarità con la procedura di installazione ibrida Apigee. In uno scenario tipico, prevedi di configurare il repository privato nell'ambito di una nuova installazione ibrida.

  1. Esegui il push delle immagini ibride di Apigee da GCR al tuo repository privato. Per completare questo passaggio, ti consigliamo di utilizzare l'utilità apigee-push-pull.

    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 di immagine. Ad esempio, il tag per apigee-synchronizer è 1.8.8, come mostrato di seguito.

    Ecco 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.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.11.0
    docker pull gcr.io/apigee-release/hybrid/apigee-operators:1.8.8
    

    Spazio dei nomi: apigee

    docker pull gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-connect-agent:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-envoy:v1.21.0
    docker pull gcr.io/apigee-release/hybrid/apigee-fluent-bit:1.9.9
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-mart-server:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.33.5
    docker pull gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.9.1
    docker pull gcr.io/apigee-release/hybrid/apigee-redis:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-runtime:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.8.9
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0
    docker pull gcr.io/apigee-release/hybrid/apigee-synchronizer:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-udca:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-watcher:1.8.8
    

    Dopo aver eseguito il pull e il tagging delle immagini, devi eseguirne il push nel 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 cluster, devi crearli prima di eseguire questo passaggio.

    Per la procedura di creazione del secret, vedi Creare un secret fornendo le credenziali dalla 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 tuo file overrides.yaml. La creazione del file degli override è descritta nella procedura 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 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 tuo file overrides.yaml con l'URL dell'immagine del repository privato. Con l'installazione ibrida nella directory $APIGEECTL_HOME/examples/private-overrides.yaml viene fornito un file di override di esempio completo.

Ora puoi completare una nuova installazione ibrida utilizzando le immagini private o aggiornare l'installazione esistente. Consulta la procedura di installazione ibrida Apigee per ulteriori informazioni.

Installazione di cert-manager da un repository privato

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