LoginSignup
1
1

More than 1 year has passed since last update.

【合格体験記】AWS Certified DevOps Engineer - Professional に合格しました

Posted at

2021/10/16 に DevOps Professional 試験を受験して無事に合格できました。DevOps Pro 試験に合格するために準備してきたことを書いていきます。

certificate.png

準備期間

合計 5 日間使用しました。内訳は、

対策

DevOps Professional には今のところ(2021/10/17時点で)対策本がないので、 aws のドキュメントと web 問題集、Exam Readiness を使って対策しました。Exam Readiness で DevOps Pro 試験の概要と試験を解く上でのポイントを理解して、DevOps Pro 試験で頻出のサービス(Code系/CloudFormation/AutoScaling)については、aws のドキュメントを一通り軽く流し読みました。その後 web 問題集を使って知識のアウトプットをし、間違えた問題は解説を読んで足りない知識を補充するようにしました。

キーポイントを探す

web 問題集を解く上で意識したことは、問題文のキーポイントを見つけることです。「問題文のキーポイントを見つける」というのは Exam Readiness で提案されていたことです。問題文からキーポイントを見つけることで、解答を絞り込むことができます。

キーポイントを見つけるとはどういうことかというと、例えば、下記のような問題1があったします。

ある企業が AWS CodeCommit を使用して、アプリケーションのソースコードを管理しています。
この企業は AWS CodePipeline を使用して、このアプリケーション用の CI/CD パイプラインを作成しようとしています。CodeCommit リポジトリのマスターブランチに変更が加えられた場合に、このパイプラインを自動開始する必要があります。このアプリケーションには毎日変更が加えられるので、変更後できるだけ速やかにパイプラインを開始する必要があります。

これらの要件を満たすには、どうすればよいですか。

この問題のキーポイントは、

  • AWS CodePipeline を使用して、このアプリケーション用の CI/CD パイプラインを作成
  • CodeCommit リポジトリのマスターブランチに変更が加えられた場合に、このパイプラインを自動開始
  • 変更後できるだけ速やかにパイプラインを開始する必要

この 3 点です。選択肢の中から、CodeCommit の変更を検出し CodePipeline を開始することができるものを選ぶことになります。「変更後できるだけ速やかにパイプラインを開始」とあるので、CodeCommit を定期的に検査、などのスケジュール型のソリューションは、イベント駆動のソリューションよりもパイプラインの実行までにリードタイムがあるので、選択肢から外すことができます。また、CodeCommit の変更を検知するだけで、CodePipeline の実行方法についての説明がない選択肢も外すことができます。このようにして、キーポイントと選択肢を照らし合わせることで解答を絞り込むことができます。

DevOps Pro 試験は問題文が長いので、キーポイントをいかに早く見つけるかが解答時間を短縮するコツになります。

私の場合、75 問解いた時点で残り 50 分でした。その後、フラグを付けた問題を見直し、すべての問題の見直しまでして、10 分ほど時間が余りました。

サービスごとの対策

問題文の中からキーポイントを見つけても、知識がないと選択肢を絞り込むことができないので、aws のドキュメントを読んで知識を蓄えるようにしました。

AutoScaling

トラブルシューティングするために、異常のある Amazon EC2 インスタンスの Auto Scaling の終了を遅らせる方法を教えてください。

blue/green デプロイ

Auto Scaling グループに必要な起動設定の変更

Amazon EC2 Auto Scaling のスケーリングクールダウン

Systems Manager

AWS Systems Manager インベントリ

AWS Systems Manager オートメーション

AWS Systems Manager Patch Manager

CloudFormation

ネストされたスタックは UPDATE_COMPLETE_CLEANUP_IN_PROGRESS、UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS または UPDATE_ROLLBACK_IN_PROGRESS 状態にあります。

クロススタックの参照

UpdatePolicy 属性

カスタムリソース

AWS CloudFormation ベストプラクティス

Service Catlog

プロビジョニングされた製品

IAMアクセスアドバイザー

IAM の最終アクセス時間情報の表示

CodeDeploy

CodeDeploy でデプロイ設定を使用する

AppSpec の「hooks」セクションAWSLambda デプロイメント

Blue/Green デプロイの概要

自動ロールバック

Amazon CloudWatch Events でのデプロイのモニタリング

Blue/Green デプロイ用のアプリケーションを作成する (コンソール)

CloudTrail

グローバルサービスイベントについて

IAM

IAM チュートリアル: AWS アカウント間の IAM ロールを使用したアクセスの委任

Elastic Beanstalk

負荷分散されたスケーラブルな環境

コンテナコマンド

設定ファイル (.ebextensions) による高度な環境のカスタマイズ

Elastic Beanstalk の保存された設定を使用する

S3

クロスリージョンレプリケーションを使用する場合

DynamoDB

グローバルテーブル: DynamoDB を使用した複数リージョンレプリケーション

Lambda

Amazon RDS で AWS Lambda 使用する

AWS Lambda 関数を使用するためのベストプラクティス

CodePipeline

CodePipeline イベントのモニタリング

CodeCommit ソースアクションと CloudWatch Events

RDS

Amazon RDS を使った災害復旧戦略の実装

CloudWatch Logs

サブスクリプションを使用したログデータのリアルタイム処理

CodeCommit

AWS CodeCommit リポジトリイベントの通知を設定する

ECS

CodeDeploy を使用した Blue/Green デプロイ

OpsWorks

カスタムクックブックのインストール

障害復旧

AWSへの迅速な復旧を目的としてパイロットライト

終わりに

スコアレポートでは、「ポリシーと標準の自動化」だけ「改善が必要」でした。ここだけは、別途対策が必要そうです。
次は、SAP に挑戦します。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1