-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs(GLOSSARY.md): reintroduce Break Glass #42
Conversation
• reintroduce Break Glass from RC1 at open-gitops#21 • prepend with · · · — — — · · · 🆘 which: 1. make this idiom/analogy more accessible for a global audience 2. alphabetize to the bottom of glossary Signed-off-by: lloydchang <[email protected]>
This comment has been minimized.
This comment has been minimized.
Lloyd I'm happy to prepend something so it doesn't become a negative to GitOps adoption. The whole point of proposing this was to make sure folks don't get stuck in their adoption because "source of truth" unavailability would be something they'd have to think through on their own. |
TL;DR: • It's fine to append to Break Glass in the GitOps Glossary (hence this pull request reintroduces it), but I wouldn't explicitly list Break Glass in the GitOps Principles until we have a better understanding of: ❔ Exactly where are the root causes of the problem @grmhay had summarized, and why? ❔ Are we defining source of truth very differently? (please see below) @grmhay wrote at #37 (comment):
Hi @grmhay, @ebourgeois, @scottrigby, @christianh814, @todaywasawesome I don't know which GitOps tool @grmhay is using. If @grmhay is using Flux CD v2, then there is One plausible approach and set of tooling could look like:
Instead of GitOps, remote git, i.e. github.com and GitHub Enterprise (Server and/or Cloud) seems to be one of many(?) root causes of the problem that @grmhay described. ❔ Can the problem be better solved at the remote git implementation level? ❔ Curiously, would @grmhay have a conversation about Service Level Availability (SLA), High Availability (HA), Active-active, Geo-replication, etc. with the administrator(s) of @grmhay's GitHub Enterprise on-premise, GitHub Enterprise Cloud Support, and/or github.com Support? Git (originating from git.kernel.org) is designed to be distributed. Out of the box, Remote gits can be managed as a cloud service, or hosted and replicated on-premise, e.g. • GHEC: GitHub Enterprise Cloud: " • GHE: Geo-replication on GitHub Enterprise Server • BDC: Bitbucket Data Center • WGM: WANDisco Git Multisite • GL: GitLab active-active git replication Source of truth: @grmhay wrote at #42 (comment)
❔ Perhaps @grmhay's "source of truth" refers to a managed service specifically because the word "unavailability" is used? • From my perspective, the source of truth isn't because of a remote git managed service and its uptime availability at all. • While there can be a github.com with uptime availability of • There is a source of truth because each Git commit has a unique SHA hash across all Git repositories in the Universe. I empathize with folks so they don't get stuck. For any single point of failure (SPOF), folks will still need to think through on their own depending on exactly where the root causes of the problem are, and why? Points of failure can happen in many places — from one central system lacking active-active high availability, to federated identity, to distributed computer networking (BGP hijacking or DNS hijacking). I don't know if @grmhay's specific setup is air-gapped or not. For what it's worth, there is an air-gapped use case described at How the U.S. Army Software Factory and Enterprise Cloud Management Agency are using Carvel and Cluster API to declaratively manage Kubernetes workloads and clusters in secure air-gapped environments. GitHub, Git, GitOps are different things: If the root causes of many(?) are with GitHub Enterprise Cloud, or GitHub Enterprise on-premise, or github.com, then that is at least two orders of magnitude between:
Concretely, if a pull request cannot happen because github.com is unavailable, then the root causes are directly at GitHub. At this point, the root causes aren't directly at local gits on end users' computers, nor directly at GitOps controllers running in Kubernetes and their own set of gits. That being said, it appears that one of the GitOps tool implementations, Flux CD v2, provides To recap: • It's fine to append to Break Glass in the GitOps Glossary (hence this pull request reintroduces it), but I wouldn't explicitly list Break Glass in the GitOps Principles until we have a better understanding of: ❔ Exactly where are the root causes of the problem @grmhay had summarized, and why? ❔ Are we defining source of truth very differently? (please see above) Thank you @grmhay, @ebourgeois, @scottrigby, @christianh814, @todaywasawesome for your time 🙂 |
Above #42 (comment) relates to https://cloud-native.slack.com/archives/C01G9DEE88M/p1639546167386800?thread_ts=1639072194.295800 Sociotechnical Considerations for GitOps: The trade-offs between High Availability versus CVCS are unique to each organization’s nuances. Is it frugality? DVCS with auditable code reviews, multi-master replication & multi-site exist for organizations that spend resources. Solutions exist in free and open-source software, and from vendors, for example:
and https://cloud-native.slack.com/archives/C01G9DEE88M/p1639553689387200?thread_ts=1639072194.295800 • Git DVCS communities already have solutions for DVCS replication The fundamental issues are sociotechnical — When many organizations want both Frugality and to Think Big, there is conflict with (un-)healthy tension. These fundamental & sociotechnical issues are far beyond the scope of the GitOps Working Group Charter. Thank you all 🙂 |
• reintroduce Break Glass from RC1 at #21
• prepend with · · · — — — · · · 🆘 which:
1. make this idiom/analogy more accessible for a global audience
2. alphabetize to the bottom of glossary