CLOUD CONCEPT

Configuration Management

Configuration management is the practice of defining, tracking, and controlling system settings and components so that environments remain consistent with an approved state.

Cloud Concepts Hub →

What is Configuration Management

Configuration management makes infrastructure and application settings repeatable, auditable, and easier to recover when changes cause problems. In the cloud, it is a shared responsibility: the provider configures its underlying infrastructure, while customers manage the settings and software within their control.

Configuration management establishes what a system should contain, how it should be configured, and how changes to that configuration are recorded and controlled. A configuration can include operating system settings, installed software versions, network rules, identity permissions, database parameters, and application options. Engineers define an approved baseline, deploy it consistently, and compare running environments against that baseline to identify unexpected differences.

Under the AWS shared responsibility model, configuration management is a shared control because both AWS and the customer perform it, but for different layers. AWS maintains the configuration of the infrastructure that supports its cloud services, including physical infrastructure and underlying infrastructure devices. Customers are responsible for configuring the resources, applications, and customer-controlled software they deploy. Shared does not mean that both parties jointly approve every setting or that AWS corrects customer misconfigurations automatically.

The exact boundary depends on the service. For an Amazon EC2 instance, AWS manages the underlying hardware and virtualization infrastructure, while the customer manages the guest operating system, installed applications, and security group rules. With a managed database, AWS operates more of the underlying platform, but the customer still controls settings such as permitted network access, database users, and supported database parameters. Choosing a managed service reduces some operational work; it does not remove responsibility for customer-accessible configuration.

A practical workflow starts with an inventory of resources and their owners. Engineers define approved settings in version-controlled templates or configuration policies, review proposed changes, test them outside production, and deploy them through controlled automation. For example, a team might require restricted administrative access, approved software versions, and enabled application logging. Configuration records and change history then help establish which resources meet those requirements and when deviations appeared.

Configuration drift occurs when the actual environment differs from the approved configuration. An emergency console change that opens a firewall rule can create drift even when the original deployment template was secure. Detection should lead to investigation and either remediation or an approved baseline update. Automatic remediation is useful for clear, low-risk violations, but a poorly designed rule can interrupt legitimate traffic or repeatedly undo an intentional operational change.

Automation improves consistency but can also spread an incorrect setting across many resources quickly. Reviews, staged deployments, limited deployment permissions, and recovery procedures reduce that risk. Detection also has limits: tools differ in resource coverage, supported properties, and evaluation timing. A compliant result demonstrates alignment with the rules being checked, not proof that the entire workload is secure.

Configuration management is broader than infrastructure as code, patch management, or change logging. Infrastructure as code describes and provisions resources, patch management updates software, and audit logs record actions; each supports configuration management without replacing it. For exam scenarios, first identify the affected layer, then determine whether AWS or the customer controls its configuration.

Key aspects of Configuration Management

Effective configuration management combines clear ownership, approved baselines, repeatable deployment, configuration history, drift detection, and controlled recovery.

Responsibility boundaries

Identify which configuration layers belong to the provider and which remain under customer control. Reassess the boundary when moving from virtual machines to managed services rather than assuming the same responsibilities apply.

Approved configuration baselines

Define expected settings, software versions, and resource properties before deployment. Baselines give engineers a concrete standard for evaluating consistency and investigating deviations.

Repeatable deployment

Use version-controlled templates and configuration automation to apply approved settings consistently. Test changes before broad deployment because automation can reproduce mistakes as efficiently as correct settings.

Configuration visibility and history

Maintain an inventory and configuration history for resources within the required scope. Combine configuration records with activity logs to investigate what changed and who initiated the change.

Drift detection and remediation

Compare actual settings against approved expectations and investigate differences. Automate remediation where the corrective action is well understood, with safeguards for changes that could disrupt workloads.

Controlled changes and recovery

Review, test, and authorize configuration changes according to their risk. Preserve previous definitions and plan recovery, recognizing that some changes require resource replacement or cannot be reversed without data recovery.

Cloud services for Configuration Management

AWS CloudFormation establishes repeatable resource definitions, while AWS Systems Manager applies and maintains operating system and software settings on managed nodes. AWS Config records supported resource configurations and evaluates selected requirements, helping teams detect deviations from approved expectations. AWS CloudTrail supplies activity records that help explain how those deviations occurred. Together, these services support deployment, observation, investigation, and remediation across customer-controlled layers. Engineers must still define the baselines, configure permissions and coverage, review exceptions, and test corrective actions; using the services does not transfer customer configuration responsibilities to AWS.

AWS Config image AWS Config

AWS Config records configuration information and relationships for supported resource types and can evaluate resources against configured rules. It helps identify deviations, but evaluation coverage depends on the resources, properties, and rules in scope; remediation must be configured separately.

Open AWS Config →
AWS Systems Manager image AWS Systems Manager

AWS Systems Manager helps manage operating systems and software on managed nodes. Capabilities such as State Manager, Inventory, and Automation support desired configurations, visibility, and controlled corrective actions when the required access and node prerequisites are configured.

Open AWS Systems Manager →
AWS CloudFormation image AWS CloudFormation

AWS CloudFormation defines and provisions supported AWS resources through templates, enabling repeatable infrastructure configurations. Change sets help review proposed updates, while drift detection can identify differences for supported resources and properties.

Open AWS CloudFormation →
AWS CloudTrail image AWS CloudTrail

AWS CloudTrail records account activity, including supported API actions that change resource configurations. It helps investigate who made a change and when, but does not define desired settings or enforce configuration baselines.

Open AWS CloudTrail →