A Apigee híbrida oferece suporte a atualizações
graduais. No Kubernetes, as atualizações graduais permitem que as atualizações de implantação
ocorram sem tempo de inatividade atualizando gradualmente as instâncias de pod com novas instâncias.
Componentes compatíveis com a atualização gradual
Se você alterar as configurações de propriedade de qualquer híbrido de um dos componentes no seu
arquivo de modificação, será possível
usar a propriedade revision para sinalizar que quer realizar uma atualização gradual
nos pods afetados.
runtime
mart
udca
metrics
synchronizer
Você também pode usar revision quando alterar qualquer
uma das seguintes propriedades:
nodeSelector.*
envs.*
imagePullSecrets.*
gcpProjectID
k8sClusterName
contractProvider
org
Como executar uma atualização gradual
Por exemplo, suponha que você queira alterar a memória runtime atual de 1Gi para
5Gi:
Na configuração atual, revision está definido como blue:
Na nova configuração, revision é alterado para green, sinalizando
que você quer realizar uma atualização gradual quando
a alteração for aplicada. O valor definido para revision não importa. É possível
usar qualquer string, desde que altere o valor anterior.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-28 UTC."],[[["\u003cp\u003eThis documentation pertains to version 1.1 of Apigee hybrid, which is no longer supported and should be upgraded.\u003c/p\u003e\n"],["\u003cp\u003eApigee hybrid utilizes Kubernetes rolling updates, ensuring zero downtime during Deployment updates.\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\u003egcpProjectID\u003c/code\u003e, \u003ccode\u003ek8sClusterName\u003c/code\u003e, \u003ccode\u003econtractProvider\u003c/code\u003e, or \u003ccode\u003eorg\u003c/code\u003e also necessitates a rolling update, signaled by changing the \u003ccode\u003erevision\u003c/code\u003e value.\u003c/p\u003e\n"],["\u003cp\u003eApplying the \u003ccode\u003e-c\u003c/code\u003e flag to the \u003ccode\u003eapigeectl apply\u003c/code\u003e command can be used to update only the specified component's pods.\u003c/p\u003e\n"]]],[],null,["# Rolling updates\n\n| You are currently viewing version 1.1 of the Apigee hybrid documentation. **This version is end of life.** You should upgrade to a newer version. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\n\nApigee hybrid supports [rolling\nupdates](https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/). In Kubernetes, rolling updates allow Deployment updates to take place with zero\ndowntime by incrementally updating Pod instances with new ones.\n\nComponents that support rolling updates\n---------------------------------------\n\n\nIf you change property settings for any hybrid of the following components in your\noverrides file, you can use\nthe `revision` property to signal that you want to perform a rolling update\nto the affected pods.\n\n- `runtime`\n- `mart`\n- `udca`\n- `metrics`\n- `synchronizer`\n\nYou can also use `revision` when you change any\nof the following properties:\n\n- `nodeSelector.*`\n- `envs.*`\n- `imagePullSecrets.*`\n- `gcpProjectID`\n- `k8sClusterName`\n- `contractProvider`\n- `org`\n\nHow to perform a rolling update\n-------------------------------\n\n\nFor example, suppose you want to change the current `runtime` memory from 1Gi to\n5Gi:\n\n\nIn the current configuration, `revision` is set to `blue`: \n\n```\n...\nrevision: blue\n...\nruntime:\n replicaCountMin: 2\n replicaCountMax: 20\n resources:\n cpu: 1000m\n memory: 1Gi\n...\n```\n\n\nIn the new configuration, `revision` is changed to `green`, signaling\nthat you want to perform a rolling update when\nthe change is applied. The value you set `revision` to does not matter; you can\nuse any string you wish, as long as you change it from the previous value to something else. \n\n```\n...\nrevision: green\n...\nruntime:\n replicaCountMin: 2\n replicaCountMax: 20\n resources:\n cpu: 1000m\n memory: 5Gi\n...\n```\n\n\nWhen you apply the change, you can use the `-c` flag to only update a specific\npod. For example: \n\n```\napigeectl apply -f my-overrides.yaml -c runtime\n```\n\n\nOr, if you do not use `-c` all of the pods that have config changes will be updated."]]