Specificare le sostituzioni della configurazione
Il programma di installazione ibrido Apigee utilizza i valori predefiniti per molte impostazioni; tuttavia, esistono alcune impostazioni che non sono predefinite. È necessario fornire valori per queste impostazioni, come spiegato di seguito.
- Assicurati di essere nella directory
hybrid-base-directory/hybrid-files/overrides/
.cd hybrid-base-directory/hybrid-files/overrides
- Crea un nuovo file denominato
overrides.yaml
nel tuo editor di testo preferito. Ad esempio:vi overrides.yaml
overrides.yaml
fornisce la configurazione per la tua installazione unica di Apigee lavoro ibrido. Il file delle sostituzioni in questo passaggio fornisce una configurazione di base per un'installazione con runtime ibrido per ambienti di piccole dimensioni, adatta alla tua prima installazione. - In
overrides.yaml
, aggiungi i valori delle proprietà obbligatori, mostrati di seguito. Di seguito viene fornita anche una descrizione dettagliata di ogni proprietà:Syntax
Assicurati che la struttura e la sintassi del file
overrides.yaml
abbiano la seguente struttura. I valori in red, bold italics sono valori di proprietà che devi fornire. Sono descritti nella tabella seguente.Esistono differenze tra le diverse piattaforme per l'area geografica del progetto Google Cloud e l'area geografica del cluster Kubernetes. Scegli la piattaforma in cui vuoi installare Apigee ibrido.
gcp: region: analytics-region projectID: gcp-project-id k8sCluster: name: cluster-name region: cluster-location # Must be the closest Google Cloud region to your cluster. org: org-name instanceID: "unique-instance-identifier" cassandra: hostNetwork: false # Set to false for single region installations and multi-region installations # with connectivity between pods in different clusters, for example GKE installations. # Set to true for multi-region installations with no communication between # pods in different clusters, for example GKE On-prem, GKE on AWS, Anthos on bare metal, # AKS, EKS, and OpenShift installations. # See Multi-region deployment: Prerequisites virtualhosts: - name: environment-group-name sslCertPath: ./certs/cert-name.pem sslKeyPath: ./certs/key-name.key envs: - name: environment-name serviceAccountPaths: synchronizer: ./service-accounts/synchronizer-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-synchronizer.json udca: ./service-accounts/udca-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-udca.json runtime: ./service-accounts/runtime-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-runtime.json mart: serviceAccountPath: ./service-accounts/mart-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-mart.json connectAgent: serviceAccountPath: ./service-accounts/mart-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-mart.json # Use the same service account for mart and connectAgent metrics: serviceAccountPath: ./service-accounts/metrics-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-metrics.json udca: serviceAccountPath: ./service-accounts/udca-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-udca.json watcher: serviceAccountPath: ./service-accounts/watcher-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-watcher.json logger: enabled: false # Set to false to disable logger for GKE installatinos. # Set to true for all platforms other than GKE. # See apigee-logger in Service accounts and roles used by hybrid components. serviceAccountPath: ./service-accounts/logger-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-logger.json
Esempio
L'esempio seguente mostra un file di override completato con esempi di valori di proprietà aggiunti:
gcp: region: us-central1 projectID: hybrid-example k8sCluster: name: apigee-hybrid region: us-central1 org: hybrid-example instanceID: "my_hybrid_example" cassandra: hostNetwork: false virtualhosts: - name: example-env-group sslCertPath: ./certs/keystore.pem sslKeyPath: ./certs/keystore.key envs: - name: test serviceAccountPaths: synchronizer: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-synchronizer.json udca: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-udca.json runtime: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-runtime.json mart: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-mart.json connectAgent: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, example-hybrid-apigee-mart.json metrics: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-metrics.json udca: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-udca.json watcher: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-watcher.json logger: enabled: false # Set to "false" for GKE. Set to "true" for all other kubernetes platforms. serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, logger-service-account-name.json
- Al termine, salva il file.
La tabella seguente descrive ciascuno dei valori delle proprietà che devi fornire nel file di override. Per ulteriori informazioni, consulta Riferimento proprietà della configurazione.
Variabile | Descrizione |
---|---|
analytics-region | In GKE, devi impostare questo valore sulla stessa area geografica in cui è in esecuzione il cluster. In tutte le altre piattaforme, seleziona l'area geografica di Analytics più vicina al cluster per cui è supportato Analytics (consulta la tabella nella Parte 1, passaggio 4: crea un'organizzazione).
Si tratta del valore assegnato in precedenza alla variabile di ambiente |
gcp-project-id | Identifica il progetto Google Cloud in cui apigee-logger e apigee-metrics inviano i
dati. Questo è il valore assegnato alla variabile di ambiente PROJECT_ID . |
cluster-name | Il nome del cluster Kubernetes. Questo è il valore assegnato alla variabile di ambiente CLUSTER_NAME . |
cluster-location | Area geografica in cui è in esecuzione il cluster. Si tratta dell'area geografica in cui hai creato il cluster nel passaggio 1: crea un cluster.
Si tratta del valore assegnato in precedenza alla variabile di ambiente |
org-name | L'ID della tua organizzazione ibrida di Apigee. Questo è il valore assegnato alla variabile di ambiente ORG_NAME . |
unique-instance-identifier | Una stringa univoca per identificare questa istanza. Può essere qualsiasi combinazione di lettere e numeri con una lunghezza massima di 63 caratteri. Puoi creare più organizzazioni nello stesso cluster, mainstanceId deve essere lo stesso per tutte le organizzazioni nello stesso cluster Kubernetes.
|
environment-group-name | Il nome del gruppo di ambienti a cui sono assegnati i tuoi ambienti. Si tratta del gruppo che hai creato nella configurazione del progetto e dell'organizzazione - Passaggio 5: crea un gruppo di ambiente.
Questo è il valore assegnato alla variabile di ambiente ENV_GROUP .
|
cert-name key-name |
Inserisci il nome della chiave TLS e dei file dei certificati autofirmati generati in precedenza nel passaggio 6: crea i certificati TLS.
Questi file devono trovarsi nella directory base_directory/hybrid-files/certs . Ad esempio:
sslCertPath: ./certs/keystore.pem sslKeyPath: ./certs/keystore.key |
environment-name | Utilizza lo stesso nome che hai utilizzato quando hai creato un ambiente nell'interfaccia utente, come spiegato nella Configurazione del progetto e dell'organizzazione - Passaggio 5: crea un gruppo di ambiente. |
synchronizer-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-synchronizer che hai generato
con lo strumento create-service-account nella sezione
Configurazione del runtime ibrido -
Passaggio 6: crea account di servizio e credenziali. Puoi visualizzare l'elenco dei file dell'account di servizio nella directory service-accounts/ . Ad esempio:
ls ../service-accounts/ |
udca-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-udca che hai generato
con lo strumento create-service-account . |
runtime-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave dell'account di servizio apigee-runtime che hai generato con lo strumento create-service-account . |
mart-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-mart che hai generato
con lo strumento create-service-account .
|
metrics-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-metrics che hai generato
con lo strumento create-service-account . |
udca-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-udca che hai generato
con lo strumento create-service-account . |
watcher-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-watcher che hai generato
con lo strumento create-service-account . |
logger-service-account-name | Per gli ambienti non di produzione, il nome dell'account di servizio singolo,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del file della chiave
dell'account di servizio apigee-logger che hai generato
con lo strumento create-service-account . |
Riepilogo
Il file di configurazione indica a Kubernetes come eseguire il deployment dei componenti ibridi in un cluster. Dopodiché attiverai l'accesso del sincronizzatore in modo che i piani di runtime e di gestione di Apigee potranno comunicare.