WTH is GitOps?

WTH is GitOps?

Hi folks, welcome to the developer advocacy newsletter.

In this issue, we will see what GitOps is and everything a developer should know about it.

GitOps flow diagram

The term?GitOps was coined by Alexis Richardson, the CEO of Weaveworks, in 2017 and was primarily aimed at managing Kubernetes deployments.?

GitOps?is an evolution of the DevOps movement. It is an extension of the traditional Git workflow, where Git is considered as the single source of truth. GitOps relies on Continuous Delivery and Deployment to allow organizations to react more quickly to changes in their business landscape, market, or customer needs. It offers a more collaborative and adaptive way to manage software releases to reduce risk.

Continuous Integration?and Deployment have been a software development process since 2009. They are designed to help developers create, test, and deliver software continuously instead of the slower waterfall model, where teams would focus on doing all of these tasks in one long development cycle.

GitOps builds on this concept of Continuous Integration and Deployment where companies can achieve increased speed, transparency, security, reliability, and collaboration through automation while benefiting from a single source of truth for infrastructure and application configuration details. Think of GitOps as a way for organizations to implement DevOps practices for their SDLC and operations life cycle. Git plus Continuous Integration, plus Continuous Deployment, plus automation equals GitOps.?

GitOps can be used to experiment with new infrastructure configurations. If something goes wrong, you can always revert back with Git history.

GitOps workflow:

In the GitOps workflow, the system’s desired configuration is maintained in a source file stored in the git repository with the code itself. The engineer will make changes to the configuration files representing the desired state instead of making changes directly to the system via CLI.

Reviewing and approving of such changes can be done through standard processes such as — pull requests, code reviews, and merges to the master branch. When the changes are approved and later merged to the master branch, an operator software process is accountable for switching the system’s current state to the desired state based on the configuration stored in the newly updated source file.

In a typical GitOps implementation, manual changes are not allowed, and all changes to the configuration should be done to files put in Git. In a severe case, authority to change the system is given just to the operator software process.

What GitOps grants?

  • Improved developer productivity and experience by saving time and effort. By pushing code, not containers.
  • Increased speed with continuous deployment automation.
  • Improved CI/CD endurance since it provides an easy tracking mechanism.
  • Highly available and cost-efficient with low downtimes.
  • Higher security since Git used as a single source of truth.
  • Consistency and uniformity of end-to-end workflows.
  • More robust workflow since Git is used to track and manage changes.

How GitOps is compared with the traditional operations?

The below image should be easy to follow,

No alt text provided for this image

Image courtesy of VMware.

It is also considered that GitOps empowers the shifting security left approach. A simple diagram of how DevOps pipeline compares with the GitOps one is shown below.

No alt text provided for this image

Image courtesy of TechTarget

Read some amazing articles on GitOps:

My prediction is - GitOps will flourish and will make a huge impact in the DevOps space.

What do you think? Let me know in the comments.

Dheeraj Khanna

VP-SRE, DevOps, and Cloud Product Security at NetApp Ex-Google, Ex-Workday Ex-Oracle

2 年

Great Article Pavan Belagatti loved your level of detail and the simplicity in which it was explained!

Frederik De Breuck

Driving Customer Success with Breakthrough Innovation | Head of Innovation & Technology at Fujitsu Benelux | AI, Blockchain & Sustainability Expert | Follow for Strategy & Leadership insights

2 年

要查看或添加评论,请登录

社区洞察

其他会员也浏览了