Exam Overview
| Exam Code | DOP-C02 |
| Exam Name | AWS Certified DevOps Engineer- Professional |
| Vendor | Amazon |
| Total Questions | 250 |
| Last Updated | 26-Oct, 2026 |
Why CertsPoint?
- Latest & Verified Questions
- Detailed Explanations
- Regular Updates
- Full-Length Practice Tests
- Boost Your Exam Confidence
PDF Study Materials
Downloadable guides and resources
Practice Tests
Full-length tests with real exam experience
Progress Tracking
Monitor your performance and improvement
Study Anywhere
Access on desktop, tablet, and mobile
Secure Payment
Privacy Protected
Money Back Guarantee
Free DOP-C02 Practice Questions
Explore 12 free practice questions for the Amazon DOP-C02 exam and review the answers and explanations to support your preparation.
-
Question 1
Single answerA company has multiple accounts in an organization in AWS Organizations. The company's
SecOps team needs to receive an Amazon Simple Notification Service (Amazon SNS)
notification if any account in the organization turns off the Block Public Access feature on
an Amazon S3 bucket. A DevOps engineer must implement this change without affecting
the operation of any AWS accounts. The implementation must ensure that individual
member accounts in the organization cannot turn off the notification. Which solution will
meet these requirements?-
Option A:Correct
Designate an account to be the delegated Amazon GuardDuty administrator account.
Turn on GuardDuty for all accounts across the organization. In the GuardDuty administrator
account, create an SNS topic. Subscribe the SecOps team's email address to the SNS topic. In the same
account, create an Amazon EventBridge rule that uses an event pattern for GuardDuty findings and a
target of the SNS topic. -
Option B:Correct
Create an AWS CloudFormation template that creates an SNS topic and subscribes the
SecOps team’s email address to the SNS topic. In the template, include an Amazon EventBridge rule uses an event pattern of CloudTrail activity for s3: PutBucketPublicAccessBlock and a target of the SNS topic. Deploy the stack to every account in the organization by using CloudFormation StackSets.
-
Option C:Correct
Turn on AWS Config across the organization. In the delegated administrator account, create an SNS
topic. Subscribe the SecOps team's email address to the SNS topic. Deploy a conformance pack that
uses the s3-bucket-level-public-access-prohibited AWS Config managed rule in each account and
uses an AWS Systems Manager document to publish an event to the SNS topic to notify the SecOps
team. -
Option D:Correct
Turn on Amazon Inspector across the organization. In the Amazon Inspector delegated
administrator account, create an SNS topic. Subscribe the SecOps team’s email address to the SNS
topic. In the same account, create an Amazon EventBridge rule that uses an event pattern for public
network exposure of the S3 bucket and publishes an event to the SNS topic to notify the SecOps
team
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: C
Explanation
Amazon GuardDuty is primarily on threat detection and response, not configuration monitoring A
conformance pack is a collection of AWS Config rules and remediation actions that can be easily
deployed as a single entity in an account and a Region or across an organization in AWS
Organizations. -
-
Question 2
Multiple answersA company has an organization in AWS Organizations. The organization includes workload accounts
that contain enterprise applications. The company centrally manages users from an operations
account. No users can be created in the workload accounts. The company recently added an
operations team and must provide the operations team members with administrator access to each
workload account.
Which combination of actions will provide this access? (Choose three.)-
Option A:Correct
Create a SysAdmin role in the operations account. Attach the AdministratorAccess policy to the
role. Modify the trust relationship to allow the sts:AssumeRole action from the workload accounts. -
Option B:Correct
Create a SysAdmin role in each workload account. Attach the AdministratorAccess policy to the
role. Modify the trust relationship to allow the sts:AssumeRole action from the operations account. -
Option C:Correct
Create an Amazon Cognito identity pool in the operations account. Attach the SysAdmin role as an
authenticated role. -
Option D:Correct
In the operations account, create an IAM user for each operations team member.
-
Option E:Correct
In the operations account, create an IAM user group that is named SysAdmins. Add an IAM policy
that allows the sts:AssumeRole action for the SysAdmin role in each workload account. Add all
operations team members to the group. -
Option F:Correct
Create an Amazon Cognito user pool in the operations account. Create an Amazon Cognito user for
each operations team member.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: B, D, E
Explanation
-
-
Question 3
Single answerA developer is maintaining a fleet of 50 Amazon EC2 Linux servers. The servers are part of an Amazon
EC2 Auto Scaling group, and also use Elastic Load Balancing for load balancing.
aOccasionally, some application servers are being terminated after failing ELB HTTP health checks. The
developer would like to perform a root cause analysis on the issue, but before being able to access
application logs, the server is terminated.
How can log collection be automated?-
Option A:Correct
Use Auto Scaling lifecycle hooks to put instances in a Pending:Wait state. Create an Amazon
CloudWatch alarm for EC2 Instance Terminate Successful and trigger an AWS Lambda function that
invokes an SSM Run Command script to collect logs, push them to Amazon S3, and complete the
lifecycle action once logs are collected. -
Option B:Correct
Use Auto Scaling lifecycle hooks to put instances in a Terminating:Wait state. Create an AWS Config
rule for EC2 Instance-terminate Lifecycle Action and trigger a step function that invokes a script to
collect logs, push them to Amazon S3, and complete the lifecycle action once logs are collected. -
Option C:Correct
Use Auto Scaling lifecycle hooks to put instances in a Terminating:Wait state. Create an Amazon
CloudWatch subscription filter for EC2 Instance Terminate Successful and trigger a CloudWatch agent
that invokes a script to collect logs, push them to Amazon S3, and complete the lifecycle action once
logs are collected. -
Option D:Correct
Use Auto Scaling lifecycle hooks to put instances in a Terminating:Wait state. Create an Amazon
EventBridge rule for EC2 Instance-terminate Lifecycle Action and trigger an AWS Lambda function
that invokes an SSM Run Command script to collect logs, push them to Amazon S3, and complete the
lifecycle action once logs are collected.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: D
Explanation
When an instance in an Auto Scaling group is about to be terminated, you can use an Auto Scaling lifecycle hook to place it in the Terminating:Wait state, which delays termination and provides time to perform custom actions. An Amazon EventBridge rule can capture the EC2 Instance-terminate Lifecycle Action event and trigger an AWS Lambda function. The Lambda function can then use AWS Systems Manager (SSM) Run Command to execute a script on the instance, collect the application logs, and upload them to Amazon S3. After the logs are safely stored, the Lambda function calls CompleteLifecycleAction to allow the instance termination to proceed. This is the recommended AWS-native solution for automatically preserving logs from instances that are being terminated, making D the correct answer.
-
-
Question 4
Single answerA company hosts a security auditing application in an AWS account. The auditing application uses an
IAM role to access other AWS accounts. All the accounts are in the same organization in AWS
Organizations.
A recent security audit revealed that users in the audited AWS accounts could modify or delete the
auditing application's IAM role. The company needs to prevent any modification to the auditing
application's IAM role by any entity other than a trusted administrator IAM role.
Which solution will meet these requirements?-
Option A:Correct
Create an SCP that includes a Deny statement for changes to the auditing application's IAM role.
Include a condition that allows the trusted administrator IAM role to make changes. Attach the SCP
to the root of the organization. -
Option B:Correct
Create an SCP that includes an Allow statement for changes to the auditing application's IAM role
by the trusted administrator IAM role. Include a Deny statement for changes by all other IAM
principals. Attach the SCP to the IAM service in each AWS account where the auditing application has
an IAM role. -
Option C:Correct
Create an IAM permissions boundary that includes a Deny statement for changes to the auditing
application's IAM role. Include a condition that allows the trusted administrator IAM role to make
changes. Attach the permissions boundary to the audited AWS accounts. -
Option D:Correct
Create an IAM permissions boundary that includes a Deny statement for changes to the auditing
application’s IAM role. Include a condition that allows the trusted administrator IAM role to make
changes. Attach the permissions boundary to the auditing application's IAM role in the AWS
accounts.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: A
Explanation
SCPs (Service Control Policies) are the best way to restrict permissions at the organizational level,
which in this case would be used to restrict modifications to the IAM role used by the auditing
application, while still allowing trusted administrators to make changes to it. Options C and D are not
as effective because IAM permission boundaries are applied to IAM entities (users, groups, and
roles), not the account itself, and must be applied to all IAM entities in the account. -
-
Question 5
Multiple answersA company has an AWS CodePipeline pipeline that is configured with an Amazon S3 bucket in the euwest-1 Region. The pipeline deploys an AWS Lambda application to the same Region. The pipeline
consists of an AWS CodeBuild project build action and an AWS CloudFormation deploy action.
The CodeBuild project uses the aws cloudformation package AWS CLI command to build an artifact
that contains the Lambda function code’s .zip file and the CloudFormation template. The
CloudFormation deploy action references the CloudFormation template from the output artifact of
the CodeBuild project’s build action.
The company wants to also deploy the Lambda application to the us-east-1 Region by using the
pipeline in eu-west-1. A DevOps engineer has already updated the CodeBuild project to use the aws
cloudformation package command to produce an additional output artifact for us-east-1.
Which combination of additional steps should the DevOps engineer take to meet these
requirements? (Choose two.)-
Option A:Correct
Modify the CloudFormation template to include a parameter for the Lambda function code’s zip
file location. Create a new CloudFormation deploy action for us-east-1 in the pipeline. Configure the
new deploy action to pass in the us-east-1 artifact location as a parameter override. -
Option B:Correct
Create a new CloudFormation deploy action for us-east-1 in the pipeline. Configure the new
deploy action to use the CloudFormation template from the us-east-1 output artifact. -
Option C:Correct
Create an S3 bucket in us-east-1. Configure the S3 bucket policy to allow CodePipeline to have
read and write access. -
Option D:Correct
Create an S3 bucket in us-east-1. Configure S3 Cross-Region Replication (CRR) from the S3 bucket
in eu-west-1 to the S3 bucket in us-east-1. -
Option E:Correct
Modify the pipeline to include the S3 bucket for us-east-1 as an artifact store. Create a new
CloudFormation deploy action for us-east-1 in the pipeline. Configure the new deploy action to use
the CloudFormation template from the us-east-1 output artifact.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: A, B
Explanation
A) The CloudFormation template should be modified to include a parameter that indicates the
location of the .zip file containing the Lambda function's code. This allows the CloudFormation
deploy action to use the correct artifact depending on the region. This is critical because Lambda
functions need to reference their code artifacts from the same region they are being deployed in. B.
You would also need to create a new CloudFormation deploy action for the us-east-1 Region within
the pipeline. This action should be configured to use the CloudFormation template from the artifact
that was specifically created for us-east-1. -
-
Question 6
Multiple answersA company has containerized all of its in-house quality control applications. The company is running
Jenkins on Amazon EC2 instances, which require patching and upgrading. The compliance officer has
requested a DevOps engineer begin encrypting build artifacts since they contain company
intellectual property.
What should the DevOps engineer do to accomplish this in the MOST maintainable manner?-
Option A:Correct
Automate patching and upgrading using AWS Systems Manager on EC2 instances and encrypt
Amazon EBS volumes by default. -
Option B:Correct
Deploy Jenkins to an Amazon ECS cluster and copy build artifacts to an Amazon S3 bucket with
default encryption enabled. -
Option C:Correct
Leverage AWS CodePipeline with a build action and encrypt the artifacts using AWS Secrets
Manager. -
Option D:Correct
Use AWS CodeBuild with artifact encryption to replace the Jenkins instance running on EC2
instances.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: D
Explanation
The following are the steps involved in accomplishing this in the most maintainable manner:
Use AWS CodeBuild with artifact encryption to replace the Jenkins instance running on EC2
instances.
Configure CodeBuild to encrypt the build artifacts using AWS Secrets Manager.
Deploy the containerized quality control applications to CodeBuild.
This approach is the most maintainable because it eliminates the need to manage Jenkins on EC2
instances. CodeBuild is a managed service, so the DevOps engineer does not need to worry about
patching or upgrading the service https://docs.aws.amazon.com/codebuild/latest/userguide/security-encryption.html Build artifact
encryption - CodeBuild requires access to an AWS KMS CMK in order to encrypt its build output
artifacts. By default, CodeBuild uses an AWS Key Management Service CMK for Amazon S3 in your
AWS account. If you do not want to use this CMK, you must create and configure a customermanaged CMK. For more information Creating keys. -
-
Question 7
Multiple answersA company's DevOps engineer uses AWS Systems Manager to perform maintenance tasks
during maintenance windows. The company has a few Amazon EC2 instances that require
a restart after notifications from AWS Health. The DevOps engineer needs to implement an
automated solution to remediate these notifications. The DevOps engineer creates an
Amazon EventBridge rule. How should the DevOps engineer configure the EventBridge rule
to meet these requirements?-
Option A:Correct
Configure an event source of AWS Health, a service of EC2. and an event type that
indicates
instance maintenance. Target a Systems Manager document to restart the EC2 instance. -
Option B:Correct
Configure an event source of Systems Manager and an event type that indicates a
maintenance window. Target a Systems Manager document to restart the EC2 instance. -
Option C:Correct
Configure an event source of AWS Health, a service of EC2, and an event type that
indicates instance maintenance. Target a newly created AWS Lambda function that registers an
automation task to restart the EC2 instance during a maintenance window. -
Option D:Correct
Configure an event source of EC2 and an event type that indicates instance
maintenance. Target a newly created AWS Lambda function that registers an automation task to restart the EC2
instance
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: C
Explanation
AWS Health provides real-time events and information related to your AWS infrastructure. It can be
integrated with Amazon EventBridge to act upon the health events automatically. If the maintenance
notification from AWS Health indicates that an EC2 instance requires a restart, you can set up an
EventBridge rule to respond to such events. In this case, the target of this rule would be a Lambda
function that would trigger a Systems Manager automation to restart the EC2 instance during a
maintenance window. Remember, AWS Health is the source of the events (not EC2 or Systems
Manager), and AWS Lambda can be used to execute complex remediation tasks, such as scheduling
maintenance tasks via Systems Manager.
The following are the steps involved in configuring the EventBridge rule to meet these requirements:
Configure an event source of AWS Health, a service of EC2, and an event type that indicates instance
maintenance.
Target a newly created AWS Lambda function that registers an automation task to restart the EC2
instance during a maintenance window.
The AWS Lambda function will be triggered by the event from AWS Health. The function will then
register an automation task to restart the EC2 instance during the next maintenance window. -
-
Question 8
Single answerA company uses AWS Organizations and AWS Control Tower to manage all the company's AWS
accounts. The company uses the Enterprise Support plan.
A DevOps engineer is using Account Factory for Terraform (AFT) to provision new accounts. When
new accounts are provisioned, the DevOps engineer notices that the support plan for the new
accounts is set to the Basic Support plan. The DevOps engineer needs to implement a solution to
provision the new accounts with the Enterprise Support plan.
Which solution will meet these requirements?-
Option A:Correct
Use an AWS Config conformance pack to deploy the account-part-of-organizations AWS Config
rule and to automatically remediate any noncompliant accounts. -
Option B:Correct
Create an AWS Lambda function to create a ticket for AWS Support to add the account to the
Enterprise Support plan. Grant the Lambda function the support:ResolveCase permission. -
Option C:Correct
Add an additional value to the control_tower_parameters input to set the AWSEnterpriseSupport
parameter as the organization's management account number. -
Option D:Correct
Set the aft_feature_enterprise_support feature flag to True in the AFT deployment input
configuration. Redeploy AFT and apply the changes.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: D
Explanation
AWS Organizations is a service that helps to manage multiple AWS accounts. AWS Control Tower is a
service that makes it easy to set up and govern secure, compliant multi-account AWS environments.
Account Factory for Terraform (AFT) is an AWS Control Tower feature that provisions new accounts
using Terraform templates. To provision new accounts with the Enterprise Support plan, the DevOps
engineer can set the aft_feature_enterprise_support feature flag to True in the AFT deployment
input configuration. This flag enables the Enterprise Support plan for newly provisioned accounts. -
-
Question 9
Single answerA DevOps engineer is creating an AWS CloudFormation template to deploy a web service. The web
service will run on Amazon EC2 instances in a private subnet behind an Application Load Balancer
(ALB). The DevOps engineer must ensure that the service can accept requests from clients that have
IPv6 addresses. What should the DevOps engineer do with the CloudFormation template so that IPv6 clients can
access the web service?-
Option A:Correct
Add an IPv6 CIDR block to the VPC and the private subnet for the EC2 instances. Create route table
entries for the IPv6 network, use EC2 instance types that support IPv6, and assign IPv6 addresses to
each EC2 instance. -
Option B:Correct
Assign each EC2 instance an IPv6 Elastic IP address. Create a target group, and add the EC2
instances as targets. Create a listener on port 443 of the ALB, and associate the target group with the
ALB. -
Option C:Correct
Replace the ALB with a Network Load Balancer (NLB). Add an IPv6 CIDR block to the VPC and
subnets for the NLB, and assign the NLB an IPv6 Elastic IP address. -
Option D:Correct
Add an IPv6 CIDR block to the VPC and subnets for the ALB. Create a listener on port 443. and
specify the dualstack IP address type on the ALB. Create a target group, and add the EC2 instances as
targets. Associate the target group with the ALB.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: D
Explanation
it involves adding an IPv6 CIDR block to the VPC and subnets for the ALB and specifying the dualstack
IP address type on the ALB listener. This allows the ALB to listen on both IPv4 and IPv6 addresses, and
forward requests to the EC2 instances that are added as targets to the target group associated with
the ALB. -
-
Question 10
Single answerTo run an application, a DevOps engineer launches an Amazon EC2 instance with public IP addresses
in a public subnet. A user data script obtains the application artifacts and installs them on the
instances upon launch. A change to the security classification of the application now requires the
instances to run with no access to the internet. While the instances launch successfully and show as
healthy, the application does not seem to be installed.
Which of the following should successfully install the application while complying with the new rule?-
Option A:Correct
Launch the instances in a public subnet with Elastic IP addresses attached. Once the application is
installed and running, run a script to disassociate the Elastic IP addresses afterwards. -
Option B:Correct
Set up a NAT gateway. Deploy the EC2 instances to a private subnet. Update the private subnet's
route table to use the NAT gateway as the default route. -
Option C:Correct
Publish the application artifacts to an Amazon S3 bucket and create a VPC endpoint for S3. Assign
an IAM instance profile to the EC2 instances so they can read the application artifacts from the S3
bucket. -
Option D:Correct
Create a security group for the application instances and allow only outbound traffic to the artifact
repository. Remove the security group rule once the install is complete.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: C
Explanation
EC2 instances running in private subnets of a VPC can now have controlled access to S3 buckets,
objects, and API functions that are in the same region as the VPC. You can use an S3 bucket policy to
indicate which VPCs and which VPC Endpoints have access to your S3 buckets 1- -
-
Question 11
Single answerA DevOps engineer is building a continuous deployment pipeline for a serverless
application that uses AWS Lambda functions. The company wants to reduce the customer
impact of an unsuccessful deployment. The company also wants to monitor for issues.
Which deploy stage configuration will meet these requirements?-
Option A:Correct
A. Use an AWS Serverless
Application Model (AWS SAM) template to define the serverless application. Use AWS
CodeDeploy to deploy the Lambda functions with the Canary10Percent15Minutes
Deployment Preference Type. Use Amazon CloudWatch alarms to monitor the health of the
functions. -
Option B:Correct
B. Use AWS CloudFormation to publish a new stack update, and include Amazon
CloudWatch alarms on all resources. Set up an AWS CodePipeline approval action for a
developer to verify and approve the AWS CloudFormation change set. -
Option C:Correct
C. Use AWS
CloudFormation to publish a new version on every stack update, and include Amazon
CloudWatch alarms on all resources. Use the RoutingConfig property of the
AWS::Lambda::Alias resource to update the traffic routing during the stack update. -
Option D:Correct
D. Use
AWS CodeBuild to add sample event payloads for testing to the Lambda functions. Publish
a new version of the functions, and include Amazon CloudWatch alarms. Update the
production alias to point to the new version. Configure rollbacks to occur when an alarm is
in the ALARM state.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: D
Explanation
Use routing configuration on an alias to send a portion of traffic to a second function version. For
example, you can reduce the risk of deploying a new version by configuring the alias to send most of
the traffic to the existing version, and only a small percentage of traffic to the new version.
https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html
The following are the steps involved in the deploy stage configuration that will meet the
requirements:
Use AWS CodeBuild to add sample event payloads for testing to the Lambda functions.
Publish a new version of the functions, and include Amazon CloudWatch alarms.
Update the production alias to point to the new version.
Configure rollbacks to occur when an alarm is in the ALARM state.
This configuration will help to reduce the customer impact of an unsuccessful deployment by
deploying the new version of the functions to a staging environment first. This will allow the DevOps
engineer to test the new version of the functions before deploying it to production.
The configuration will also help to monitor for issues by including Amazon CloudWatch alarms. These
alarms will alert the DevOps engineer if there are any problems with the new version of the functions. -
-
Question 12
Multiple answersAn ecommerce company is receiving reports that its order history page is experiencing
delays in reflecting the processing status of orders. The order processing system consists
of an AWS Lambda function that uses reserved concurrency. The Lambda function
processes order messages from an Amazon Simple Queue Service (Amazon SQS) queue
and inserts processed orders into an Amazon DynamoDB table. The DynamoDB table has
auto scaling enabled for read and write capacity. Which actions should a DevOps engineer take to resolve this delay? (Choose two.)-
Option A:Correct
Check the ApproximateAgeOfOldestMessage metric for the SQS queue. Increase the Lambda
function concurrency limit. -
Option B:Correct
Check the ApproximateAgeOfOldestMessage metnc for the SQS queue Configure a redrive policy
on the SQS queue. -
Option C:Correct
Check the NumberOfMessagesSent metric for the SQS queue. Increase the SQS queue visibility
timeout. -
Option D:Correct
Check the WriteThrottleEvents metric for the DynamoDB table. Increase the maximum write
capacity units (WCUs) for the table's scaling policy. -
Option E:Correct
Check the Throttles metric for the Lambda function. Increase the Lambda function timeout.
Show Answer & Explanation Hide Answer & Explanation
Correct Answer: A, D
Explanation
A: If the ApproximateAgeOfOldestMessages indicate that orders are remaining in the SQS queue for
longer than expected, the reserved concurrency limit may be set too small to keep up with the
number of orders entering the queue and is being throttled. D: The DynamoDB table is using Auto
Scaling. With Auto Scaling, you create a scaling policy that specifies whether you want to scale read
capacity or write capacity (or both), and the minimum and maximum provisioned capacity unit
settings for the table. The ThottledWriteRequests metric will indicate if there is a throttling issue on
the DynamoDB table, which can be resolved by increasing the maximum write capacity units for the
table's Auto Scaling policy. -