20260420 - What is GitOps and why should you care
GitOps for cloud infrastructure and Kubernetes, explained and demoed with Argo CD and Crossplane on Azure Kubernetes Service. It covers click-ops, infrastructure as code limits, pull-based drift reconciliation, and how the Cosmo Alpaca Business Central toolset uses GitOps across clusters.
- Introduction and housekeeping
- Speaker introductions and agenda
- The problems with click-ops
- Infrastructure as code and its limitations
- GitOps core concepts and principles
- GitOps workflow and implementation
- Drift reconciliation and tools overview
- Architecture and GitOps demo setup
- Creating, modifying and reverting infrastructure changes
- Drift detection workflow and real-world implementation
- Infrastructure, applications, and configurations as code
- When to use GitOps and implementation best practices
- Benefits of GitOps and Q&A on adoption
- Closing remarks and channel information
Overview
The webinar from Areopa explains why click-ops and plain infrastructure as code fall short: manual drift, push-only updates and limited traceability. It then presents GitOps as a declarative, pull-based approach where Git is the single source of truth and a GitOps tool keeps reality matching the definition.
The demo uses Argo CD with Crossplane to create, change, revert and delete Azure Kubernetes Service resources defined as YAML in Git, and to detect drift. The speakers then describe their real-world use for Business Central containers and C# APIs across several clusters, with encrypted secrets, automated version-update pull requests, and advice on when to adopt GitOps and how to start.
Key points
- GitOps is declarative (describe the desired state) and pull-based, unlike push-based infrastructure as code.
- Argo CD connects a Git repository to a cluster; with auto-sync, changes merged in Git are applied without manual steps.
- Drift between Git and actual infrastructure is detected and remediated automatically; when that is not possible (for example, a destructive change would be required), you can monitor it and get a notification.
- Argo CD pruning deletes resources removed from Git, with an optional checkbox confirmation as a safety check.
- Git revert undoes accidental infrastructure changes, and Git history serves as the audit trail.
- Business Central development licenses and other secrets can be stored encrypted in Git and decrypted by Argo CD during sync.
- GitOps suits cloud-native setups and multiple similar environments (test, staging, production); the advice is to research tools, repository structure and access control, then start with a small pilot.
Features
| Feature | Status | At |
|---|---|---|
| GitOps declarative approach | status not stated | 10:20 |
| GitOps pull-based reconciliation | status not stated | 11:16 |
| GitOps drift detection and remediation | status not stated, demoed | 11:47 |
| Infrastructure as Code with versioning | status not stated | 7:31 |
| GitOps workflow | status not stated, demoed | 13:07 |
| Argo CD | status not stated, demoed | 17:05 |
| Crossplane | status not stated, demoed | 16:24 |
| Kubernetes container orchestration | status not stated, demoed | 15:34 |
| Pull request and feature branch workflow | status not stated, demoed | 20:35 |
| Auto-sync capability | status not stated, demoed | 23:04 |
| Git revert for change rollback | status not stated, demoed | 24:28 |
| Resource pruning with safety check | status not stated, demoed | 26:08 |
| Git audit history for infrastructure changes | status not stated, demoed | 26:46 |
| Multi-cluster GitOps management | status not stated, demoed | 27:23 |
| Infrastructure as YAML in Git | status not stated, demoed | 28:33 |
| Application versioning and configuration in Git | status not stated, demoed | 28:56 |
| Encrypted secrets in Git repositories | status not stated, demoed | 29:42 |
| Automated API version updates via pull requests | status not stated, demoed | 30:19 |
| GitOps for infrastructure change reviews | status not stated, demoed | 31:14 |
| GitOps for cloud-native scenarios | status not stated | 31:40 |
| GitOps for similar multi-environment management | status not stated | 32:13 |
| GitOps implementation considerations | status not stated | 32:41 |
| Self-healing infrastructure with drift detection | status not stated | 34:14 |
| Git-based infrastructure workflow using Copilot | status not stated | 34:45 |
| Cosmo Alpaca | status not stated | 27:23 |
AL objects mentioned
As heard in the captions. A name that matches one object page by exact type and name links to it; the others stay as named.
Quotes
- 4:40 “do you still do click ops or are you already using something like infrastructure as code?”
- 6:12 “we don’t have any versioning. So, if you decide at one point, okay, in the past we used to we used this template for”
- 8:12 “of that definition because we can check that code into our git repository like we do with”
- 8:45 “That’s what we will refer to as drift for the rest of the of the presentation, where it basically could happen. I have automatically”
- 10:33 “GitOps is always declarative, so you describe what you want, not how you get there”
Presenters (as heard): Tina Starič, Marcus Littebrant, Tobias Fenster.
