aster.cloud aster.cloud
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
    • Learning
  • Tools
  • About
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
    • Learning
  • Tools
  • About
aster.cloud aster.cloud
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
    • Learning
  • Tools
  • About
  • DevOps
  • Software

Solving Configuration Drift Using GitOps With Argo CD

  • aster.cloud
  • December 18, 2020
  • 5 minute read

Argo CD (part of the Argo project) is a deployment solution for Kubernetes that follows the GitOps paradigm.

 


Partner with aster.cloud
for your next big idea.
Let us know here.



From our partners:

CITI.IO :: Business. Institutions. Society. Global Political Economy.
CYBERPOGO.COM :: For the Arts, Sciences, and Technology.
DADAHACKS.COM :: Parenting For The Rest Of Us.
ZEDISTA.COM :: Entertainment. Sports. Culture. Escape.
TAKUMAKU.COM :: For The Hearth And Home.
ASTER.CLOUD :: From The Cloud And Beyond.
LIWAIWAI.COM :: Intelligence, Inside and Outside.
GLOBALCLOUDPLATFORMS.COM :: For The World's Computing Needs.
FIREGULAMAN.COM :: For The Fire In The Belly Of The Coder.
ASTERCASTER.COM :: Supra Astra. Beyond The Stars.
BARTDAY.COM :: Prosperity For Everyone.

Deploying to Kubernetes with Argo CD

In the most basic scenario, Argo CD continuously monitors a Git repository with Kubernetes manifests (Helm and Kustomize are also supported) and listens for commit events.

When a commit happens (usually one that updates the versions of the image artifacts), Argo CD starts a “synchronization” process that is responsible for bringing the cluster configuration in the same state as described in Git.

When the sync process is complete we know that the application configuration is exactly the same as the Git manifests.

The Argo CD deployment process is the embodiment of the central ideas behind GitOps:

  • All application configuration is stored in Git (usually in a separate repository than the source code)
  • Deployments are happening in a “pull” manner where the cluster is fetching manifests from Git (instead of traditional solutions where updates are “pushed” to the cluster)
  • A deployment is a reconciliation process between the two states (what is described in Git versus what is deployed in the cluster)

Even though the sync process is vital for performing the initial deployment of the application, one of the true strengths of Argo CD is the continuous monitoring of both states (cluster and Git) *after* the deployment takes place. This continuous monitoring is very important for solving configuration drift which is a very common issue in organizations with a large number of deployment targets.

 

Configuration drift between different Kubernetes clusters

Configuration drift is a problem that existed even with traditional Virtual Machines and it has plagued production deployments long before Kubernetes appeared on the scene. The problem manifests itself when the CI/CD platform performs a deployment to multiple targets and it fails because a set of machines that were supposed to be similar are in fact differently configured.

Read More  5 Things Developers Need To Know About Kubernetes Management

In several organizations, developers use a “staging” environment to test their application right before it is deployed in production. Ideally, the staging environment should match the configuration of the production one, so that developers are confident that any testing they perform in staging will closely match the production environment.

Specifically with Kubernetes clusters, it is very common for teams to use ad-hoc commands (i.e. via `kubectl`) to perform changes on a cluster that are completely outside of the CI/CD process.

These ad hoc changes are a major issue for application deployments. Differences in configuration are one of the most common causes of failed deployments. An application that is passing all tests with flying colors in a staging environment, results in a broken state in production because the required settings were not present or in the expected format.

Another hidden problem that stems from configuration drift is the gradual loss of knowledge on what exactly is deployed on a machine/Node and when exactly was the last change. Argo CD solves this problem by using Git as the source of truth for the present deployment and all past ones.

After a failed deployment, operators and developers are trying to understand the causes of the incident and one of the first questions they ask is “what was the last thing that changed in this cluster”. This question is very hard to answer if uncontrolled changes can happen to the cluster outside of the approved CI/CD process.

 

How Argo CD detects configuration drift issues

Argo CD takes a completely different approach to deployments (the “pull from Git” paradigm). Because all deployments can be traced back to Git commits, the Git commit history is also the cluster deployment history.

Read More  A DevOps Reset For A Multi-Cloud World

Developers can use their favorite Git tools to answer questions like “What was deployed on the cluster last Thursday?” or “What changed between Monday and Thursday this week?”

Let’s say however that a person from the team completely bypasses Argo CD and performs a manual change straight to the cluster using kubectl. Other CI/CD solutions will be completely oblivious to this change, paving the way for a configuration drift issue.

Argo CD will understand instead that something was changed on the cluster and the two states (cluster configuration and Git manifests) are no longer the same. The deployment will instantly be marked as “out-of-sync”.

Argo CD will also dig deeper and even present a nice diff overview of what was changed:

In the example above, Argo CD detected that the port configuration of a service is no longer the same between the cluster and Git.

Once you detect a discrepancy like this you can either manually bring the application to the same state as the Git (performing the sync process again) or instruct Argo CD to automatically sync on its own when it detects configuration changes.

This means that with Argo CD configuration drift (at least for Kubernetes applications) is completely eliminated, especially if the auto-sync behavior is enabled.

Teams that use Argo CD can deploy with confidence because they know that the cluster is in the state it is supposed to be (and that state is also fully described in the Git manifests). Configuration drift is not an issue anymore and keeping staging and production as close as possible is a very easy process.

Read More  Overcoming The Challenges Of Cleaning Up Container Images

 

Combining Argo with a Devops Platform

Apart from the main Argo CD project,  you might also find Argo Rollouts interesting. Argo Rollouts is another Argo project for performing progressive (blue/green/canary) deployments to Kubernetes.

Argo CD and Argo Rollouts are great for handling application deployments but they need to be coupled with a full automation solution that will also handle all other aspects of the software lifecycle such as application builds, unit tests, secret management, and pull request handling, etc.

Argo CD works great for taking care of the actual deployment, but it assumes that the artifact is already created by another solution. This is why we have been working hard to integrate Codefresh and Argo together in order to cover the full software lifecycle and even cover the scenario of pushing automatically a change to the manifest Git repository monitored by Argo (i.e. performing automatic commits and thus practicing Continuous Deployment).

Visit the main Argo Website for more information.

Kostis Kapelonis is a developer advocate at Codefresh, a continuous delivery platform build for Kubernetes and containers. Formerly a Software Engineer, Kostis has years of experience containerizing applications, building CI/CD pipelines, and developing Java applications. He lives in Greece and loves roller skating.

 

Source: CNCF Blog by Kostis Kapelonis


For enquiries, product placements, sponsorships, and collaborations, connect with us at [email protected]. We'd love to hear from you!

Our humans need coffee too! Your support is highly appreciated, thank you!

aster.cloud

Related Topics
  • Argo CD
  • Codefresh
  • GitOps
  • Kubernetes
You May Also Like
men with computer website information and chat bubbles vector illustration
View Post
  • Software
  • Software Engineering

What is an ISV (independent software vendor)?

  • August 27, 2025
Users with laptops working with database. Data storage and organization, information access and management, big data protection concept. Vector isolated illustration.
View Post
  • Architecture
  • DevOps
  • Technology

What is application migration? Examples and best practices

  • August 18, 2025
aster-cloud-erp-bill_of_materials_2
View Post
  • Software
  • Software Engineering

What is an SBOM (software bill of materials)?

  • July 2, 2025
aster-cloud-sms-pexels-tim-samuel-6697306
View Post
  • Programming
  • Software

Send SMS texts with Amazon’s SNS simple notification service

  • July 1, 2025
aster-cloud-website-pexels-goumbik-574069
View Post
  • Programming
  • Software

Host a static website on AWS with Amazon S3 and Route 53

  • June 27, 2025
View Post
  • Software
  • Technology

Canonical Releases Ubuntu 25.04 Plucky Puffin

  • April 17, 2025
View Post
  • Software
  • Technology

IBM Accelerates Momentum in the as a Service Space with Growing Portfolio of Tools Simplifying Infrastructure Management

  • March 27, 2025
Vehicle manufacturing
View Post
  • Software

IBM Study: Vehicles Believed to be Software Defined and AI Powered by 2035

  • December 12, 2024

Stay Connected!
LATEST
  • 1
    Expectations vs. Reality: The AI We Thought We’d Have in 10 Years
    • June 19, 2026
  • digital-nomad-freelancer-worker-2151205464 2
    One paperwork problem – Get your Digital Nomad Visa employment documents fast from UK, EU or Singapore
    • June 16, 2026
  • 3
    Samsung Art Store Brings Art Basel to Homes Worldwide With New Curated Collection
    • June 15, 2026
  • 4
    You Do Not Need to Invest in the IPO of SpaceX, Anthropic, and OpenAI
    • June 10, 2026
  • 5
    The consequences of relying on AI for accurate news
    • June 10, 2026
  • 6
    Connecting AI agents with unstructured data using Google Cloud Storage MCP Servers
    • June 10, 2026
  • 7
    WWDC26: Apple unveils next generation of Apple Intelligence, Siri AI, powerful parental controls, and an expansive set of software improvements
    • June 8, 2026
  • 8
    IBM and Google Cloud Announce Strategic Partnership to Scale AI with Human Expertise and AI‑Powered Delivery
    • June 4, 2026
  • Data center 9
    Data Sovereignty in Spain. It’s Not Just About the Law, It’s About Efficiency
    • June 3, 2026
  • 10
    Ink vs Pixels. What you miss versus what you are actually missing.
    • June 1, 2026
about
Hello World!

We are aster.cloud. We’re created by programmers for programmers.

Our site aims to provide guides, programming tips, reviews, and interesting materials for tech people and those who want to learn in general.

We would like to hear from you.

If you have any feedback, enquiries, or sponsorship request, kindly reach out to us at:

[email protected]
Most Popular
  • 1
    Banks race to patch new cyber vulnerabilities, and other cybersecurity news
    • May 25, 2026
  • pope-leo-xiv-cq5dam-1500.844 2
    Pope Leo XIV to Publish First Encyclical on Artificial Intelligence and Human Dignity on 25 May
    • May 22, 2026
  • 3
    Portfolio to Clients, and is Strengthened by Ongoing Project Glasswing Work
    • May 20, 2026
  • reMarkable Paper Pure 4
    Everything The reMarkable Paper Pure Actually Does
    • May 14, 2026
  • 5
    Scaling cloud and AI: Microsoft Azure’s commitment to Europe’s digital future
    • May 11, 2026
  • /
  • Technology
  • Tools
  • About
  • Contact Us

Input your search keywords and press Enter.