Apigee hybride est compatible avec les mises à jour progressives. Dans Kubernetes, les mises à jour progressives permettent de mettre à jour les déploiements sans interruption de service grâce à une mise à jour progressive des instances de pod avec de nouvelles instances.
Composants compatibles avec les mises à jour progressives
Si vous modifiez les paramètres de propriété pour l'un des composants hybrides suivants dans votre fichier de remplacement, vous pouvez utiliser la propriété revision pour signaler que vous souhaitez effectuer une mise à jour progressive des pods concernés.
runtimemartudcametricssynchronizer
Vous pouvez également utiliser revision lorsque vous modifiez l'une des propriétés suivantes :
nodeSelector.*envs.*imagePullSecrets.*gcpProjectIDk8sClusterNamecontractProviderorg
Comment effectuer une mise à jour progressive
Par exemple, supposons que vous souhaitiez que la mémoire runtime actuelle de 1 Gi passe à 5 Gi :
Dans la configuration actuelle, revision est défini sur blue :
...
revision: blue
...
runtime:
replicaCountMin: 2
replicaCountMax: 20
resources:
cpu: 1000m
memory: 1Gi
...
Dans la nouvelle configuration, revision est remplacé par green, ce qui indique que vous souhaitez effectuer une mise à jour progressive lorsque la modification est appliquée. La valeur que vous définissez pour revision n'a pas d'importance. Vous pouvez utiliser n'importe quelle chaîne, à condition de remplacer la valeur précédente par une autre valeur.
...
revision: green
...
runtime:
replicaCountMin: 2
replicaCountMax: 20
resources:
cpu: 1000m
memory: 5Gi
...
Lorsque vous appliquez la modification, vous pouvez utiliser l'option -c pour ne mettre à jour qu'un pod spécifique. Exemple :
apigeectl apply -f my-overrides.yaml -c runtime
Si vous n'utilisez pas -c, tous les pods dont les configurations sont modifiées seront mis à jour.