AWS Builder Center
How to Pass the AWS Certified Cloud Practitioner Exam: Key Domains, Concepts, and Code Setup

How to Pass the AWS Certified Cloud Practitioner Exam: Key Domains, Concepts, and Code Setup

Whether you are starting your cloud journey or consolidating your knowledge before pursuing Associate-level certifications, this guide breaks down the core domains, essential service comparisons, and a practical Python script to jumpstart your preparation.

Systems Engineer

How to Pass the AWS Certified Cloud Practitioner Exam: Key Domains, Concepts, and Code Setup

The AWS Certified Cloud Practitioner (CLF-C02) exam is the foundational milestone for anyone entering the cloud computing space. It validates an overall understanding of the AWS Cloud platform, covering foundational cloud concepts, core services, security, architecture, pricing, and support models.
Whether you are starting your cloud journey or consolidating your knowledge before pursuing Associate-level certifications, this guide breaks down the core domains, essential service comparisons, and a practical Python script to jumpstart your preparation.

1. Breakdown of Core Exam Domains

The CLF-C02 exam evaluates your knowledge across four primary domains:
  • Domain 1: Cloud Concepts (24%) — Benefits of the AWS Cloud (scalability, elasticity, agility, economies of scale), AWS Well-Architected Framework design principles, and cloud migration strategies (6 Rs).
  • Domain 2: Security and Compliance (30%) — The AWS Shared Responsibility Model, AWS IAM (users, roles, policies), security governance tools, and compliance frameworks.
  • Domain 3: Cloud Technology and Services (34%) — Core infrastructure services (Compute, Storage, Database, Networking), global infrastructure concepts (Regions, Availability Zones, Edge Locations), and cloud management tools.
  • Domain 4: Billing, Pricing, and Support (12%) — AWS pricing models, cost management tools, billing features (Consolidated Billing, AWS Organizations), and AWS Support Plans.

2. Key AWS Services You Must Distinguish

Scenario-based questions often test your ability to select the right service for a given use case:
ServiceCategoryPrimary Purpose
Amazon EC2ComputeVirtual servers in the cloud with full OS control
AWS LambdaComputeServerless code execution without provisioning servers
Amazon S3StorageScalable, highly durable object storage for files and data
Amazon EBSStoragePersistent block storage attached to EC2 instances
Amazon RDSDatabaseManaged relational database service (MySQL, PostgreSQL, etc.)
Amazon DynamoDBDatabaseFully managed NoSQL key-value database
AWS IAMSecurityCentralized management of users, groups, and permissions
AWS CloudTrailGovernanceAuditing API calls and user activity across your account

3. Hands-On Example: Interacting with AWS via Python (boto3)

Understanding how programmatic access works is key for developers. Below is a simple Python script using the boto3 SDK to list S3 buckets and check EC2 instance statuses:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import boto3

def inspect_aws_resources():
# Initialize S3 and EC2 clients
s3 = boto3.client('s3')
ec2 = boto3.client('ec2')

print("--- Amazon S3 Buckets ---")
buckets = s3.list_buckets()
for bucket in buckets.get('Buckets', []):
print(f"- Bucket Name: {bucket['Name']}")

print("\n--- Amazon EC2 Instances ---")
response = ec2.describe_instances()
for reservation in response.get('Reservations', []):
for instance in reservation.get('Instances', []):
print(f"- Instance ID: {instance['InstanceId']} | State: {instance['State']['Name']}")

if __name__ == "__main__":
inspect_aws_resources()
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article