Apigee hybrid supports rolling
updates. In Kubernetes, rolling updates allow Deployment updates to take place with zero
downtime by incrementally updating Pod instances with new ones.
Components that support rolling updates
If you change property settings for any hybrid of the following components in your
overrides file, you can use
the revision property to signal that you want to perform a rolling update
to the affected pods.
runtime
mart
udca
metrics
synchronizer
You can also use revision when you change any
of the following properties:
nodeSelector.*
envs.*
imagePullSecrets.*
gcpProjectID (Deprecated)
k8sClusterName (Deprecated)
gcp.*
k8sCluster.*
contractProvider
org
How to perform a rolling update
For example, suppose you want to change the current runtime memory from 1Gi to
5Gi:
In the current configuration, revision is set to blue:
In the new configuration, revision is changed to green, signaling
that you want to perform a rolling update when
the change is applied. The value you set revision to does not matter; you can
use any string you wish, as long as you change it from the previous value to something else.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-20 UTC."],[[["\u003cp\u003eThis documentation is for Apigee hybrid version 1.2, which is no longer supported and requires an upgrade to a newer version.\u003c/p\u003e\n"],["\u003cp\u003eApigee hybrid utilizes Kubernetes rolling updates, enabling zero-downtime updates by incrementally replacing Pod instances.\u003c/p\u003e\n"],["\u003cp\u003eRolling updates can be triggered for specific components like \u003ccode\u003eruntime\u003c/code\u003e, \u003ccode\u003emart\u003c/code\u003e, \u003ccode\u003eudca\u003c/code\u003e, \u003ccode\u003emetrics\u003c/code\u003e, and \u003ccode\u003esynchronizer\u003c/code\u003e by modifying the \u003ccode\u003erevision\u003c/code\u003e property in the overrides file.\u003c/p\u003e\n"],["\u003cp\u003eChanging properties such as \u003ccode\u003enodeSelector.*\u003c/code\u003e, \u003ccode\u003eenvs.*\u003c/code\u003e, \u003ccode\u003eimagePullSecrets.*\u003c/code\u003e, \u003ccode\u003egcp.*\u003c/code\u003e, \u003ccode\u003ek8sCluster.*\u003c/code\u003e, \u003ccode\u003econtractProvider\u003c/code\u003e, or \u003ccode\u003eorg\u003c/code\u003e also allows the use of \u003ccode\u003erevision\u003c/code\u003e to perform rolling updates.\u003c/p\u003e\n"],["\u003cp\u003eTo initiate a rolling update, change the \u003ccode\u003erevision\u003c/code\u003e property to any new string value, and then apply the changes, optionally targeting specific pods using the \u003ccode\u003e-c\u003c/code\u003e flag.\u003c/p\u003e\n"]]],[],null,[]]