3rd Apr 2023 by Milan Skuhra
ArgoCD
practical usage
About Me
DevOps engineer @solargis
4 principles
-
Declarative Configuration
-
Version Controlled, Immutable Storage
-
Automatic Pull Operations
-
Continuous Reconciliation
GitOps Pipeline
Application
Project
Install ArgoCD
export GIT_REPO=https://github.com/owner/name export GIT_TOKEN=ghp_PcZ...IP0 argocd-autopilot repo bootstrap
Prerequisites:
- Access to kubernetes
- Access token and url to git repository
Demo
Architecture of ArgoCD Autopilot
Secret Management
apiVersion: v1
kind: Secret
metadata:
name: example-database
annotations:
avp.kubernetes.io/path: "apps/data/database"
avp.kubernetes.io/secret-version: "2"
stringData:
username: <username>
password: <password>
inlined: <path:kv/data/mysql#user>:<path:kv/data/mysql#user#2>
Argo CD Vault Plugin
Generating Applications with ApplicationSet
- What is an ApplicationSet?
- When is it best to use the ApplicationSet controller?
- How does an ApplicationSet work and what are the benefits it provides?
- Why do I need a Generator and what types are there?
Generators
Primary generators
- List Generator
- Cluster Generator
-
- Directory Generator
- File Generator
- SCM provider generator
- Pull Request Generator
- Cluster Decision Resource Generator
Combining generators
Other features
- User Management, Auth0, RBAC
- Sync Phases and Waves
-
Ignoring Resources That Are Extraneous
useful for Config Syncer (previously kubed)
Where to start
ArgoCD
By profiprog
ArgoCD
Cloud Native Prague #1 [Mon, Apr 3, 5:30 PM (CEST)]
- 159