3. GitOps
What is GitOps?
GitOps is an operational framework that takes DevOps best practices
used for application development such as
• Version control
• Collaboration
• Compliance
• CI/CD tooling
and applies them to infrastructure automation.
GitOps is used to automate the process of provisioning infrastructure
Rastin Kenarsari
5. GitOps
IaC : Infrastructure as code
(IaC)
IaC: GitOps uses a Git repository as the single
source of truth for infrastructure definitions
Rastin Kenarsari
6. GitOps
MRs: Merge Requests (MRs)
GitOps uses MRs as the change mechanism
for all infrastructure updates.
Rastin Kenarsari
7. GitOps
CI/CD: : Continuous Integration
and Continuous Delivery
GitOps automates infrastructure updates using a Git
workflow with continuous integration and continuous
delivery (CI/CD).
Rastin Kenarsari
8. GitOps
CI/CD: : Continuous Integration
and Continuous Delivery
GitOps automates infrastructure updates using a Git
workflow with continuous integration and continuous
delivery (CI/CD).
Rastin Kenarsari
9. ACM
GitOps Challenge
GitOps allows
for
greater Collabora
tion
Not necessarily
comes naturally for
some individuals
or organizations
A GitOps approval process (“Change by committee” )
Developers make
changes to the
code
Create a merge
request,
Approver merges
these changes
It seem tedious
and time-
consuming to
engineers used to
making quick,
manual changes.
13. ArgoCD
• Uses structural models that describe
the desired application structure and
state, which are interpreted by a
deployment engine to enforce this state
Declarative
Deployment
• Uses procedural models that explicitly
specify a process to be executed
Imparative
Deployment
Rastin Kenarsari
14. ArgoCD
Argo CD is a declarative, GitOps continuous delivery tool
for Kubernetes.
It extends the benefits of declarative specifications and
Git-based configuration management to
• Accelerate deployment
• Lifecycle management of applications
Rastin Kenarsari