Courseiva

SOA-C02 Deployment, Provisioning, and Automation Practice Question

A SysOps administrator uses AWS CloudFormation to deploy a three-tier application. The administrator has a single template that can be used for development, test, and production environments. The only differences between environments are the EC2 instance type and the RDS DB instance class. Which CloudFormation feature should the administrator use to define these environment-specific values without duplicating the template?

⚠ Common exam trap

Many candidates confuse Conditions (which toggle resource creation) with Parameters (which supply variable values), leading them to think Conditions can handle environment-specific instance types when they cannot.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Parameters

Parameters allow you to input environment-specific values (e.g., EC2 instance type, RDS DB instance class) at stack creation or update time without modifying the template. This is the correct feature because the question explicitly requires defining values that differ per environment while reusing a single template.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    Parameters

    Why this is correct

    Parameters are the only mechanism in CloudFormation that lets you pass custom values, such as instance types or DB classes, directly into a template at the time you create or update a stack. By declaring a parameter in the template, AWS CloudFormation prompts the user (or accepts from CLI/API) for a value, which can then be referenced using Ref or Fn::Sub within the template. This makes the same template reusable across multiple environments, like Development and Production, by simply supplying different parameter values on each deployment.

  • ✗

    Conditions

    Why it's wrong here

    Conditions are logical expressions that determine whether a specific resource or property is created, based on the values of parameters, mappings, or other conditions. For example, you might create a condition that creates an RDS instance only if the environment type is 'production'. However, conditions only govern existence—they cannot supply or assign a value like an instance type or DB class to a resource. While they can evaluate parameter values, they are not the mechanism for passing variable inputs into the template.

  • ✗

    Mappings

    Why it's wrong here

    Mappings are static lookup tables embedded in the template itself, often used to resolve values like AMI IDs based on region or to map environment names to predefined instance types. Once defined, mappings are fixed and cannot be overridden or populated by the user at stack creation time—they are for hardcoded, deterministic lookups. To use a mapping you call Fn::FindInMap with a top-level key and a second-level key, but this offers no way to accept a per-deployment input value such as a DB class chosen by the caller.

  • ✗

    Outputs

    Why it's wrong here

    Outputs are used to export or display information about a stack after it has been created or updated, such as the endpoint URL of a load balancer or the ID of a resource. They are designed to return data to the caller (or to other stacks via cross-stack references), not to receive input from the caller. Outputs are irrelevant to configuring resource properties like instance types or DB classes because they are the result of a deployment, not an input to it.

About these practice questions

One of 1,169 original SOA-C02 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This SOA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SOA-C02 exam.