Config management, zero downtime deployments and rollbacks

We are currently deploying to K8 using a custom docker image that has our SPI and theme implementations. The config management portion is handled with helm and terraform. We had been using realm import to manage realm configuration but want to switch to use terraform.

It seems like configuration management should be split into two parts:

  1. Configuration of the Keycloak infrastructure
  2. Realm configuration

Just wondering how others are managing this. How are you coordinating your deployments so that the new version of the service is not ready until the realms are configured? How are you supporting rollback?

Thanks
-Jonathan

Keycloak does not support guaranteed zero downtime upgrades. Versions might come with incompatible changes.
Keycloak does not support rollbacks. If there’s an error in your upgrade process, you’ll have to restore the database with a backup you hopefully did right before the update started. In best case your database supports point in time recovery.

1 Like

Thank you for your help and awesome contributions.

-Jonathan