{"id":8309,"date":"2026-11-08T22:10:00","date_gmt":"2026-11-08T22:10:00","guid":{"rendered":"https:\/\/www.devopsconsulting.in\/blog\/?p=8309"},"modified":"2026-11-08T22:10:00","modified_gmt":"2026-11-08T22:10:00","slug":"declared-vs-running-primer","status":"publish","type":"post","link":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/","title":{"rendered":"Configuration Drift for Beginners: A Primer With a Mini-Glossary"},"content":{"rendered":"<p>When a company brings in outside help for a digital transformation, one of the first discoveries is usually uncomfortable. The written description of the environment, the diagrams, the wiki pages, the infrastructure code, no longer matches what is actually running. Consultants have a name for the gap: <strong>configuration drift<\/strong>. This primer explains how drift arises, why a regular comparison of &#8220;declared&#8221; against &#8220;observed&#8221; state is the cheapest remedy, and gives you a short glossary so the vocabulary stops being a barrier.<\/p>\n<h2>The core idea in one paragraph<\/h2>\n<p>Every environment has two descriptions. One is what people intended: the templates, the pipeline definitions, the approved change tickets. The other is what exists: the servers answering requests, the settings on each of them, the accounts that can log in. Over time the two diverge, mostly through small, well-meant actions. Reconciliation is simply the act of putting both descriptions side by side on a regular schedule and resolving every difference.<\/p>\n<h2>How drift appears, step by step<\/h2>\n<ol>\n<li>An engineer fixes a production problem by editing a setting directly, intending to update the code afterwards.<\/li>\n<li>The urgent matter passes and the follow-up slips.<\/li>\n<li>Months later a rebuild from code quietly reverses the fix, and the original problem returns.<\/li>\n<\/ol>\n<p>The same story plays out with firewall rules opened for a test and never closed, test servers that outlive their projects, and temporary accounts that become permanent. None of it is negligence. It is what happens when change is fast and records are slow.<\/p>\n<h2>Why the gap costs more the longer it sits<\/h2>\n<p>Evidence from consulting engagements points the same way again and again. A difference found within days usually has one author, one reason, and a one-line fix. A difference found after a year is entangled with later changes, and nobody remembers who touched what. Cost grows with age, so frequency of comparison matters more than sophistication of tooling. A crude weekly check beats an elegant annual one.<\/p>\n<h3>Three reasons a fixed rhythm works<\/h3>\n<ul>\n<li><strong>Freshness.<\/strong> People can still explain recent changes.<\/li>\n<li><strong>Size.<\/strong> A small delta is a task; a large delta is a project.<\/li>\n<li><strong>Trust.<\/strong> Stakeholders believe documents that are visibly kept current.<\/li>\n<\/ul>\n<h2>A simple comparison routine for beginners<\/h2>\n<p>You do not need a large platform to begin. Use this sequence once a week for one environment, then widen the scope.<\/p>\n<ol>\n<li><strong>Export the declared list.<\/strong> Pull the inventory that the code or configuration repository says should exist: servers, services, user accounts, scheduled jobs.<\/li>\n<li><strong>Export the observed list.<\/strong> Ask the platform or the machines themselves what is really there.<\/li>\n<li><strong>Match the two.<\/strong> Anything present in both with identical settings is agreed. Anything in one list only, or differing in value, is a gap.<\/li>\n<li><strong>Classify each gap.<\/strong> Is it an unrecorded improvement (update the code), an unauthorised change (revert it), or leftover clutter (remove it)?<\/li>\n<li><strong>Close it and log the outcome.<\/strong> The log becomes your evidence that the routine works.<\/li>\n<\/ol>\n<p>If you are planning how an outside team will first examine your estate, the article on <a href=\"https:\/\/www.devopsconsulting.in\/blog\/the-blueprint-for-a-successful-devops-consulting-engagement-from-assessment-to-enablement\/\">how a consulting engagement moves from first look to hand-over<\/a> places this comparison inside the wider arc, and the guide to the <a href=\"https:\/\/www.devopsconsulting.in\/blog\/the-role-of-devops-consulting-in-cloud-migration-a-complete-guide\/\">what advisers contribute when systems relocate to a cloud platform<\/a> shows why drift is the main enemy of a clean migration.<\/p>\n<h2>A small worked example<\/h2>\n<p>Imagine the declared list names six web servers, each with the same operating-system patch level and the same short list of administrator accounts. The observed list shows seven servers. The seventh was started during a load test and never shut down. Two of the original six also carry an extra administrator account from a contractor whose engagement ended. That is three gaps from one pass: a stray server to retire, and two accounts to remove. Each fix takes minutes today. Left alone for a year, the stray server would be running unpatched software that nobody remembers owning.<\/p>\n<h2>Mini-glossary<\/h2>\n<p>These terms come up in nearly every drift conversation. Keep them handy.<\/p>\n<ul>\n<li><strong>Declared state:<\/strong> the configuration that code, templates or approved tickets say should exist.<\/li>\n<li><strong>Observed state:<\/strong> the configuration actually present when you inspect the live environment.<\/li>\n<li><strong>Drift:<\/strong> any difference between declared and observed state.<\/li>\n<li><strong>Reconciliation:<\/strong> the repeated process of comparing two sets of records and resolving each difference.<\/li>\n<li><strong>Baseline:<\/strong> a known-good snapshot you compare future states against.<\/li>\n<li><strong>Break-glass change:<\/strong> an emergency manual edit made outside the normal process, which must be recorded afterwards.<\/li>\n<li><strong>Orphaned resource:<\/strong> something still running, and often still billed, that no current project owns.<\/li>\n<li><strong>Control total:<\/strong> a simple count or sum used to confirm two lists contain the same number of items.<\/li>\n<\/ul>\n<h2>Reconciliation outside the server room<\/h2>\n<p>The idea is not limited to infrastructure. Finance teams practise it daily: what was invoiced against what was settled. Software such as <a href=\"https:\/\/paymanagerpro.com\/\">PayManagerPro<\/a>, which handles invoices and payment links and helps finance staff reconcile settlements, applies the same principle to money. Consultants working on transformation programmes often find that the finance reconciliation habit is the easiest cultural model to borrow for technical teams.<\/p>\n<h2>Common beginner mistakes<\/h2>\n<h3>Comparing too rarely<\/h3>\n<p>Quarterly is a review, not a routine. Weekly or even daily comparison keeps each delta small enough to resolve in a coffee break.<\/p>\n<h3>Comparing too much at once<\/h3>\n<p>Start with one slice, such as production web servers. A narrow check run reliably is worth more than a broad one run once.<\/p>\n<h3>Fixing without recording<\/h3>\n<p>If the observed state is corrected but the declared state is not, the next comparison will rediscover the same gap. Always update the source of truth in the same sitting.<\/p>\n<h3>Treating gaps as blame<\/h3>\n<p>Most differences are tidy-minded engineers acting under pressure. Present the list as housekeeping, not as an incident report, and people will bring gaps forward rather than hide them.<\/p>\n<h2>What to measure to know it is working<\/h2>\n<p>Track two plain observations over time: how many differences each pass finds, and how old the oldest unresolved one is. If the first number trends down and the second stays short, your records and your reality are converging. If new gaps keep appearing from the same source, such as manual hotfixes, you have found the process to improve next.<\/p>\n<h2>Summary<\/h2>\n<p>Drift is normal, silent, and cheap to fix when young. The remedy for beginners is a regular, small comparison between declared and observed state, with each difference classified, closed, and logged. Learn the glossary, pick one environment, set a fixed day each week, and let the habit grow from there.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Written plans and live systems drift apart quietly. A beginner primer on comparing declared and observed state on a steady rhythm, plus a short glossary.<\/p>\n","protected":false},"author":8,"featured_media":8310,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[30],"tags":[],"class_list":["post-8309","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops-consulting"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Configuration Drift for Beginners: A Primer With a Mini-Glossary - DevOps Consulting<\/title>\n<meta name=\"description\" content=\"Beginner primer on configuration drift: compare declared and observed state on a regular schedule, with a mini-glossary of the terms consultants use.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Configuration Drift for Beginners: A Primer With a Mini-Glossary - DevOps Consulting\" \/>\n<meta property=\"og:description\" content=\"Beginner primer on configuration drift: compare declared and observed state on a regular schedule, with a mini-glossary of the terms consultants use.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/\" \/>\n<meta property=\"og:site_name\" content=\"DevOps Consulting\" \/>\n<meta property=\"article:published_time\" content=\"2026-11-08T22:10:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2026\/11\/b2a-banner-2655920-banner.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Kabir Malhotra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kabir Malhotra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/\"},\"author\":{\"name\":\"Kabir Malhotra\",\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/#\\\/schema\\\/person\\\/4cff11af81c93e658f55af13b267f093\"},\"headline\":\"Configuration Drift for Beginners: A Primer With a Mini-Glossary\",\"datePublished\":\"2026-11-08T22:10:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/\"},\"wordCount\":1076,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/b2a-banner-2655920-banner.png\",\"articleSection\":[\"DevOps consulting\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/\",\"url\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/\",\"name\":\"Configuration Drift for Beginners: A Primer With a Mini-Glossary - DevOps Consulting\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/b2a-banner-2655920-banner.png\",\"datePublished\":\"2026-11-08T22:10:00+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/#\\\/schema\\\/person\\\/4cff11af81c93e658f55af13b267f093\"},\"description\":\"Beginner primer on configuration drift: compare declared and observed state on a regular schedule, with a mini-glossary of the terms consultants use.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/declared-vs-running-primer\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/b2a-banner-2655920-banner.png\",\"contentUrl\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/b2a-banner-2655920-banner.png\",\"width\":1200,\"height\":630},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/\",\"name\":\"DevOps Consulting\",\"description\":\"DevOps Consulting | SRE Consulting | DevSecOps Consulting | MLOps Consulting\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/#\\\/schema\\\/person\\\/4cff11af81c93e658f55af13b267f093\",\"name\":\"Kabir Malhotra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d77044c5c70611f0b6d1131a1758057dcb873aae1740ec1c40a13a6428461d0b?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d77044c5c70611f0b6d1131a1758057dcb873aae1740ec1c40a13a6428461d0b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d77044c5c70611f0b6d1131a1758057dcb873aae1740ec1c40a13a6428461d0b?s=96&d=mm&r=g\",\"caption\":\"Kabir Malhotra\"},\"url\":\"https:\\\/\\\/www.devopsconsulting.in\\\/blog\\\/author\\\/kabir-malhotra\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Configuration Drift for Beginners: A Primer With a Mini-Glossary - DevOps Consulting","description":"Beginner primer on configuration drift: compare declared and observed state on a regular schedule, with a mini-glossary of the terms consultants use.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/","og_locale":"en_US","og_type":"article","og_title":"Configuration Drift for Beginners: A Primer With a Mini-Glossary - DevOps Consulting","og_description":"Beginner primer on configuration drift: compare declared and observed state on a regular schedule, with a mini-glossary of the terms consultants use.","og_url":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/","og_site_name":"DevOps Consulting","article_published_time":"2026-11-08T22:10:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2026\/11\/b2a-banner-2655920-banner.png","type":"image\/png"}],"author":"Kabir Malhotra","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kabir Malhotra","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/#article","isPartOf":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/"},"author":{"name":"Kabir Malhotra","@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/4cff11af81c93e658f55af13b267f093"},"headline":"Configuration Drift for Beginners: A Primer With a Mini-Glossary","datePublished":"2026-11-08T22:10:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/"},"wordCount":1076,"commentCount":0,"image":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/#primaryimage"},"thumbnailUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2026\/11\/b2a-banner-2655920-banner.png","articleSection":["DevOps consulting"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/","url":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/","name":"Configuration Drift for Beginners: A Primer With a Mini-Glossary - DevOps Consulting","isPartOf":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/#primaryimage"},"image":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/#primaryimage"},"thumbnailUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2026\/11\/b2a-banner-2655920-banner.png","datePublished":"2026-11-08T22:10:00+00:00","author":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/4cff11af81c93e658f55af13b267f093"},"description":"Beginner primer on configuration drift: compare declared and observed state on a regular schedule, with a mini-glossary of the terms consultants use.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.devopsconsulting.in\/blog\/declared-vs-running-primer\/#primaryimage","url":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2026\/11\/b2a-banner-2655920-banner.png","contentUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2026\/11\/b2a-banner-2655920-banner.png","width":1200,"height":630},{"@type":"WebSite","@id":"https:\/\/www.devopsconsulting.in\/blog\/#website","url":"https:\/\/www.devopsconsulting.in\/blog\/","name":"DevOps Consulting","description":"DevOps Consulting | SRE Consulting | DevSecOps Consulting | MLOps Consulting","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.devopsconsulting.in\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/4cff11af81c93e658f55af13b267f093","name":"Kabir Malhotra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d77044c5c70611f0b6d1131a1758057dcb873aae1740ec1c40a13a6428461d0b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d77044c5c70611f0b6d1131a1758057dcb873aae1740ec1c40a13a6428461d0b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d77044c5c70611f0b6d1131a1758057dcb873aae1740ec1c40a13a6428461d0b?s=96&d=mm&r=g","caption":"Kabir Malhotra"},"url":"https:\/\/www.devopsconsulting.in\/blog\/author\/kabir-malhotra\/"}]}},"_links":{"self":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/8309","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/comments?post=8309"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/8309\/revisions"}],"predecessor-version":[{"id":8384,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/8309\/revisions\/8384"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/media\/8310"}],"wp:attachment":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/media?parent=8309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/categories?post=8309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/tags?post=8309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}