What is GitOps ?
GitOps
- implementation of CD (Continuous Delivery) on cloud infra
- focused on developers using :
- Git
- CD tool(s) & automated pipeline
- IaC (Infra as Code) & configuration
- Implementation
- Manage 2 repos
- Source code & manifests
- Deployment configs
- Use one of the 2 deployment strategy
- Push based
- Code pushed > trigger pipeline > build & push container image > update env config repo > trigger deploy pipeline
- Pull based (preferred, more secure)
- Code pushed > trigger pipeline > build & push container image > update env config repo
- Operator observes the changes in env repo > update infra
- Operator observes the changes in image registry > deploy new version
- Deploy on different environments when specific branches are updated
- Prerequisites
- Git
- Infra manageable by IaC
- Kubernetes (Operators for pull-based deployment)
- Tools for GitOps
- ArgoCD : K8S operator with an UI
- JenkinsX : CD on K8S
- Flux : K8S operator
- GitKube : build/deploy docker images on K8S
- Helm operator : K8S operator with Helm
No comments:
Post a Comment
Note: only a member of this blog may post a comment.