Questo argomento spiega come configurare e gestire i componenti del piano di runtime di Apigee hybrid. Per un elenco dei componenti del piano di runtime che puoi configurare, consulta Panoramica della configurazione del servizio di runtime.
Informazioni sul file di override
La prima volta che installi il runtime ibrido in un cluster, devi creare una configurazione per l'override del file. Questo file consente di ignorare i valori di configurazione predefiniti in base alle esigenze, configurare gli ambienti, fare riferimento ai certificati TLS e alle chiavi degli account di servizio, assegnare pool di nodi Kubernetes a componenti ibridi specifici e così via.
La procedura di installazione di un ambiente ibrido illustra il processo di creazione di un file di override e di applicazione della configurazione a un cluster. Se vuoi cambiare la configurazione in un secondo momento, modifica il file di override che hai creato e applicalo di nuovo.
Apportare una modifica alla configurazione
Per apportare una modifica alla configurazione di un componente del piano di runtime ibrido, modifica il file di override e applica le modifiche con apigeectl
.
Ad esempio, per modificare il numero di repliche sul Processore di messaggi, segui questi passaggi:
- Apri il file YAML di override. Assicurati di utilizzare lo stesso file di override utilizzato per installare il runtime ibrido nel cluster.
- Individua l'elemento
runtime
nel file. Ad esempio:... runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 1 replicaCountMax: 2 ...
-
Modifica le proprietà del conteggio delle repliche in base alle tue esigenze. Ad esempio:
... runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 2 replicaCountMax: 4 ...
- Utilizza
apigeectl
per applicare la modifica al cluster:apigeectl apply -f ./my_overrides.yaml --org --env env-name
Quali proprietà di configurazione puoi modificare?
Puoi trovare l'elenco completo delle proprietà configurabili nel riferimento alle proprietà di configurazione. Il riferimento elenca solo le proprietà che puoi modificare; se tenti di modificare una proprietà che non è nel riferimento, la modifica viene ignorata.
Come utilizzare il riferimento per la configurazione
Il riferimento alle proprietà di configurazione utilizza la notazione dei punti per descrivere gli elementi di configurazione, dove il primo elemento è il nome dell'elemento di primo livello seguito dalle proprietà e dalle proprietà secondarie. Ad esempio:
authz.image.pullPolicy
Nel file di override, le proprietà sono formattate in formato YAML appropriato. Nell'esempio precedente,
l'elemento authz
di primo livello è rientrato a sinistra
e le proprietà dell'elemento secondario sono rientrate sotto di esso. Inoltre, YAML richiede i due punti alla fine di ogni elemento e elemento secondario.
Ad esempio, per impostare la proprietà authz.image.pullPolicy
su Always
, individua questa stanza YAML nel file di override e impostala:
authz: image: pullPolicy: Always
Per un altro esempio, la proprietà cassandra.auth.admin.password
(come
è elencata nel riferimento della proprietà Configurazione) viene utilizzata per impostare la password
amministratore di Cassandra. Per modificarlo, individua il seguente YAML nel file di override e impostalo:
cassandra: auth: admin: password: abc123
Ricorda che il riferimento alla proprietà di configurazione descrive tutte le proprietà che puoi impostare nei componenti del piano di runtime ibrido. Segui il pattern descritto sopra per modificare questi elementi nel file di override prima di applicare le modifiche al cluster.
L'utilizzo dei file di override di esempio predefiniti
Quando installi per la prima volta il runtime ibrido, Apigee consiglia di utilizzare uno dei pre-configured example overrides files. Questi esempi forniscono un set completo di proprietà di configurazione per scenari di installazione specifici, ad esempio per la configurazione di un'installazione di produzione o di prova. Devi solo fornire i valori appropriati per le proprietà e applicare il file di override al cluster. Per saperne di più, consulta Creare un file di override.
Informazioni sulle impostazioni predefinite della configurazione
Apigee mantiene la configurazione predefinita dei componenti nel file
hybrid_root_dir/config/values.yaml
. I file di override seguono la stessa struttura YAML di values.yaml
.
In genere, un file di override include solo un sottoinsieme delle proprietà di configurazione trovate in values.yaml
. Tieni presente che non tutte le proprietà sono modificabili. Quando applichi una configurazione a un cluster, gli override vengono uniti alle impostazioni predefinite per creare la configurazione completa del cluster Kubernetes. Vedi anche Output della configurazione unita.
Il codice seguente mostra la configurazione predefinita per il componente mart
,
disponibile in values.yaml
. Tieni presente che alcuni valori hanno valori predefiniti, mentre altri, come sslCertPath
e sslKeyPath
, no. Devi fornire questi valori mancanti nel file di override, come spiegato nella procedura di installazione.
Se vuoi modificare uno qualsiasi dei valori predefiniti, assicurati che siano modificabili controllando il riferimento alla proprietà di configurazione.
... mart: replicaCountMin: 2 replicaCountMax: 4 targetCPUUtilizationPercentage: 75 terminationGracePeriodSeconds: 30 sslCertPath: sslKeyPath: hostAlias: nodeSelector: key: value: revision: blue image: url: "google/apigee-mart-server" tag: "1.0.0" pullPolicy: IfNotPresent resources: requests: cpu: 500m memory: 512Mi initCheckCF: resources: requests: cpu: 10m livenessProbe: timeoutSeconds: 1 failureThreshold: 12 periodSeconds: 5 initialDelaySeconds: 15 readinessProbe: timeoutSeconds: 1 successThreshold: 1 failureThreshold: 2 periodSeconds: 5 initialDelaySeconds: 15 metricsURL: "/v1/server/metrics" cwcAppend: | ...
Se vuoi modificare i valori predefiniti di un componente e quest'ultimo non è già presente nel file di override, puoi copiare il relativo YAML da values.yaml
nel file di override e modificarlo lì.
File di override di esempio
Apigee fornisce un insieme di file di override di esempio per aiutarti a configurare il deployment ibrido. È buona norma copiare e modificare il file di override che corrisponde il più possibile ai requisiti di installazione.
I seguenti esempi sono inclusi nella
directory hybrid_root_dir/examples
:
File di override di esempio | Descrizione |
---|---|
overrides-small.yaml |
Questo esempio è ideale per iniziare rapidamente. Utilizza l'ingombro minimo consigliato per avviare i componenti di runtime ibridi. Questa configurazione di esempio si basa il più possibile su impostazioni e valori predefiniti. Tutte le repliche minime sono impostate su 1. |
overrides-medium.yaml |
Questo esempio è un buon punto di partenza per gli ambienti di test e QA. Ai singoli componenti è stato concesso un livello più elevato di risorse per gestire traffico aggiuntivo. Cassandra utilizza dischi SSD per le prestazioni. In questo ambiente, è consigliabile che gli utenti installino componenti stateful e stateless su nodi separati. Vedi Configurare nodi dedicati. |
overrides-large.yaml |
Questo esempio è un buon punto di partenza per ambienti ad alte prestazioni come pre-produzione e produzione. L'esempio include proprietà per l'impostazione di chiavi di crittografia, password e altro. I singoli componenti hanno un minimo di due repliche. |
Restituisci come output la configurazione unita
Puoi utilizzare il flag--dry-run
con apigeectl
per generare il file di configurazione unito senza applicarlo effettivamente al cluster. Questa opzione è utile per eseguire il debug di un problema di installazione perché mostra esattamente cosa verrà applicato al cluster.
È buona norma inoltre produrre la configurazione e archiviarla nel controllo del codice sorgente, in modo da avere un riferimento delle risorse installate e configurate nel cluster.
Ad esempio:
apigeectl apply -f ./my_overrides.yaml --dry-run --print-yaml > apigee-hybrid.yaml
Per saperne di più, visita apigeectl
.
Crea più file di override in base alle esigenze
Puoi creare tutti i file di override che vuoi, ognuno dei quali soddisfa un requisito specifico. Ad esempio, potresti avere un file di override che ottimizza il cluster per la produzione e un altro per creare un cluster di test. Potrai poi gestire questi file nel tuo sistema di controllo del codice sorgente.
Utilizza l'opzione -f
con apigeectl
per specificare la posizione e il nome
di un file di override. Ad esempio:
apigeectl apply -f ./test_env_override.yaml
Per saperne di più, visita apigeectl
.
Elimina i componenti del piano di runtime specifici per gli ambienti ibridi
Per eliminare i componenti del piano di runtime specifici per gli ambienti ibridi dal cluster, utilizza il comando apigeectl delete
. Questi componenti includono sincronizzator, mart, runtime, cassandra e udca. Assicurati di specificare lo stesso file di override che hai utilizzato per installare i componenti di runtime:
Ad esempio:
apigeectl delete -f ./my_overrides.yaml
Puoi utilizzare il comando apigeectl apply
per ricreare uno o più componenti specifici:
apigeectl apply --org --env env-name -f ./my_overrides.yaml
Per saperne di più, visita apigeectl
.
Eliminare un componente specifico
Se vuoi eliminare solo un componente specifico, utilizza l'opzione -c
con apigeectl delete
. Assicurati di specificare lo stesso file di override utilizzato per installare i componenti di runtime.
Ad esempio, per eliminare il componente Sincronizzatore, utilizza questo comando:
apigeectl delete --org --env env-name -f ./my_overrides.yaml
Puoi quindi utilizzare il comando apigeectl apply
per ricreare il componente:
apigeectl apply --org --env env-name -f ./my_overrides.yaml
Per saperne di più, visita apigeectl
.
Elimina tutti i componenti
Per eliminare tutti i componenti del cluster ibridi, inclusi quelli creati dal comando apigeectl init
, utilizza il comando apigeectl delete
con il flag --all
. Assicurati di specificare lo stesso file di override che hai utilizzato per installare i componenti di runtime:
Ad esempio:
apigeectl delete -f ./my_overrides.yaml --all
Per saperne di più, visita apigeectl
.