Specificare le sostituzioni di configurazione
L'installatore di Apigee Hybrid utilizza i valori predefiniti per molte impostazioni. Tuttavia, alcune impostazioni non hanno valori predefiniti. Devi fornire i 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. Per esempio:vi overrides.yaml
overrides.yaml
fornisce la configurazione per la tua installazione unica di Apigee hybrid. Il file degli override in questo passaggio fornisce una configurazione di base per dimensioni ridotte l'installazione del runtime ibrida, adatta alla prima installazione. - In
overrides.yaml
, aggiungi i valori delle proprietà richiesti, mostrati di seguito. Una dettagliata di seguito viene fornita anche la descrizione di ciascuna proprietà:Per le installazioni in ambienti di produzione, esamina i requisiti di archiviazione per Database Cassandra in Configurare Cassandra per produzione.
Sintassi
Assicurati che il file
overrides.yaml
abbia la seguente struttura e sintassi. I valori in red, bold italics sono valori delle proprietà che devi fornire. Sono descritti nella tabella riportata di seguito.Esistono differenze tra le diverse piattaforme per la regione del progetto Google Cloud e la regione del cluster Kubernetes. Scegli la piattaforma su cui installi Apigee hybrid.
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" # See the property description table below information about this parameter. 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 storage: capacity: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. 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 installations. # 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 completati con valori di proprietà di esempio aggiunto:
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 seguente tabella descrive tutti i valori della proprietà che devi specificare nel esegue l'override del file. Per ulteriori informazioni, vedi Riferimento per le proprietà di configurazione.
Variabile | Descrizione |
---|---|
analytics-region | In GKE, devi impostare questo valore sulla stessa regione in cui è in esecuzione il cluster. In tutto
altre piattaforme, seleziona la regione di analisi più vicina al cluster con Analytics
assistenza (vedi la tabella
Parte 1, Passaggio 4: crea un'organizzazione.
Si tratta del valore che hai assegnato alla variabile di ambiente
|
gcp-project-id | Identifica il progetto Google Cloud in cui apigee-logger e apigee-metrics inviano
i propri dati. Questo è il valore assegnato alla variabile di ambiente PROJECT_ID . |
cluster-name | Il nome del tuo cluster Kubernetes. Questo è il valore assegnato alla variabile di ambiente
CLUSTER_NAME . |
cluster-location | La regione in cui è in esecuzione il cluster. Questa è la regione in cui hai creato
nel Passaggio 1: crea un cluster.
Questo è il valore assegnato alla variabile di ambiente
|
org-name | L'ID della tua organizzazione Apigee ibrida. Questo è il valore assegnato all'ambiente
la variabile ORG_NAME . |
unique-instance-identifier | Una stringa univoca per identificare questa istanza ibrida Apigee per cluster. La stringa può essere una combinazione di lettere e numeri con una lunghezza massima di 63 caratteri.
Se hai bisogno di aiuto per generare un ID univoco, puoi utilizzare una stringa casuale strumento di generazione di testi di tua scelta, ad esempio random.org/strings. |
environment-group-name | Il nome del gruppo di ambienti a cui sono assegnati i tuoi ambienti. Si tratta del gruppo
che hai creato in Configurazione del progetto e dell'organizzazione - Passaggio 5: creazione di un gruppo di ambienti.
Questo è il valore assegnato alla variabile di ambiente ENV_GROUP .
|
cert-name key-name |
Inserisci il nome dei file della chiave e del certificato TLS autofirmati che hai generato in precedenza nel
passaggio 6: creazione dei 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 utilizzato per creare un ambiente nell'interfaccia utente, come spiegato in Configurazione del progetto e dell'organizzazione - Passaggio 5: crea un gruppo di ambienti. |
synchronizer-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-synchronizer file della chiave dell'account di servizio generato da te
con lo strumento create-service-account
Configurazione del runtime ibrido -
Passaggio 6: crea gli account di servizio e le credenziali. Puoi visualizzare l'elenco dei file degli account di servizio nella directory service-accounts/ . Ad esempio:
ls ../service-accounts/ |
udca-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-udca file della chiave dell'account di servizio che hai generato
con lo strumento create-service-account . |
runtime-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
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 del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-mart file della chiave dell'account di servizio generato da te
con lo strumento create-service-account .
|
metrics-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-metrics file della chiave dell'account di servizio che hai generato
con lo strumento create-service-account . |
udca-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-udca file della chiave dell'account di servizio che hai generato
con lo strumento create-service-account . |
watcher-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-watcher file della chiave dell'account di servizio generato da te
con lo strumento create-service-account . |
logger-service-account-name | Per gli ambienti non di produzione, il nome del singolo account di servizio,
non-prod per impostazione predefinita. Per gli ambienti di produzione, il nome del
apigee-logger file della chiave dell'account di servizio che hai generato
con lo strumento create-service-account . |
Riepilogo
Il file di configurazione indica a Kubernetes come eseguire il deployment in un cluster. Successivamente, attiverai l'accesso al sincronizzatore in modo che i piani di gestione e di runtime di Apigee possano comunicare.
1 2 3 4 5 6 7 (SUCCESSIVO) Passaggio 8: abilita l'accesso del sincronizzatore 9