Apigee hybrid admite actualizaciones progresivas. En Kubernetes, las actualizaciones progresivas permiten que las actualizaciones de implementación se realicen sin tiempo de inactividad mediante la actualización incremental de las instancias de pods con instancias nuevas.
Componentes que admiten actualizaciones progresivas
Si cambias la configuración de la propiedad para cualquier hybrid de los siguientes componentes de tu archivo de anulaciones, puedes usar la propiedad revision a fin de indicar que deseas realizar una actualización progresiva a los pods afectados.
runtimemartudcametricssynchronizer
También puedes usar revision cuando cambies cualquiera de las siguientes propiedades:
nodeSelector.*envs.*imagePullSecrets.*gcpProjectIDk8sClusterNamecontractProviderorg
Cómo realizar una actualización progresiva
Por ejemplo, supongamos que deseas cambiar la memoria actual runtime de 1Gi a 5G:
En la configuración actual, revision está establecido en blue:
...
revision: blue
...
runtime:
replicaCountMin: 2
replicaCountMax: 20
resources:
cpu: 1000m
memory: 1Gi
...
En la configuración nueva, revision se cambia a green, lo que indica que deseas realizar una actualización progresiva cuando se aplica el cambio. El valor establecido para revision no importa. Puedes usar cualquier string que desees, siempre y cuando la cambies del valor anterior a otro.
...
revision: green
...
runtime:
replicaCountMin: 2
replicaCountMax: 20
resources:
cpu: 1000m
memory: 5Gi
...
Cuando aplicas el cambio, puedes usar la marca -c para actualizar solo un pod específico. Por ejemplo:
apigeectl apply -f my-overrides.yaml -c runtime
O bien, si no usas -c, todos los pods que tienen cambios de configuración se actualizarán.