1. GNOME ASIA SUMMIT 2021
Next Level
DevOps Implementation
with GitOps
Ramadoni Ashudi
ramadoni.ashudi@gmail.com
20-21 November 2021
2. Hello! I’m Ramadoni
➔ IT Infra & Cloud Automation at
Commonwealth Bank Indonesia
➔ Student of Magister Informatics
Engineering at Universitas AMIKOM
Yogyakarta
https://github.com/invaleed
3. 1
Agenda
➔ What is DevOps?
➔ What is GitOps?
➔ GitOps Principals
➔ How GitOps Works?
➔ Advantage of GitOps
➔ Best Practices of GitOps
➔ GitOps Tools
➔ Demo
4. What is DevOps?
DevOps is the combination of cultural philosophies,
practices, and tools that increases an organization’s
ability to deliver applications and services at high
velocity
https://aws.amazon.com/devops/what-is-devops/
6. Basic Concepts of DevOps Practices
Manual
Automatic
1
2
3
Result
Result
7. What is GitOps?
GitOps is a way of implementing Continuous
Deployment for cloud native applications.
https://www.gitops.tech/#what-is-gitops
8. What is GitOps?
GitOps: versioned CI/CD on top of declarative
infrastructure.
- Kelsey Hightower -
9. What is GitOps?
Set of practices to manage infrastructure and
application deployment using Git as a single source
of truth with declarative model
10. 1
GitOps
Principles
➔ Describe the entire system
declaratively
➔ The desired system state is versioned
in Git
➔ Automatically apply approved
changes to the system
➔ Ensure correctness and alert on
divergence with software agents
Source: https://www.weave.works
13. How GitOps
Works?
➔ GitOps architecture enables
developers to manage
infrastructure operations using Git
as the only source of truth.
➔ Gitops uses the operator as a
deployment synchronizer that will
always compare the desired state
and the actual state.
16. Advantages of
GitOps
➔ Faster Time to Market
➔ Improve Security
➔ More Reliable
➔ Improved Developer Experience
➔ Auditable
➔ Standardized Operations across the
Infrastructure
17. GitOps Best
Practices
➔ Split Repo: One For App Repository,
Another For Environment/Config
Repository
➔ Test the Manifests Before Commit
➔ Git Manifests Should Not Change Due
To External Changes
➔ Plan How to Manage Secrets
18. GitOps Tools ➔ Flux CD - https://fluxcd.io
➔ Argo CD - https://argoproj.github.io/cd
➔ Jenkins X - https://jenkins-x.io