Repository navigation
Replies: 8 comments 33 replies
|
Hi @ioemat , thanks for your interest! Additionally, and as a proof, we developed a detailed testing scenario: to validate that the setup is working as expected. cc. @vmuzikar |
|
@andreaTP What do you think about making this configurable? |
|
Follow up, I quickly hacked around a version of the operator capable of switching between I would be happy to hear feedback on this! |
|
@andreaTP Infinispan operator seems to be using stateful set https://infinispan.org/docs/infinispan-operator/main/operator.html. Are there differences when running DG and embedding that imposes a specific workload object? Also, once we support zero-downtime upgrades, isn't ordered and automatic rolling upgrades a must? |
|
Thanks, @ryanemerson. Doesn't the #2 point (scaling up/down by one pod at a time) above also apply to embedded? I mean, considering that in the embedded mode we are also relying on distributable caches, scaling down too quickly might still result in data loss if a rebalance cannot complete before You're right that data loss is not so catastrophic but it has a direct impact on UX and user-facing availability. I'm not going to mention the impact on upgrades because that is something we are improving with the new store and there we won't have an embedded Infinispan anymore. I'm not opinionated about SS or Deployment and I agree we need feedback from others and take into account the feedback from them when managing a production-grade cluster. One important point you have though is that the operator should be able to solve some of the issues with using a deployment because in the end, it will be managing the workload. So perhaps using a deployment gives more flexibility to the operator in terms of the best approach for us for scaling. |
|
I strongly appreciate everyone's feedback! NOTE: Key takeaways(so far):
As an additional note, I want to share that the work done on Store.X will enable Keycloak to use an external Infinispan installation lowering, even more, the requirements for Last but not least, I want to remember that we are talking about the "opinionated default of the Keycloak operator" and there is absolutely no artificial barrier preventing from deploying Keycloak using |
|
We finally reached the bottom line of this thread. You can track the development of this change here: #12700 |
|
Hi everyone, thanks for the insightful discussion here! |
Uh oh!
There was an error while loading. Please reload this page.
Hi keycloak community,
the keycloak operator currently creates the workloads as deployment (see) which means that the pods are replaced by a new ones when they are restarted.
In my understanding JGroups Cluster is designed to work with stable node identities like they are provided by statefulset.
Using a statefulset also ensures that pods are created sequentially, which probably lowers the risk of race conditions for the initial startup.
What are the advantages of deployment, why has this been chosen for the operator?
All reactions