aggiornamenti in sequenza.

Apigee hybrid supporta gli aggiornamenti rolling. In Kubernetes, gli aggiornamenti in sequenza consentono di eseguire gli aggiornamenti del deployment senza tempi di inattività aggiornando in modo incrementale le istanze pod con quelle nuove.

Componenti che supportano gli aggiornamenti in sequenza

Se modifichi le impostazioni delle proprietà per uno qualsiasi dei seguenti componenti ibridi nel file di override, puoi utilizzare la proprietà revision per indicare che vuoi eseguire un aggiornamento in sequenza dei pod interessati.

  • runtime
  • mart
  • udca
  • metrics
  • synchronizer

Puoi anche utilizzare revision quando modifichi una delle seguenti proprietà:

  • nodeSelector.*
  • envs.*
  • imagePullSecrets.*
  • gcpProjectID (immagine deprecata)
  • k8sClusterName (immagine deprecata)
  • gcp.*
  • k8sCluster.*
  • contractProvider
  • org

Come eseguire un aggiornamento in sequenza

Ad esempio, supponi di voler modificare la memoria runtime attuale 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 la modifica viene applicata. Il valore impostato per revision non è importante. Puoi utilizzare qualsiasi stringa, purché la modifichi rispetto al valore precedente.

...
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.