# GitOps - [Introduction](#introduction) - [GitOps Working Group](#gitops-working-group) - [Git Repositories Structures](#git-repositories-structures) - [GitOps Tools](#gitops-tools) - [Flux. The GitOps Operator for Kubernetes](#flux-the-gitops-operator-for-kubernetes) - [Kustomize. Kubernetes native configuration management](#kustomize-kubernetes-native-configuration-management) - [Flagger](#flagger) - [WKSctl. Weave Kubernetes System Control](#wksctl-weave-kubernetes-system-control) - [Helm](#helm) - [Jenkins](#jenkins) - [Terraform](#terraform) - [Config Sync and Anthos Config Management](#config-sync-and-anthos-config-management) - [Portworx AutoPilot](#portworx-autopilot) - [OpenShift Applier](#openshift-applier) - [HashiCorp Waypoint](#hashicorp-waypoint) - [Weave GitOps](#weave-gitops) - [GitOps Frameworks](#gitops-frameworks) - [Kubernetes Platforms and GitOps](#kubernetes-platforms-and-gitops) - [OpenShift GitOps](#openshift-gitops) - [AWS Kubernetes](#aws-kubernetes) - [Weave Kubernetes Platform](#weave-kubernetes-platform) - [Ubuntu Charmed Kubernetes](#ubuntu-charmed-kubernetes) - [Tweets](#tweets) - [Videos](#videos) ## Introduction - [gitops.tech ๐](https://www.gitops.tech/) - [weave.works: Guide to GitOps](https://www.weave.works/technologies/gitops/) - [weave.works: What Is GitOps?](https://www.weave.works/blog/what-is-gitops-really) - [atlassian.com: Is GitOps the next big thing in DevOps?](https://www.atlassian.com/git/tutorials/gitops) - [cloudbees.com: What is GitOps?](https://www.cloudbees.com/gitops/what-is-gitops) - [dzone: What Is GitOps, Really?](https://dzone.com/articles/what-is-gitops-really) This article will help you understand what GitOps really is as a strategy for development, and its benefits over other CI/CD approaches - [Continuous GitOps, the way to do DevOps in Kubernetes](https://medium.com/@imarunrk/continuous-gitops-the-way-to-do-devops-in-kubernetes-896b0ea1d0fb) Continuous GitOps, the new age DevOps practice to increase the delivery velocity by achieving an end to end โGit source of truthโ with Zero manual changes into the Kubernetes cluster. - [thenewstack.io: What Is GitOps and Why It Might Be The Next Big Thing for DevOps](https://thenewstack.io/what-is-gitops-and-why-it-might-be-the-next-big-thing-for-devops/) - [opensource.substack.com: All You Need To Know About GitOps](https://opensource.substack.com/p/all-you-need-to-know-about-gitops) A complete guide about GitOps, what why and how - [itnext.io: Continuous GitOps, the way to do DevOps in Kubernetes](https://itnext.io/continuous-gitops-the-way-to-do-devops-in-kubernetes-896b0ea1d0fb) Continuous GitOps, the new age DevOps practice to increase the delivery velocity by achieving an end to end โGit source of truthโ with Zero manual changes into the Kubernetes cluster - [container-solutions.com: GitOps: The Bad and the Ugly](https://blog.container-solutions.com/gitops-the-bad-and-the-ugly) - [itnext.io: Principles, Patterns, and Practices for Effective Infrastructure as Code](https://itnext.io/principles-patterns-and-practices-for-effective-infrastructure-as-code-e5f7bbe13df1) Deliver Infrastructure and Software running on it Rapidly and Reliably at Scale. - [medium: GitOps: Build infrastructure resilient applications ๐](https://medium.com/@franoisdagostini/gitops-build-infrastructure-resilient-applications-95bbc939046d) - [itnext.io: Continuous GitOps, the way to do DevOps in Kubernetes ๐](https://itnext.io/continuous-gitops-the-way-to-do-devops-in-kubernetes-896b0ea1d0fb) Continuous GitOps, the new age DevOps practice to increase the delivery velocity by achieving an end to end โGit source of truthโ with Zero manual changes into the Kubernetes cluster. - [itnext.io: Managing Kubernetes Secrets Securely with GitOps ๐](https://itnext.io/managing-kubernetes-secrets-securely-with-gitops-b8174b4f4d30) - [sufle.io: Adopting GitOps for Enhanced Operations](https://www.sufle.io/blog/adopting-gitops-for-enhanced-operations) - [medium: GitOps : The Next Big Thing for DevOps and Automation!](https://medium.com/searce/gitops-the-next-big-thing-for-devops-and-automation-2a9597e51559) If you have similar questions like: โWhatโs GitOps?โ, โWhy we are moving towards this?โ, โHow and when one can implement this strategy in now running environment?โ, โWhat are the tools it included?โ then you have landed on the right page. - [thenewstack.io: Understanding GitOps: The Latest Tools and Philosophies](https://thenewstack.io/understanding-gitops-the-latest-tools-and-philosophies/) - [samiyaakhtar.medium.com: GitOps Observability โ Visualizing the journey of a container](https://samiyaakhtar.medium.com/gitops-observability-visualizing-the-journey-of-a-container-5f6ef1f3c9d2) - [clickittech.com: What is GitOps? ๐](https://www.clickittech.com/devops/what-is-gitops) - [blog.container-solutions.com: 11 Reasons for Adopting GitOps](https://blog.container-solutions.com/why-adopt-gitops) - [opensource.com: GitOps vs. DevOps: What's the difference? ๐](https://opensource.com/article/21/3/gitops) Get to know GitOps, an evolved form of DevOps. - [geekflare.com: An Introduction to GitOps](https://geekflare.com/gitops-introduction/) - [thenewstack.io: GitOps Use Cases You May Not Have Considered](https://thenewstack.io/gitops-use-cases-you-may-not-have-considered/) - [kumomind.medium.com: Should I consider the GitOps methodology?](https://kumomind.medium.com/should-i-consider-the-gitops-methodology-f49e042b8c22) - [dzone: GitOps: How to Ops Your Git the Right Way ๐](https://dzone.com/articles/gitops-how-to-ops-your-git-the-right-way) In this article weโll look into the specifics of creating Git repositories structures โโ โthe very core of the GitOps approach. - [braindose.blog: 4 Key Characteristics for a Successful GitOps Implementation](https://braindose.blog/2020/03/18/4-key-characteristics-of-gitops/) - [blog.container-solutions.com: GitOps: The Bad and the Ugly](https://blog.container-solutions.com/gitops-limitations) - [cloudogu.com: GitOps in Software Development ๐](https://cloudogu.com/en/glossary/gitops/) - [gitops.tech: What is GitOps? ๐](https://www.gitops.tech/#tools) - [dzone: GitOps โ DevOps for Infrastructure Automation ๐](https://dzone.com/articles/gitops-devops-for-infrastructure-automation) GitOps offers a way to automate and manage infrastructure by using proven DevOps best practices such as version control, code review, and CI/CD pipelines. - [unifiedguru.com: GitOps and the Cloud Operating Model โ VMware Cloud Community ๐](https://www.unifiedguru.com/gitops-and-the-cloud-operating-model-vmware-cloud-community/) - [thenewstack.io: Misconfiguration Worries Grow](https://thenewstack.io/misconfiguration-worries-grow/) - [codefresh.io: The pains of GitOps 1.0 ๐](https://codefresh.io/devops/pains-gitops-1-0/) GitOps as a practice for releasing software has several advantages, but like all other solutions before it, has also several shortcomings. - [weave.works: Managing Kubernetes with GitOps in a multi-cluster, multi-cloud world](https://www.weave.works/blog/managing-kubernetes-with-gitops-in-a-multi-cluster-multi-cloud-world) - [viewnext.com: ยฟQuรฉ es GitOps?](https://www.viewnext.com/que-es-gitops/) - [thenewstack.io: Have Containers Will Travel: Why GitOps Is Essential for Multicloud ๐](https://thenewstack.io/have-containers-will-travel-why-gitops-is-essential-for-multicloud/) - [weave.works: Put Your Security Worries to Rest with GitOps Operational Control ๐](https://www.weave.works/use-cases/security-with-gitops/) GitOps workflows in the Weave Kubernetes Platform give teams a head start since they rely on Gitโs strong correctness and security. Every pull request has a built-in and fully auditable trail. Many companies need to look beyond just compliance and seek a full GRC solution thatโs integral to their workflows. - [thenewstack.io: Push vs. Pull in GitOps: Is There Really a Difference?](https://thenewstack.io/push-vs-pull-in-gitops-is-there-really-a-difference/) - [about.gitlab.com: 3 Ways to approach GitOps ๐](https://about.gitlab.com/blog/2021/04/27/gitops-done-3-ways/) - [developers.redhat.com: Why should developers care about GitOps?](https://developers.redhat.com/blog/2021/05/13/why-should-developers-care-about-gitops) - [openshift.com: Our Favorite Things from GitOps Con at KubeCon EU ๐](https://www.openshift.com/blog/our-favorite-things-from-gitops-con-at-kubecon-eu) - [devsecops.co.in: GitOps Guide โ What, Why and How? ๐](https://devsecops.co.in/2021/05/13/gitops-guide-what-why-and-how/) - [en.sokube.ch: GitOps and the Millefeuille dilemma ๐](https://en.sokube.ch/post/gitops-and-the-millefeuille-dilemma-1) - [octopus.com: How to structure your Git repository for DevOps automation](https://octopus.com/blog/devops-automation-repo-design) - [testingclouds.wordpress.com: GitOps Demystified](https://testingclouds.wordpress.com/2021/06/02/gitops-demystified/) - [weave.works: Ops Automation - GitOps in the Modern Enterprise](https://www.weave.works/blog/gitops-in-the-modern-enterprise) - [openshift.com: What is GitOps? ๐](https://www.openshift.com/learn/topics/gitops/) While DevOps provides an agile team structure, GitOps is a framework to start executing on the vision. - [thenewstack.io: Security Will Be Instrumental for the Success of GitOps](https://thenewstack.io/security-will-be-instrumental-for-the-success-of-gitops/) - [weave.works: Thereโs More to GitOps Than Meets the Eye](https://www.weave.works/blog/theres-more-to-gitops-than-meets-the-eye) - [solo.io: GlooOps: Progressive delivery, the GitOps way](https://www.solo.io/blog/glooops-progressive-delivery-the-gitops-way) - [go.weave.works: The GitOps Maturity Model - 4 evolutionary steps to continuous delivery (pdf)](https://go.weave.works/2021_GitOps_Maturity_Model.html) - [thenewstack.io: A Look at GitOps for the Modern Enterprise ๐](https://thenewstack.io/a-look-at-gitops-for-the-modern-enterprise/) - [shipa.io: GitOps in the enterprise ๐](https://www.shipa.io/innovation/gitops-in-the-enterprise/) - [itnext.io: GitOps with Kubernetes ๐](https://itnext.io/gitops-with-kubernetes-740f37ea015b) - [shipa.io: GitOps meets AppOps](https://www.shipa.io/innovation/gitops-meets-appops/) - [weave.works: Automating Kubernetes with GitOps (whitepaper) ๐](https://go.weave.works/automating-kubernetes-with-gitops-wp.html) - [devopslearners.com: What is GitOps?](https://devopslearners.com/what-is-gitops-168aac9a2ee) A small explanation for GitOps - [go.weave.works: The Practical Guide to GitOps (eBook)](https://go.weave.works/gitops-ebook.html) - [enterprisersproject.com: How to explain GitOps in plain English](https://enterprisersproject.com/article/2021/6/gitops-explained-plain-english) What is GitOps and why is it important? How can IT leaders explain GitOps to others, especially if they donโt speak DevOps or cloud-native? Experts break it down - [redhat.com: An illustrated guide to GitOps](https://www.redhat.com/architect/illustrated-guide-gitops) Understanding the basic principles driving GitOps offers Enterprise Architects a new way of working in the modern enterprise. - [bunnyshell.com: GitOps vs. DevOps: Whatโs the Difference? ๐](https://www.bunnyshell.com/blog/gitops-vs-devops) - [jimangel.io: Self-Updating GitOps](https://jimangel.io/post/auto-gitops-isitstillrunning.com/) Self-hosted, Self-healing, Self-updating, Self-patching Kubernetes madness - [stevesmith.tech: GitOps is a placebo](https://www.stevesmith.tech/blog/gitops-is-a-placebo/) - [weave.works: The History of GitOps ๐](https://www.weave.works/blog/the-history-of-gitops) - [opensource.com: How to get the most out of GitOps right now](https://opensource.com/article/21/8/gitops) GitOps is a great starting point to understand what is running in production, but it may need a little more augmentation to get it working just right for your engineering team. - [redhat.com: 3 rules for applying principles of GitOps to enterprise architecture](https://www.redhat.com/architect/3-gitops-rules-architecture) Check out these three rules for using GitOps to get your enterprise architecture up and running effectively. - [weave.works: Hardening Git for GitOps (white paper)](https://go.weave.works/hardening-git-for-gitops.html) - [magalix.com: GitOps 101: Whatโs It All About?](https://www.magalix.com/blog/what-is-gitops) - [containerjournal.com: The 4 Levels of GitOps Maturity](https://containerjournal.com/features/the-4-levels-of-gitops-maturity/) - [thenewstack.io: How to Get the Most out of GitOps](https://thenewstack.io/how-to-get-the-most-out-of-gitops) **Just as Kubernetes was accepted as the best way to do cloud native applications, GitOps is gaining recognition as the best way to do Kubernetes.** - [weave.works: Case Study: National Australia Bank Decreases Operational Overhead with GitOps](https://www.weave.works/blog/case-study-national-australia-bank-decreases-operational-overhead-with-gitops) New case study on how GitOps helped NAB, Australia's largest business bank decrease operational overhead for their move to EKS: "We turned to Weaveworks because of their extensive EKS and Kubernetes experience, including their close partnership with AWS". - [betterprogramming.pub: How GitOps Can Help Prevent Security Misconfigurations](https://betterprogramming.pub/how-gitops-can-help-prevent-security-misconfigurations-8b506dcd89e1) Cloud-native development comes with its own set of security risks. Know how to tackle them - [blogs.sap.com: Decentralized GitOps over multiple environments](https://blogs.sap.com/2021/05/06/decentralized-gitops-over-environments/) - [thenewstack.io: Application Deployment Is Faster with GitOps](https://thenewstack.io/application-deployment-is-faster-with-gitops/) - [As an ops engineer not too familiar with Git, you just need to know 6 commands](https://twitter.com/janakiramm) - git init, git add, git commit, git status, git log, git revert - to harness the power of GitOps. - [thenewstack.io: Wait, Do We Need to Hold Up on GitOps?](https://thenewstack.io/wait-do-we-need-to-hold-up-on-gitops/) - [redhat.com: How to use GitOps in your enterprise architecture strategy ๐](https://www.redhat.com/architect/understanding-gitops) Understanding the four guiding principles is like runway lighting for implementing GitOps in your enterprise. - [codefresh.io: The pains of GitOps 1.0](https://codefresh.io/about-gitops/pains-gitops-1-0/) GitOps as a practice for releasing software has several advantages, but like all other solutions before it, has also several shortcomings. It seems that the honeymoon period is now over, and we can finally talk about the issues of GitOps (and the current generation of GitOps tools) - [==thenewstack.io: CNCF Working Group Sets Some Standards for โGitOpsโ==](https://thenewstack.io/cncf-working-group-sets-some-standards-for-gitops/) GitOps must meet these four requirements: 1. **Declarative:** A system managed by GitOps must have its desired state expressed declaratively. โYouโre no longer giving instructions, youโre describing state,โ Murillo described. 2. **Versioned and Immutable:** Desired state is stored in a way that enforces immutability, versioning and retains a complete version history. โThe only way for you to introduce change in your system is by creating a new version of your desired state,โ Murillo added. 3. **Pulled Automatically:** Software agents automatically pull the desired state declarations from the source. Agents within the system pull the desired state from the repository. 4. **Continuously Reconciled:** Software agents continuously observe the actual system state and attempt to apply the desired state. โThe desired state [of the system or software] is continually reconciled, Murillo said. - [thenewstack.io: GitOps and the Cheap Cloud Myth](https://thenewstack.io/repatriation-or-cloud-what-we-need-is-control/) - [==redhat.com: Comparing GitOps implementation patterns: Pros and cons==](https://www.redhat.com/architect/gitops-implementation-patterns) The CI/CD Controller pattern and the SCM Controller pattern take different approaches to automating application deployment from source code management.
THREAD: What is GitOps?
— Daniele Polencic (@danielepolencic) July 29, 2020
Is this something that you should learn?
Let's dive into it. pic.twitter.com/hsMUesvP23
If you do a canary release on #Kubernetes with #Istio use Flagger (https://t.co/4s6NFwvaXz). It allows e.g.:
— Piotr Miลkowski (@piotr_minkowski) September 17, 2021
๐น run acceptance and load tests
๐น do an automatic rollback
๐น make a progressive traffic shifting