Practice English vocabulary for infrastructure drift: detecting drift, drift reports, reconciliation runs, disabling drift correction, and drift causing apply failures.
0 / 18 completed
1 / 18
What does 'the infrastructure has drifted from the declared state' mean?
Drift occurs when someone makes a manual change in the cloud console, an automated process modifies a resource, or a provider updates a default setting. The IaC code still describes the old state, creating a discrepancy.
2 / 18
What is a 'drift report that shows 3 manual changes'?
Drift reports are generated by running 'terraform plan' (which shows differences) or by dedicated drift detection tools. Each difference represents a resource that was changed outside of the IaC workflow, indicating drift.
3 / 18
What is a 'reconciliation run that corrects the drift'?
Reconciliation (also called remediation) applies the IaC configuration to override manual changes and restore the declared state. Some tools run reconciliation continuously (GitOps with Flux/ArgoCD for Kubernetes), while others require manual triggering.
4 / 18
Why might a team 'disable drift correction temporarily'?
During incidents, responders often make quick console changes to restore service. Auto-drift correction would immediately revert these changes. Teams disable it temporarily to allow the emergency fix, then codify the change in IaC and re-enable correction.
5 / 18
Why does 'drift cause the next apply to fail'?
Drift can make subsequent applies fail because Terraform's plan was based on the wrong state. For example, if a resource attribute was manually changed and Terraform tries to reference its expected value, it may find a conflict or missing resource.
6 / 18
A team is using Terraform Cloud with Drift enabled. Sarah notices a recent change to the `production_servers` module that's causing issues. The commit message mentions 'manual updates for stability'. Based on this information, what is the MOST likely reason for the observed drift?
Drift occurs when changes are made outside of the configured process. Sarah's observation – a manual change with a specific reason – strongly suggests that an automated Drift correction didn't catch and revert it. Options A & B are incorrect as they describe entirely different scenarios. Option C is possible, but less likely given the commit message.
7 / 18
Mark, a DevOps engineer, is reviewing a PR that introduces a new deployment pipeline using Ansible. The PR includes changes to several infrastructure files. Before merging, he runs a Drift report and sees a high number of changes flagged as 'manual'. What's the *primary* concern this indicates?
A high number of 'manual' drift changes signifies that changes are being made outside of the Drift system's control. This often means manual interventions haven't been properly tracked or reverted by Drift. Option A is a consequence of this issue. Options B & C are possible contributing factors but not the primary concern.
8 / 18
"I need to disable drift correction temporarily before deploying this new database schema," said David from the infrastructure team. What's the *most* plausible reason for this request?
David is likely anticipating a complex deployment that requires significant manual intervention. Disabling drift correction allows him to make changes without Drift immediately flagging them as errors or attempting to revert them – which would cause delays and potentially break the new schema. Options A & B are less likely scenarios given the context.
9 / 18
"The next Terraform apply failed because of drift!" exclaimed John. "The report shows a manual change to the network interface configuration." What is the *immediate* action John should take?
The correct response involves understanding *why* the manual change occurred. John should investigate the root cause (the reason for the manual change) and then create a corresponding update in the Terraform configuration to correctly manage that specific change going forward. Simply reverting the console change is a temporary fix and won't prevent future drift.
10 / 18
A team is using Terraform Cloud with Drift enabled. Sarah notices a recent change to the `production_servers` module that's causing issues. The commit message mentions 'manual updates for stability'. Based on this information, what is the MOST likely reason for the observed drift?
Drift occurs when changes are made outside of the configured process. Sarah's observation – a manual change with a specific reason – strongly suggests that an automated Drift correction didn't catch and revert it. Options A & B are incorrect as they describe entirely different scenarios. Option C is possible, but less likely given the commit message.
11 / 18
Mark, a DevOps engineer, is reviewing a PR that introduces a new deployment pipeline using Ansible. The PR includes changes to several infrastructure files. Before merging, he runs a Drift report and sees a high number of changes flagged as 'manual'. What's the *primary* concern this indicates?
A high number of 'manual' drift changes signifies that changes are being made outside of the Drift system's control. This often means manual interventions haven't been properly tracked or reverted by Drift. Option A is a consequence of this issue. Options B & C are possible contributing factors but not the primary concern.
12 / 18
"I need to disable drift correction temporarily before deploying this new database schema," said David from the infrastructure team. What's the *most* plausible reason for this request?
David is likely anticipating a complex deployment that requires significant manual intervention. Disabling drift correction allows him to make changes without Drift immediately flagging them as errors or attempting to revert them – which would cause delays and potentially break the new schema. Options A & B are less likely scenarios given the context.
13 / 18
"The next Terraform apply failed because of drift!" exclaimed John. "The report shows a manual change to the network interface configuration." What is the *immediate* action John should take?
The correct response involves understanding *why* the manual change occurred. John should investigate the root cause (the reason for the manual change) and then create a corresponding update in the Terraform configuration to correctly manage that specific change going forward. Simply reverting the console change is a temporary fix and won't prevent future drift.
14 / 18
Reviewer: 'This commit introduces a manual change to the firewall rules for increased throughput. Drift reports are showing significant divergence from our intended state. Should I reject this PR or investigate further?', said Emily during a code review.
This question tests understanding of balancing immediate concerns with long-term strategy. Option A is too rigid; blindly rejecting all drift isn't ideal. Option B is dangerous as it ignores potential problems. Option C reflects a responsible approach – investigation and collaboration are key to managing drift effectively. Option D misrepresents standard practice; automatic reversion should be part of the workflow, not the first response.
15 / 18
Slack Message: '@john.doe - Terraform apply failed due to drift! The report shows a manual change to the instance size – someone increased it without triggering an automated scaling event. This is impacting our application performance metrics.' What's the *primary* concern John should address?
The core of this question focuses on understanding the *cause* of the drift. While all options are relevant to some extent, the primary concern is identifying why the manual change occurred and preventing it from happening again. Simply reverting (Option A) doesn't address the underlying problem. Escalating to security (Option C) is premature without evidence of malicious activity.
16 / 18
{
"status": "error",
"message": "Terraform apply failed: Drift detected. Manual change to the security group rules caused an outage.",
"drift_report_url": "https://example.com/drift_reports/12345",
"timestamp": "2024-10-27T10:00:00Z"
}
This question tests interpreting an API response that clearly indicates drift. The crucial element is understanding that the API provides context (the specific changes) via the `drift_report_url`. Reacting blindly (Options A & D) could exacerbate the problem. While contacting the team (Option C) is a good step, it should follow a careful analysis of the response.
17 / 18
'Updated the load balancer health check configuration to improve availability. Manual changes were required due to unexpected traffic patterns.' Based on this description alone, what is a *potential* risk regarding infrastructure drift?
This question highlights a common scenario: manual changes introduced for specific reasons can inadvertently cause drift. The description explicitly states 'manual changes' and 'deviate from the declared state'. This directly contradicts the intended outcome of infrastructure-as-code.
18 / 18
'I spent the morning investigating a Terraform apply failure caused by drift. It turned out someone manually updated the DNS records for our staging environment. We've implemented stricter change controls to prevent this from happening again.' What is the *most important* takeaway from this update for the team?
While automation (Option A) and improved communication (Option C) are valuable long-term goals, the immediate takeaway from a failed apply due to a manual DNS change is that *the current state deviates from the intended configuration*. Reverting the records (Option B), while potentially necessary, isn't the primary lesson – it's treating the symptom without addressing the root cause of the drift.
Practice English vocabulary for infrastructure drift: detecting drift, drift reports, reconciliation runs, disabling drift correction, and drift causing apply failures.
How many exercises are in this module?
This module has 18 multiple-choice exercises, each with instant feedback and a full explanation of the correct answer.
Is this exercise free to use?
Yes. Every exercise on CoderSlingo, including this one, is free to use with no account, sign-up, or paywall.
Do I need to create an account to do these exercises?
No account is required. Just click an option to answer — your score for this session is tracked automatically in the progress bar above.
What happens if I choose the wrong answer?
You'll immediately see which answer was correct, plus a full explanation covering the vocabulary and reasoning behind it — mistakes are where most of the learning happens.
Can I retry the exercises if I want a higher score?
Yes — use the "Try again" button on the results screen to reset and go through all the questions again.
Is my progress saved if I close the page?
No. Progress is tracked only for your current visit; reloading or leaving the page resets the counter. This keeps the exercise simple and account-free.
Where can I find more Infrastructure as Code (IaC) exercises?
Browse the full Infrastructure as Code (IaC) hub for related drills, or check the "Next up" link below to continue with a connected topic.
How is this different from reading an article on the same topic?
Articles explain vocabulary and concepts in prose; this exercise tests and reinforces that vocabulary through active recall with immediate feedback — the two work best together.
Who writes these exercises?
Every exercise is written by the CoderSlingo team, drawing on real workplace English used in IT roles, then reviewed for accuracy and clarity.