GitOps terminology clarification: Use Git as a Source of Record, and Kubernetes as a Source of Truth. https://www.taos.com/source-of-record-vs-source-of-truth/ …
-
-
Replying to @bgrant0607 @kubernetesonarm
It's stronger than that if done right because record and truth are kept in a reconcilation loop.
1 reply 0 retweets 4 likes -
GitOps sucks with k8s. That reconciliation loop should be one-way flowing from desire to realized. But k8s uses a bi-directional mutation. Mirroring that back to git is dumb. Complicated merge is dumb. Mediocre.
2 replies 0 retweets 2 likes -
I haven't seen this behavior of k8s modifying git. Typically it is as you describe, desired state comes from git and is fed to k8s, k8s then attempts to make that a reality.
1 reply 0 retweets 2 likes -
The issue is k8s mutates the resources under its own management in ways that conflict with declarative representation in git. Requiring merge on rollout.
3 replies 0 retweets 2 likes -
I see, yeah, basically "kubectl apply" is required, is not a pure update, but a merge process. The only thing I wish k8s had done differently there would be that spec and status were two different resources. But that's the beauty of hindsight.
2 replies 0 retweets 1 like -
K8s itself is a distributed system with bidirectional state mutation (lots of concurrency). It doesn’t take a distributed systems master to anticipate these issues. Ironically, using git as the k8s backend would have at least been functionally correct.
2 replies 0 retweets 1 like -
i don't think you really give enough credit to k8s here. k8s is a system that allows mutation, but bidirectional, as you say, is not a core tenet and would be more a flaw in implementation. i think you'd prefer a system based on immutable data, which I too think is compelling
4 replies 0 retweets 0 likes
We should support optional immutability (independent of the authz mechanism).http://issues.k8s.io/10179
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.