Apigee hybrid supporta gli aggiornamenti graduali. In Kubernetes, gli aggiornamenti in sequenza consentono di eseguire gli aggiornamenti del deployment senza tempi di inattività aggiornando in modo incrementale le istanze di pod con quelle nuove.
Componenti che supportano gli aggiornamenti in sequenza
Se modifichi le impostazioni della proprietà per qualsiasi ibrido dei seguenti componenti nel
file delle sostituzioni, puoi utilizzare
la proprietà revision
per indicare che vuoi eseguire un aggiornamento graduale
ai pod interessati.
runtime
mart
udca
metrics
synchronizer
Puoi utilizzare revision
anche quando modifichi una delle seguenti proprietà:
nodeSelector.*
envs.*
imagePullSecrets.*
gcpProjectID
k8sClusterName
contractProvider
org
Come eseguire un aggiornamento in sequenza
Ad esempio, supponiamo che tu voglia modificare la memoria runtime
corrente da 1 Gi a 5 Gi:
Nella configurazione attuale, revision
è impostato su blue
:
... revision: blue ... runtime: replicaCountMin: 2 replicaCountMax: 20 resources: cpu: 1000m memory: 1Gi ...
Nella nuova configurazione, revision
viene modificato in green
, indicando che vuoi eseguire un aggiornamento in sequenza quando viene applicata la modifica. Il valore impostato per revision
non ha importanza; puoi
utilizzare qualsiasi stringa, purché la modifichi dal valore precedente in un altro.
... revision: green ... runtime: replicaCountMin: 2 replicaCountMax: 20 resources: cpu: 1000m memory: 5Gi ...
Quando applichi la modifica, puoi utilizzare il flag -c
per aggiornare solo un pod specifico. Ad esempio:
apigeectl apply -f my-overrides.yaml -c runtime
In alternativa, se non utilizzi -c
, verranno aggiornati tutti i pod con modifiche alla configurazione.