Questo documento spiega come configurare Apigee Hybrid per utilizzare le immagini di un repository di immagini container privato.
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 privato,
puoi scaricare le immagini da GCR, spingerle nel tuo repository privato e eseguire l'override
delle posizioni delle immagini predefinite nel file overrides.yaml
.
Passaggi di configurazione
Segui questi passaggi per utilizzare un repository di contenitori di immagini privato per le immagini ibride di Apigee. Per eseguire questi passaggi e utilizzare correttamente le immagini nel tuo repository privato, devi conoscere la procedura di installazione ibrida di Apigee. In uno scenario tipico, è consigliabile pianificare la configurazione del repository privato nell'ambito di una nuova installazione ibrida.
- Esegui il push delle immagini ibride Apigee 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 avere installato Docker e utilizzare il comando
docker pull
come segue. Assicurati di aggiungere il tag corretto a ogni nome dell'immagine. Ad esempio, il tag perapigee-synchronizer
è1.11.2
, come mostrato di seguito.- Visualizza un elenco aggiornato di tutte le immagini nel progetto corrente con l'opzione
--list
dell'utilitàapigee-pull-push.sh
nella directoryapigeectl/tools/
:apigee-pull-push.sh --list
- Estrai le immagini necessarie per gli spazi dei nomi
apigee-system
eapigee
con il comandodocker pull
. Ad esempio:docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.11.2
Il seguente elenco mostra le immagini necessarie per ogni spazio dei nomi:
Spazio dei nomi
apigee-system
apigee-installer
apigee-kube-rbac-proxy
apigee-operators
Il tuo spazio dei nomi
apigee
apigee-asm-ingress
apigee-asm-istiod
apigee-cassandra-backup-utility
apigee-connect-agent
apigee-diagnostics-collector
apigee-diagnostics-runner
apigee-envoy
apigee-fluent-bit
apigee-hybrid-cassandra-client
apigee-hybrid-cassandra
apigee-mart-server
apigee-prom-prometheus
apigee-prometheus-adapter
apigee-redis
apigee-runtime
apigee-stackdriver-logging-agent
apigee-stackdriver-prometheus-sidecar
apigee-synchronizer
apigee-udca
apigee-watcher
- Dopo aver estratto e taggato le immagini, esegui il push nel tuo repository privato. Consulta docker push.
L'output dovrebbe avere il seguente aspetto:
apigee: gcr.io/apigee-release/hybrid/apigee-mart-server:1.11.2 gcr.io/apigee-release/hybrid/apigee-synchronizer:1.11.2 gcr.io/apigee-release/hybrid/apigee-runtime:1.11.2 gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.11.2 gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.11.2 gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.11.2 gcr.io/apigee-release/hybrid/apigee-udca:1.11.2 gcr.io/apigee-release/hybrid/apigee-connect-agent:1.11.2 gcr.io/apigee-release/hybrid/apigee-watcher:1.11.2 gcr.io/apigee-release/hybrid/apigee-operators:1.11.2 gcr.io/apigee-release/hybrid/apigee-installer:1.11.2 gcr.io/apigee-release/hybrid/apigee-redis:1.11.2 gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.11.2 gcr.io/apigee-release/hybrid/apigee-diagnostics-runner:1.11.2 gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.11.2 third party: gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.10.5 gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.52.0 gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0 gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.18.0 gcr.io/apigee-release/hybrid/apigee-envoy:v1.27.0 gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.12.0 gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.18.7-asm.26-distroless gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.18.7-asm.26-distroless gcr.io/apigee-release/hybrid/apigee-fluent-bit:3.0.3
- Visualizza un elenco aggiornato di tutte le immagini nel progetto corrente con l'opzione
- Crea un secret di Kubernetes negli spazi dei nomi
apigee
eapigee-system
.Se questi spazi dei nomi non esistono nel tuo cluster, devi crearli prima di eseguire questo passaggio.
Per la procedura di creazione del secret, consulta Creare un secret fornendo le credenziali sulla 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)"
- 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
- Aggiorna il file
overrides.yaml
con gli URL delle immagini archiviate nel tuo repository privato. Ogni componente archiviato nel repository ha un elementoimage: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 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 quella esistente. Per ulteriori informazioni, consulta la procedura di installazione di Apigee hybrid.
Installazione di cert-manager da un repository privato
Per installare cert-manager
dal tuo repository privato, consulta
Installazione con Helm.
Per garantire la compatibilità, è importante installare la stessa versione di cert-manager
specificata nelle istruzioni di installazione di Apigee hybrid.