Do one job with two tools and argue for one

applied · 65 min · Objective 5.5

Task

Take a single task and accomplish it with a configuration-management tool and with an infrastructure-as-code tool, then write the honest argument for where the boundary between them belongs.

Steps

  1. Define the task precisely: a host exists, with a package installed, a service running, a configuration file present and a user created.
  2. Do it with infrastructure as code: create the host and pass a bootstrap that configures it. Record the definition and its length in lab/tools/compare.md.
  3. Do it with configuration management: create the host minimally, then bring the inside to the desired state with a playbook or equivalent. Record that definition.
  4. Change one detail -- a different package version -- and apply both again. Record which handled the CHANGE more gracefully and why.
  5. Write the boundary argument: where you would draw the line between the two, and how the answer changes under immutable infrastructure where configuration management moves into image build.

Verify

grep -Eci 'infrastructure as code|provisioning' lab/tools/compare.md
grep -Eci 'configuration management' lab/tools/compare.md
grep -Eci 'immutable' lab/tools/compare.md
grep -Eci 'boundary|line' lab/tools/compare.md

All four non-zero. The immutable case is the one that matters for this course: under it the configuration step moves into the build, and configuring a running instance becomes a change that disappears at the next replacement.

This is an independent study companion for CompTIA Cloud+ CV0-004 and is not produced by or endorsed by CompTIA.