Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Next Level DevOps Implementation with GitOps

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for invaleed invaleed
November 21, 2021

Next Level DevOps Implementation with GitOps

Gnome Asia Summit 2021- Online - Malaysia

Avatar for invaleed

invaleed

November 21, 2021
Tweet

More Decks by invaleed

Other Decks in Technology

Transcript

  1. 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
  2. 1 Agenda ➔ What is DevOps? ➔ What is GitOps?

    ➔ GitOps Principals ➔ How GitOps Works? ➔ Advantage of GitOps ➔ Best Practices of GitOps ➔ GitOps Tools ➔ Demo
  3. 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/
  4. Process Culture & MIndset Productivity Efficiency Continuous Integration Continuous Delivery

    Microservices Monitoring & Logging Etc… Bitbucket Jenkins Docker Kubernetes ELK Jira & Confluence Etc… People Tools
  5. What is GitOps? GitOps is a way of implementing Continuous

    Deployment for cloud native applications. https://www.gitops.tech/#what-is-gitops
  6. What is GitOps? Set of practices to manage infrastructure and

    application deployment using Git as a single source of truth with declarative model
  7. 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
  8. 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.
  9. Advantages of GitOps ➔ Faster Time to Market ➔ Improve

    Security ➔ More Reliable ➔ Improved Developer Experience ➔ Auditable ➔ Standardized Operations across the Infrastructure
  10. 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
  11. GitOps Tools ➔ Flux CD - https://fluxcd.io ➔ Argo CD

    - https://argoproj.github.io/cd ➔ Jenkins X - https://jenkins-x.io
  12. Demo ➔ Code Repository: Github ➔ CI Server: Jenkins ➔

    Container Repository: Docker Hub ➔ GitOps Operator: Argo CD ➔ Configuration Manager for K8s: Kustomize ➔ Platfrorm Deployment: Kubernetes Vanilla