Baby Steps to the World of GitOps
Madhuri D.
Security Automation Consultant @ Fortinet | Ex-Cisco | CKA, Azure | DevNet P | CCNP(S) | NSE-1,2,3,4
As everyday is passing by we are getting new terms frameworks which eventually are being built to make our lives as IT professionals easy and quick. Once such term is Gitops.
If we looks for GitOps in internet we get "GitOps is an operational framework that takes DevOps best practices used for application development such as version control, collaboration, compliance, and CI/CD tooling, and applies them to infrastructure automation."
Mathematically if we see :
GitOps = Infrastructure as Code + Merge Requests + CI/CD
As following diagram, clearly explains in GitOps, Git is used as a source of truth which stores IaC Templates, configuration templates and application code in the repository and based on any defined events it then triggers the respective CI/CD pipeline to build, test and deploy the changes in the respective target location.
Image Source: Binx
To start the journey for the GitOps, as an initial starting point we need to have the basic infrastructure available to learn this frame.
This article is aimed towards guiding for the baby steps towards GitOps.
To set up the basic infrastructure we would need:
Aim: To build a test environment for GitOps.
For this we will be
a. Creating a Custom Jenkins Image File using Docker
b. Deploy Jenkins on Kubernetes Cluster
c. Integrate Jenkins and Github Repository
d. Create a CI Pipeline to be executed on push to the Git Repo
e. Post build complete, it should trigger the terraform pipeline.
Detailed overview of each of the above mentioned steps has been mentioned at
https://youtu.be/AtgOLVGrJC0
Feel free to explore !!
Happy GitOpsifying!!
Helping Organizations defend against new-age cyber threats. CISSP | CISM | CKA | CKS | AWS Security | TOGAF | ISO2K1 LA and others
2 年great video Madhuri! Waiting for more