AWS DOP-C02 第2章 練習問題(100問)

AWS DOP-C02(DevOps エンジニア プロフェッショナル)第2章の本番形式の練習問題です。

  1. Q1. ある企業が、開発者向けに物理ノートパソコンへの導入手順を AWS Systems Manager Document を使用して提供したいと考えています。導入手順のコードは GitHub に保存されています。開発計画のエンジニアは、Systems Manager Agent のインストールおよび登録、およびノートパソコンへのエージェントの登録を実行する Systems Manager ドキュメントを作成済みです。

    • A. Systems Manager Document を、OS-RunScript コマンドを使用して GitHub からファイルを Amazon S3 にコピーし、その後 sourceType が S3 の OS-DownloadContent プラグインを使用するように設定します。
    • B. Systems Manager Document を、AWS-ConfigurePackage プラグインを使用してインストールアクションを指定し、Git リポジトリを指すように設定します。
    • C. Systems Manager Document を、sourceType が GitHub で、リポジトリ詳細およびソース情報を持つ OS-DownloadContent プラグインを使用するように設定します。
    • D. Systems Manager Document を、aws:softwareInventory プラグインを使用し、Git リポジトリからスクリプトを実行するように設定します。

    この問題を見る →

  2. Q2. ある企業が、災害復旧能力を評価しており、日常運用をサードリージョン(補助 AWS リージョン)へ切り替えることを可能にしたいと考えています。同社は、プライマリリージョンで AWS CodeCommit をソースコード管理ツールとして使用しています。DevOps エンジニアは、企業がサードリージョンでコード開発を行うことを可能にするソリューションを提供する必要があります。企業がサードリージョンを使用する必要が生じた場合、開発者はローカル Git 設定に追加のリモート URL を追加できます。

    • A. サードリージョンに CodeCommit リポジトリを作成します。CodeCommit リポジトリからサードリージョンの CodeCommit リポジトリへ Git ミラー操作を実行する AWS CodeBuild プロジェクトを作成します。CodeBuild プロジェクトを呼び出す AWS Lambda 関数を作成します。プライマリリージョンの CodeCommit リポジトリにおけるマージイベントに反応する Amazon EventBridge ルールを作成し、EventBridge ルールを Lambda 関数の呼び出しに設定します。
    • B. サードリージョンに Amazon S3 バケットを作成します。プライマリリージョンの CodeCommit リポジトリをミラーし、結果を S3 バケットにコピーする AWS Fargate タスクを作成します。Fargate タスクを起動する AWS Lambda 関数を作成します。CodeCommit リポジトリのマージイベントに反応する Amazon EventBridge ルールを作成し、EventBridge ルールを Lambda 関数の呼び出しに設定します。
    • C. サードリージョンに AWS CodeArtifact リポジトリを作成します。プライマリリージョンの CodeCommit リポジトリをソース操作として使用する AWS CodePipeline を作成します。パイプラインにクロスリージョンステージを作成し、CodeCommit リポジトリの内容をパッケージ化し、プルリクエストが CodeCommit リポジトリにマージされたときに CodeArtifact リポジトリに保存します。
    • D. サードリージョンに AWS Cloud9 環境および CodeCommit リポジトリを作成します。プライマリリージョンの CodeCommit リポジトリを AWS Cloud9 環境内のリモートリポジトリとして設定します。サードリージョンの CodeCommit リポジトリを AWS Cloud9 環境に接続します。

    この問題を見る →

  3. Q3. ある企業が、Amazon EC2 インスタンス上で動作するアプリケーションを、Application Load Balancer (ALB) で負荷分散しています。EC2 インスタンスは複数の可用性ゾーンに配置されています。アプリケーションが単一の可用性ゾーンで誤って構成されたため、アプリケーションの部分的な中断が発生しました。

    • A. ALB のクロスゾーンロードバランスを無効化します。Amazon Route 53 Application Recovery Controller を使用して、可用性ゾーンからのリージョン転送を開始します。
    • B. ALB のターゲットグループのクロスゾーンロードバランスを無効化します。Amazon Route 53 Application Recovery Controller を使用して、可用性ゾーンからのリージョン転送を開始します。
    • C. ALB の DNS ホスト名を使用する Amazon Route 53 Application Recovery Controller リソースセットを作成します。可用性ゾーンからリソースセットのリージョン転送を開始します。
    • D. ALB のターゲットグループの ARN を使用する Amazon Route 53 Application Recovery Controller リソースセットを作成します。Elbv2 ターゲットのトラフィックルールを使用する準備状態チェックを作成します。

    この問題を見る →

  4. Q4. ある開発者が、会社の Amazon Elastic Container Service (Amazon ECS) クラスターを管理しています。クラスターは、Auto Scaling グループ内の複数の Amazon EC2 インスタンス上で実行されています。DevOps エンジニアは、タスクの停止を記録・レビューし、エラーを特定するソリューションを実装する必要があります。

    • A. Amazon EventBridge ルールを作成し、タスクのステータス変更をキャプチャします。イベントを Amazon CloudWatch Logs に送信します。CloudWatch Logs Insights を使用して停止したタスクを調査します。
    • B. タスクを、埋め込みメトリクスフォーマットでログデータを書き込むように設定します。これらのログを Amazon CloudWatch Logs に保存します。コンテナインスタンスのメトリクス変更を監視します。
    • C. EC2 インスタンスを、Amazon CloudWatch Logs にログを保存するように設定します。EC2 インスタンスのログデータを使用する CloudWatch Contributor Insights ルールを作成します。Contributor Insights ルールを使用して停止したタスクを調査します。
    • D. EC2 Auto Scaling のライフサイクルフックを、EC2_INSTANCE_TERMINATING スケーリングイベント用に設定します。システムイベントログファイルを Amazon S3 に書き込みます。Amazon Athena を使用してログファイルのエラーをクエリします。

    この問題を見る →

  5. Q5. 高度に規制された企業が、DevOpsエンジニアがAmazon EC2インスタンスにログインすることを、緊急時を除き禁止するポリシーを定めました。DevOpsエンジニアが実際にログインした場合、セキュリティチームには発生後15分以内に通知する必要があります。 この要件を満たすソリューションはどれですか?

    • A. 各EC2インスタンスにAmazon Inspectorエージェントをインストールします。Amazon EventBridgeの通知をサブスクライブし、AWS Lambda関数を呼び出してメッセージがユーザーのログインに関連しているかを確認します。該当する場合は、Amazon SNSを使用してセキュリティチームに通知します。
    • B. 各EC2インスタンスにAmazon CloudWatchエージェントをインストールします。エージェントを構成してすべてのログをAmazon CloudWatch Logsにプッシュし、CloudWatchメトリクスフィルターを設定してユーザーのログインを検索します。ログインが検出された場合は、Amazon SNSを使用してセキュリティチームに通知します。
    • C. Amazon CloudWatch LogsでAWS CloudTrailを設定します。CloudWatch LogsをAmazon Kinesisにサブスクライブします。KinesisにAWS Lambda関数をアタッチしてログを解析し、ログにユーザーのログインが含まれているかを判定します。該当する場合は、Amazon SNSを使用してセキュリティチームに通知します。
    • D. 各Amazon EC2インスタンスにスクリプトを設定し、すべてのログをAmazon S3にプッシュします。S3イベントを設定してAWS Lambda関数を呼び出し、その関数からAmazon Athenaクエリを実行します。Athenaクエリはログインをチェックし、Amazon SNSを使用して結果をセキュリティチームに送信します。

    この問題を見る →

  6. Q6. ある企業が、AWS LambdaおよびAmazon API Gatewayによってサポートされるサーバーレスアーキテクチャを用いたWebおよびモバイルアプリケーションを構築しています。同社は、適切な環境ブランチにAWS CodeCommitリポジトリへコードをプッシュした際に、バックエンドのLambda関数を完全に自動化してデプロイすることを望んでいます。 デプロイパイプラインは以下の要件を満たす必要があります: ・テストおよび本番環境向けに独立したパイプライン ・テスト環境のみへの自動デプロイ

    • A. 新しいAWS CodePipelineサービスを設定します。各環境ごとにCodeCommitリポジトリを作成し、CodePipelineが適切なリポジトリからソースコードを取得するように設定します。デプロイステップを設定して、AWS CloudFormationを使用してLambda関数をデプロイします。
    • B. テストおよび本番環境向けに2つのAWS CodePipeline設定を作成します。本番パイプラインを手動承認ステップ付きで設定します。各環境ごとにCodeCommitリポジトリを作成し、各CodePipelineが適切なリポジトリからソースコードを取得するように設定します。デプロイステップを設定して、AWS CloudFormationを使用してLambda関数をデプロイします。
    • C. テストおよび本番環境向けに2つのAWS CodePipeline設定を作成します。本番パイプラインを手動承認ステップ付きで設定します。各環境ごとにブランチを持つCodeCommitリポジトリを作成し、各CodePipelineがリポジトリ内の適切なブランチからソースコードを取得するように設定します。デプロイステップを設定して、AWS CloudFormationを使用してLambda関数をデプロイします。
    • D. テストおよび本番環境向けにAWS CodeBuild設定を作成します。本番パイプラインを手動承認ステップ付きで設定します。各環境ごとにブランチを持つCodeCommitリポジトリを作成し、Lambda関数のコードをAmazon S3バケットにプッシュします。デプロイステップを設定して、S3バケットからLambda関数をデプロイします。

    この問題を見る →

  7. Q7. ある企業が、複数のAWSアカウントで重要なワークロードを実行しています。これらのアカウントは、単一の組織管理アカウント下のAWS Organizationsで管理されており、すべての機能が有効化されています。同社は、Amazon S3バケットに顧客データを保存しており、これらのS3バケットへのアクセスには複数段階の承認が必要です。 同社は、S3バケットがAWS CLIで使用された際の状況を監視したいと考えています。また、AWSアカウント内で他のアカウントがS3システム上で実行するさまざまな操作を把握し、問題を特定したいと考えています。 これらの要件を満たすソリューションはどれですか?

    • A. 各AWSアカウントでAWS CloudTrailを設定し、Amazon CloudWatch Logsに配信します。すべてのS3バケットのデータイベントログを有効化します。すべてのAWSアカウントでAmazon GuardDutyを使用して異常を検出します。Amazon Athenaを使用して、CloudTrailログから作成されたカスタムメトリクスに対してSQLクエリを実行します。
    • B. AWS Organizationsの管理アカウントでAWS CloudTrailの組織トラッキングを設定し、Amazon CloudWatch Logsに配信します。すべてのS3バケットのデータイベントログを有効化します。すべてのAWSアカウントでAmazon CloudTrailの異常検出機能を使用します。Amazon Athenaを使用して、CloudTrailログから作成されたカスタムメトリクスに対してSQLクエリを実行します。
    • C. AWS Organizationsの管理アカウントでAWS CloudTrailの組織トラッキングを設定し、Amazon CloudWatch Logsに配信します。すべてのS3バケットのデータイベントログを有効化します。すべてのAWSアカウントでAmazon CloudTrailの異常検出機能を使用します。Amazon CloudWatchメトリクスを使用して、CloudTrailログから作成されたカスタムメトリクスに対してSQLクエリを実行します。
    • D. 各AWSアカウントでAWS CloudTrailを設定し、Amazon CloudWatch Logsに配信します。すべてのS3バケットのデータイベントログを有効化します。すべてのAWSアカウントでカスタムソリューションを使用して異常を検出します。Amazon CloudWatchメトリクスを使用して、CloudTrailログから作成されたカスタムメトリクスに対してSQLクエリを実行します。

    この問題を見る →

  8. Q8. ある企業が、AWS Organizationsを使用して各部門ごとに個別のAWSアカウントを作成しています。同社は以下のタスクを自動化する必要があります: ・Linux AMIの定期的なパッチ更新およびゴールデンイメージの生成 ・ゴールデンイメージへの新バージョンのChefエージェントのインストール(必要に応じて) ・新しく生成されたAMIを関係部門のアカウントに提供

    • A. 既存のゴールデンイメージからAmazon EC2インスタンスを起動するスクリプトを作成します。パッチを適用し、新バージョンのChefエージェントをインストールして新しいゴールデンイメージを生成し、その後AMIの権限を変更して、新イメージを部門のアカウントのみと共有します。
    • B. Amazon EC2 Image Builderを使用して、基本Linux AMIおよびChefエージェントのインストールを含むコンポーネントを持つイメージパイプラインを作成します。AWS Resource Access Manager(RAM)を使用して、EC2 Image Builderのイメージを部門のアカウントと共有します。
    • C. 既存のイメージを使用して、AWS Systems Manager Automation RunbookでLinux AMIを更新します。Chefエージェントの更新スクリプトのURLを提供します。AWS Organizationsを使用して、部門のアカウントに以前のゴールデンイメージを置き換えます。
    • D. Amazon EC2 Image Builderを使用して、基本Linux AMIおよびChefエージェントのインストールを含むコンポーネントを持つイメージパイプラインを作成します。AWS Systems Manager Parameter Storeにパラメータを作成し、部門アカウントが参照可能な新しいAMI IDを格納します。

    この問題を見る →

  9. Q9. ある企業が、Amazon API Gatewayを使用して新しいREST APIをデプロイしました。同社はこのAPIをデータへのアクセスに使用しており、APIへのアクセスは同社内の特定のVPCからのみ許可したいと考えています。

    • A. API Gateway APIにアタッチするリソースポリシーを作成および適用します。リソースポリシーを設定して、特定のVPC IDのみを許可します。
    • B. API Gateway APIにセキュリティグループを追加します。インバウンドルールを設定して、特定のVPCのIPアドレス範囲のみを許可します。
    • C. API Gateway APIにアタッチするIAMロールを作成および適用します。IAMロールを設定して、特定のVPC IDのみを許可します。
    • D. API Gateway APIにACL(アクセス制御リスト)を追加します。アウトバウンドルールを設定して、特定のVPCのIPアドレス範囲のみを許可します。

    この問題を見る →

  10. Q10. ある企業が、継続的デリバリー(CD)パイプラインを構築しようとしています。同社はアプリケーションコードをプライベートなGitHubリポジトリに保存しており、アプリケーションコンポーネントをAmazon Elastic Container Service(Amazon ECS)、Amazon EC2、およびAWS Lambdaにデプロイする必要があります。また、パイプラインは手動承認操作をサポートする必要があります。

    • A. AWS CodePipelineとAmazon ECS、Amazon EC2、およびLambdaをデプロイプロバイダーとして併用します。
    • B. AWS CodePipelineとAWS CodeDeployをデプロイプロバイダーとして使用します。
    • C. AWS CodePipelineとAWS Elastic Beanstalkをデプロイプロバイダーとして使用します。
    • D. AWS CodeDeployとGitHubの統合を使用してアプリケーションをデプロイします。

    この問題を見る →

  11. Q11. ある企業が、Auto Scalingグループ内のAmazon EC2インスタンスでアプリケーションを実行しています。最近、EC2インスタンスが正常に起動できない障害が発生し、サポートチームがこの状態を発見しました。EC2インスタンスが正常に起動しない場合、サポートチームはメール通知を受け取りたいと考えています。

    • A. Auto Scalingグループにヘルスチェックを追加し、インスタンスの状態が異常になったときにAWS Lambda関数を呼び出します。
    • B. Auto Scalingグループを構成して、インスタンスの起動に失敗したときにAmazon SNSトピックに通知を送信します。
    • C. Amazon CloudWatchアラームを作成し、AttachInstances Auto Scaling API呼び出しが失敗したときにAWS Lambda関数を呼び出します。
    • D. Amazon EC2上でステータスチェックアラームを作成し、ステータスチェックが失敗したときにAmazon SNSトピックに通知を送信します。

    この問題を見る →

  12. Q12. 開発チームがAWS CodeCommitを使用してアプリケーションコードのバージョン管理を行い、AWS CodePipelineを使用してソフトウェアデプロイを編成しています。チームは、リモートのmainブランチをパイプラインのトリガーとして使用することを決定しました。開発者はコード変更をCodeCommitリポジトリにプッシュしましたが、パイプラインが反応しないことに気づきました。10分経過しても同様でした。この問題を解決するために、次のうちどの措置を講じるべきですか?

    • A. mainブランチ用にAmazon CloudWatch Eventsルールが作成済みか確認します。このルールがパイプラインをトリガーするよう設定されているかを確認します。
    • B. CodePipelineサービスロールがCodeCommitリポジトリへのアクセス権限を持っているか確認します。
    • C. 開発者のIAMロールがCodeCommitリポジトリへのプッシュ権限を持っているか確認します。
    • D. CodePipelineがAmazon CloudWatch Logs内のCodeCommitエラーにより起動できていないか確認します。

    この問題を見る →

  13. Q13. ある企業は複数のAWSアカウントを使用しています。この企業は、Microsoft Azure DevOpsと統合されたAWS ToolkitおよびAWS Single Sign-On(AWS SSO)を採用しています。AWS SSOでは、アクセス制御機能の属性マッピングが有効化されています。属性マッピングのリストには、以下の2つの項目が含まれています。「department」キーは「${path:enterprise.department}」にマッピングされ、「costCenter」キーは「${path:enterprise.costCenter}」にマッピングされます。 現在、すべてのAmazon EC2インスタンスには「department」タグが付与されており、その値は企業内の3つの部門(d1、d2、d3)に対応しています。DevOpsエンジニアは、これらの属性と一致するポリシーを作成したいと考えています。これらのポリシーは、管理作業を最小限に抑え、各Azure ADユーザーが自身の部門名と一致するEC2インスタンスのみにアクセスできるように制限する必要があります。 DevOpsエンジニアは、カスタム許可ポリシーにどの条件キーを含めるべきですか?

    • A. "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": ["department"] } }
    • B. "Condition": { "StringEquals": { "aws:PrincipalTag/department": "${aws:ResourceTag/department}" } }
    • C. "Condition": { "StringEquals": { "ec2:ResourceTag/department": "${aws:PrincipalTag/department}" } }
    • D. "Condition": { "ForAllValues:StringEquals": { "ec2:ResourceTag/department": ["d1", "d2", "d3"] } }

    この問題を見る →

  14. Q14. ある企業は、マルチリージョンアプリケーションをデプロイするために一連の個別のAmazon CloudFormationテンプレートを使用しています。これらのテンプレートは特定の順序でデプロイする必要があります。企業は、テンプレートの規模が当初の予想よりも大幅に増大しており、新しいテンプレートをより効率的にデプロイしたいと考えています。さらに、テンプレートの変更に関する通知をデータエンジニアリングチームに迅速に提供したいと考えています。

    • A. 必要な順序でCloudFormationテンプレートをデプロイするAWS Lambda関数を作成します。スタックポリシーを使用してデータエンジニアリングチームに通知します。
    • B. Amazon S3でCloudFormationテンプレートをホストします。Amazon S3イベントを使用して直接CloudFormation更新をトリガーし、Amazon SNSによる通知を送信します。
    • C. CloudFormation StackSetsを実装し、ドリフト検出を活用してデータエンジニアリングチームへの更新アラートをトリガーします。
    • D. CloudFormationネストスタックおよびスタックセットを活用してデプロイします。Amazon SNSを使用してデータエンジニアリングチームに通知します。

    この問題を見る →

  15. Q15. ある企業は、新しいアプリケーションをAWS上でホストすることを決定しました。この企業は、マルチアカウント戦略を実装する必要があります。DevOpsエンジニアは、AWS Organizations内に新しいAWSアカウントと組織を作成しました。 DevOpsエンジニアは、組織に対してOU構造を作成し、AWS Control Towerを活用してガバナンスを設定しました。 DevOpsエンジニアは、AWS Control Towerのアカウントファクトリによって新規に作成されたアカウントに対して自動的にリソースをデプロイするソリューションを実装したいと考えています。新しいアカウントが作成される際、このソリューションは、対象のOUまたはアカウントに紐づけられたAWS CloudFormationテンプレートおよびSCP(Service Control Policies)を自動的に適用し、アカウントに追加のリソースをデプロイする必要があります。また、すべてのOUは、自動的にControl Towerの登録プロセスに参加する必要があります。 これらの要件を最も自動化された方法で満たすソリューションはどれですか?

    • A. AWS Control Tower向けにAWS Service Catalogを使用します。AWS Service Catalog内でポートフォリオおよび製品を作成します。これらのリソースをプロビジョニングするための細かい権限を付与します。AWS CLIおよびJSONドキュメントを使用してSCPをデプロイします。
    • B. 必要なテンプレートでCloudFormationスタックセットをデプロイします。自動デプロイを有効化します。必要なアカウントにスタックインスタンスを展開します。組織の管理アカウントにCloudFormationスタックセットをデプロイしてSCPをデプロイします。
    • C. CreateManagedAccountイベントを検出するAmazon EventBridgeルールを作成します。AWS Service Catalogを設定し、新規顧客アカウントに対してリソースをデプロイするターゲットとして使用します。AWS CLIおよびJSONドキュメントを使用してSCPをデプロイします。
    • D. AWS Control Tower(CfCT:Customizations for AWS Control Tower)ソリューションのカスタマイズをデプロイします。AWS CodeCommitリポジトリをソースとして使用します。リポジトリ内に、CloudFormationテンプレートおよびSCP JSONドキュメントを含むカスタムパッケージを作成します。

    この問題を見る →

  16. Q16. ある企業は、Amazon EC2インスタンス上でアプリケーションをテストするために単一のAWSアカウントを使用しています。この企業は、AWSアカウントでAWS Configを有効化し、managed ruleであるrestricted-ssh AWS Configルールを有効化しました。 企業は、アカウント内の任意のセキュリティグループがrestricted-sshルールに準拠していない場合に自動監視を行い、カスタマイズされた通知を即座に提供するソリューションを必要としています。このカスタマイズされた通知には、非準拠セキュリティグループの名前およびIDが含まれる必要があります。 DevOpsエンジニアは、Amazon Simple Notification Service(Amazon SNS)トピックを作成し、適切な担当者をそのトピックにサブスクライブさせました。 DevOpsエンジニアは、次に何を行うべきですか?

    • A. restricted-sshルールのNON_COMPLIANT AWS Config評価結果に一致するAmazon EventBridge(Amazon CloudWatch Events)ルールを作成します。EventBridge(CloudWatch Events)ルールにインプットトランスフォーマーを設定します。EventBridge(CloudWatch Events)ルールを設定し、SNSトピックに通知を発行します。
    • B. AWS Configを設定し、restricted-sshルールのすべての評価結果をSNSトピックに送信します。SNSトピックにフィルタリングポリシーを設定し、通知本文に「NON_COMPLIANT」テキストが含まれる場合のみサブスクライバーに通知を送信します。
    • C. restricted-sshルールのNON_COMPLIANT AWS Config評価結果に一致するAmazon EventBridge(Amazon CloudWatch Events)ルールを作成します。EventBridge(CloudWatch Events)ルールを設定し、SNSトピック上でAWS Systems Manager Run Commandを呼び出してカスタム通知を生成し、その通知をSNSトピックに発行します。
    • D. すべてのNON_COMPLIANT AWS Config評価結果に一致するAmazon EventBridge(Amazon CloudWatch Events)ルールを作成します。restricted-sshルールにインプットトランスフォーマーを設定します。EventBridge(CloudWatch Events)ルールを設定し、SNSトピックに通知を発行します。

    この問題を見る →

  17. Q17. ある企業は、新機能の開発にかかる時間を短縮したいと考えています。この企業は、AWS CodeBuildおよびAWS CodeDeployを活用してアプリケーションのビルドおよびデプロイを行っています。各マイクロサービスに対して、独自のCI/CDパイプラインをAWS CodePipelineで構築しています。 企業は、新機能のリリースからデプロイ失敗後の復旧までの平均所要時間について、より詳細な可視性を確保したいと考えています。 この可視性を、最少の設定作業で実現するソリューションはどれですか?

    • A. AWS Lambda関数をスケジュールし、各パイプラインの成功および失敗実行に関する情報を含むAmazon CloudWatchカスタムメトリクスを作成します。5分ごとにAmazon EventBridgeルールを作成し、Lambda関数を呼び出します。このメトリクスを基にCloudWatchダッシュボードを作成します。
    • B. AWS Lambda関数をスケジュールし、各パイプラインの成功および失敗実行に関する情報を含むAmazon CloudWatchカスタムメトリクスを作成します。各成功および失敗実行後に、Lambda関数を呼び出すAmazon EventBridgeルールを作成します。このメトリクスを基にCloudWatchダッシュボードを作成します。
    • C. AWS Lambda関数をプログラムし、成功および失敗実行に関する情報をAmazon DynamoDBに書き込みます。各成功および失敗実行後に、Lambda関数を呼び出すAmazon EventBridgeルールを作成します。Amazon QuickSightダッシュボードを構築し、DynamoDBからの情報を表示します。
    • D. AWS Lambda関数をプログラムし、成功および失敗実行に関する情報をAmazon DynamoDBに書き込みます。5分ごとにAmazon EventBridgeルールを作成し、Lambda関数を呼び出します。Amazon QuickSightダッシュボードを構築し、DynamoDBからの情報を表示します。

    この問題を見る →

  18. Q18. ある企業のセキュリティポリシーでは、本番環境でセキュリティ強化済AMIを使用することが義務付けられています。あるDevOpsエンジニアは、EC2 Image Builderを使用して、反復可能なサイクルでAMIを構築するパイプラインを作成しました。 DevOpsエンジニアは、会社のAuto Scalingグループの起動テンプレートを更新する必要があります。Amazon EC2インスタンスの起動時に、Auto Scalingグループが最新のAMIを使用する必要があります。

    • A. Image Builderから新しいAMIイベントを受信するAmazon EventBridgeルールを設定します。最新のAMI IDでAuto Scalingグループの起動テンプレートを更新するAWS Systems Manager Run Commandドキュメントをターゲットに指定します。
    • B. Image Builderから新しいAMIイベントを受信するAmazon EventBridgeルールを設定します。最新のAMI IDでAuto Scalingグループの起動テンプレートを更新するAWS Lambda関数をターゲットに指定します。
    • C. 起動テンプレートを、AWS Systems Manager Parameter Store内の値をAMI IDとして使用するように設定します。Image Builderパイプラインを設定し、最新のAMI IDでParameter Storeの値を更新します。
    • D. Image Builderの配布設定を構成し、最新のAMIで起動テンプレートを更新します。Auto Scalingグループを最新バージョンの起動テンプレートを使用するように設定します。

    この問題を見る →

  19. Q19. ある企業は、Amazon EC2 Auto Scalingグループ上のAmazon EC2インスタンスでアプリケーションを実行しています。EC2インスタンスはアプリケーションロードバランサー(ALB)の後ろに配置されています。最近、ユーザーが一部のEC2インスタンスにトラフィックを向ける際にエラーが発生し始めました。 DevOpsエンジニアは、Auto Scalingグループが問題のあるインスタンスを「健全」と報告していることを確認しましたが、アプリケーション自体にエラーが存在していました。DevOpsエンジニアが問題を解決した後、ユーザーは問題のあるインスタンス上のアプリケーションエラーが解消されたことを確認しました。 企業は、トラフィックがアプリケーション層で問題を抱えるインスタンスにはルーティングされないようにしたいと考えています。また、トラフィックルーティングに問題が発生した際にサポートチームに通知を受け取ることも希望しています。

    • A. Auto ScalingグループをELBヘルスチェックを使用するように設定します。AWS Configを有効化します。新しいAuto ScalingグループがすべてELBヘルスチェックを使用するよう保証するAWS Configルールを作成します。サポートチームへのトラフィックルーティング設定変更を通知するためのAmazon Simple Notification Service(Amazon SNS)トピックを作成します。AWS Configルールを設定し、このトピックに通知を送信します。
    • B. Auto ScalingグループをEC2ヘルスチェックを使用するように設定します。AWS Configを有効化します。新しいAuto ScalingグループがすべてEC2ヘルスチェックを使用するよう保証するAWS Configルールを作成します。サポートチームへのトラフィックルーティング設定変更を通知するためのAmazon Simple Notification Service(Amazon SNS)トピックを作成します。AWS Configルールを設定し、このトピックに通知を送信します。
    • C. Auto ScalingグループをEC2ヘルスチェックを使用するように設定します。Amazon CloudWatch Synthetics Canaryを使用してアプリケーションを監視するモニタリングアプリケーションを作成します。CloudWatch Canaryの失敗時にトリガーされるCloudWatchアラームを作成します。アラームがALARM状態になった際にサポートチームに通知するようにアラームを設定します。
    • D. Auto ScalingグループをELBヘルスチェックを使用するように設定します。Amazon CloudWatch Synthetics Canaryを使用してアプリケーションを監視するモニタリングアプリケーションを作成します。CloudWatch Canaryの失敗時にトリガーされるCloudWatchアラームを作成します。アラームがALARM状態になった際にサポートチームに通知するようにアラームを設定します。

    この問題を見る →

  20. Q20. ある企業は、アプリケーションを複数のAWSリージョンにデプロイしています。このアプリケーションは、アプリケーションと同じリージョンにあるAmazon S3バケットにオブジェクトを作成・保存します。アプリケーションの各デプロイメントは、各リージョンの対応するS3バケット内のオブジェクトおよびそのメタデータにアクセスする必要があります。企業は、S3バケット間で双方向レプリケーションを設定し、各S3バケットでS3レプリケーションメトリクスを有効化しています。 あるオブジェクトのレプリケーションが失敗した場合、開発エンジニアは、失敗したレプリケーションプロセスを再試行するソリューションを実装する必要があります。

    • A. S3イベント通知による失敗レプリケーションイベントを監視するAmazon EventBridgeルールを作成します。失敗したレプリケーションオブジェクトをダウンロードし、その後そのオブジェクトのs3 cpコマンドをターゲットバケットに対して実行するAWS Lambda関数を作成します。EventBridgeルールを設定し、失敗したオブジェクトを処理するためにLambda関数を呼び出します。
    • B. Amazon Simple Queue Service(SQS)キューを作成します。S3イベント通知を設定し、失敗したレプリケーション通知をSQSキューに送信します。失敗したレプリケーションオブジェクトをダウンロードし、その後そのオブジェクトのs3 cpコマンドをターゲットバケットに対して実行するAWS Lambda関数を作成します。Lambda関数を設定し、キューをポーリングして通知を処理します。
    • C. 失敗したレプリケーションのS3イベント通知を監視するAmazon EventBridgeルールを作成します。失敗したレプリケーションオブジェクトをダウンロードし、その後そのオブジェクトのs3 cpコマンドをターゲットバケットに対して実行するAWS Lambda関数を作成します。
    • D. 失敗したレプリケーションに対して、S3バッチオペレーションを使用して既存オブジェクト上のレプリケーションを再試行するソリューションを開発します。S3イベント通知を設定し、失敗したレプリケーション通知をLambda関数に送信します。

    この問題を見る →

  21. Q21. ある企業は、AWS OrganizationとAWS Control Towerを使用して、複数のAWSアカウントを管理しています。この企業はEnterprise Supportプランを利用しています。 DevOpsエンジニアがTerraform Account Factory for Terraform(AFT)を使用して新しいアカウントをプロビジョニングしています。新しいアカウントが作成された後、DevOpsエンジニアはそのアカウントのサポートプランがBasic Supportに設定されていることに気づきました。DevOpsエンジニアは、新しいアカウントに対してEnterprise Supportプランを自動的に適用するソリューションを実装する必要があります。 これらの要件を満たすソリューションはどれですか?

    • A. AWS Configのコンプライアンスパッケージを使用して、Account Factory for Terraform(AFT)の組織レベルでAWS Configルールを展開し、非準拠アカウントを自動的に修正します。
    • B. AWS Supportチケットを作成するAWS Lambda関数を作成します。Lambda関数にはSupport:ResolveCase権限を付与します。
    • C. control_tower_parameters入力に追加の値を設定し、AWSEnterpriseSupportパラメータをOrganizationの管理アカウントに設定します。
    • D. AFTデプロイ入力構成でaft_feature_enterprise_support機能フラグをTrueに設定します。その後、AFTを再デプロイして変更を適用します。

    この問題を見る →

  22. Q22. ある企業が、自社のアプリケーションをオンプレミス環境からAWSへ最近移行しました。このアプリケーションは、Amazon API Gatewayの背後に配置されたApplication Load Balancerのさらに背後に、Amazon EC2インスタンス上でホストされています。企業は、アプリケーションの新バージョンをデプロイする際に、ユーザーへの影響を最小限に抑えたいと考えています。また、問題が発生した場合に迅速にロールバックできるようにしたいと考えています。 これらの要件を満たすために、アプリケーションに対する変更を最小限に抑えるソリューションはどれですか?

    • A. 既存の環境と並行して独立した新環境を導入します。API Gatewayを構成して、カナリアリリースデプロイメントを使用し、一部のユーザートラフィックを新環境に送信します。
    • B. 既存の環境と並行して独立した新環境を導入します。アプリケーションのDNSエイリアスレコードを更新して、新環境を指すようにします。
    • C. 既存のApplication Load Balancerの背後に、別個のターゲットグループとして変更を導入します。API Gatewayを構成して、ユーザーのトラフィックを段階的に新しいターゲットグループにルーティングします。
    • D. 既存のApplication Load Balancerの背後に、別個のターゲットグループとして変更を導入します。API Gatewayを構成して、すべてのトラフィックをApplication Load Balancerにルーティングし、その後ALBがトラフィックを新しいターゲットグループに送信するようにします。

    この問題を見る →

  23. Q23. AWS上で多数のワークロードを実行している企業のAmazon EBSコストが、時間の経過とともに増加しています。DevOpsチームは、多数の未アタッチEBSボリュームが存在することに気づきました。これらの未アタッチボリュームのうち、14日以上経過したものはすでに不要であることが確認されています。DevOpsエンジニアは、14日以上アタッチされていない未アタッチEBSボリュームを自動的に削除する仕組みを構築する必要があります。 この要件を実現するソリューションはどれですか?

    • A. AWS Configのec2-volume-inuse-checkマネージドルールを使用し、構成変更トリガーとAmazon EC2ボリュームリソースターゲットを指定します。新しいAmazon CloudWatch Eventsルールを作成し、14日ごとに実行されるAWS Lambda関数をスケジュールして、指定されたEBSボリュームを削除します。
    • B. Amazon EC2およびAmazon Data Lifecycle Managerを使用してボリュームライフサイクルポリシーを構成します。未アタッチEBSボリュームの間隔を14日に設定し、保持ルールを削除に設定します。ポリシーのターゲットボリュームを「*」に設定します。
    • C. Amazon CloudWatch Eventsルールを作成し、毎日AWS Lambda関数を実行します。Lambda関数は未アタッチEBSボリュームを検出し、現在日付でタグ付けし、タグの日付が14日以上前の未アタッチボリュームを削除します。
    • D. AWS Trusted Advisorを使用して、14日以上アタッチされていないEBSボリュームを検出します。AWS Lambda関数を実行してスナップショットを作成し、その後EBSボリュームを削除します。

    この問題を見る →

  24. Q24. ある企業が、AWS CodeDeployを使用して、Apache Webサーバー上で実行されるJava-Apache Tomcatアプリケーションのデプロイを自動化しています。開発チームは、まず開発環境向けにデプロイグループを作成し、機能テストを実行します。アプリケーションの開発が完了した後、ステージングおよび本番環境向けに追加のデプロイグループを作成します。 現在、Apache設定内でログレベルが構成されていますが、チームはデプロイ時にこの設定を動的に変更したいと考えています。これにより、各デプロイグループごとに異なるログレベル設定を適用でき、各グループごとにアプリケーションの修正を行う必要がなくなります。 これらの要件を、最小限の管理負荷で満たすにはどうすればよいでしょうか?また、各デプロイグループごとに異なるスクリプトバージョンを使用する必要はありません。

    • A. Amazon EC2インスタンスにデプロイグループのタグを付与します。その後、アプリケーションリビジョン内に、メタデータサービスおよびEC2 APIを呼び出すスクリプトを配置し、そのインスタンスがどのデプロイグループに属するかを識別します。この情報を使用してログレベル設定を構成します。appspec.ymlファイル内で、このスクリプトをAfterInstallライフサイクルフックの一部として参照します。
    • B. CodeDeploy環境変数DEPLOYMENT_GROUP_NAMEを使用して、インスタンスが属するデプロイグループを識別するスクリプトを作成します。この情報を使用してログレベル設定を構成します。appspec.ymlファイル内で、このスクリプトをBeforeInstallライフサイクルフックの一部として参照します。
    • C. 各環境ごとにCodeDeployカスタム環境変数を作成し、アプリケーションリビジョン内にこの環境変数をチェックするスクリプトを配置して、インスタンスがどのデプロイグループに属するかを特定します。この情報を使用してログレベル設定を構成します。appspec.ymlファイル内で、このスクリプトをValidateServiceライフサイクルフックの一部として参照します。
    • D. CodeDeploy環境変数DEPLOYMENT_GROUP_IDを使用して、インスタンスが属するデプロイグループを識別するスクリプトを作成し、ログレベル設定を構成します。appspec.ymlファイル内で、このスクリプトをInstallライフサイクルフックの一部として参照します。

    この問題を見る →

  25. Q25. ある企業が、電子商取引Webアプリケーションを通じて書籍を販売しています。同社は、書籍取引の詳細を示すパイチャートを表示するダッシュボードを希望しています。また、このダッシュボードを既存のAmazon CloudWatchダッシュボードと統合したいと考えています。 これらの要件を最も効率的に満たすソリューションはどれですか?

    • A. 電子商取引アプリケーションを更新し、処理された各トランザクションについてCloudWatchロググループにJSONオブジェクトを送信します。CloudWatch Logs Insightsを使用してロググループをクエリし、パイチャート形式で結果を表示します。結果を必要なCloudWatchダッシュボードに追加します。
    • B. 電子商取引アプリケーションを更新し、処理された各トランザクションについてAmazon S3バケットにJSONオブジェクトを送信します。Amazon Athenaを使用してS3バケットをクエリし、パイチャート形式で結果を表示します。Athenaから結果をエクスポートし、必要なCloudWatchダッシュボードに追加します。
    • C. 電子商取引アプリケーションを更新し、AWS X-Rayによるトレーシングを有効にします。新しいX-Rayサブセグメントを作成し、処理された各トランザクションに注釈を追加します。X-Rayトレースを使用してデータをクエリし、パイチャート形式で結果を表示します。結果を必要なCloudWatchダッシュボードに追加します。
    • D. 電子商取引アプリケーションを更新し、処理された各トランザクションについてCloudWatchロググループにJSONオブジェクトを送信します。AWS Lambda関数を作成し、集計結果をAmazon DynamoDBに書き込みます。ログファイルに対してLambdaサブスクリプションフィルターを作成します。結果を必要なCloudWatchダッシュボードに追加します。

    この問題を見る →

  26. Q26. ある企業が、API経由で受信した注文を処理するAWS Lambda関数を開発しました。同社は、CI/CDパイプラインの最終ステップとしてAWS CodeDeployを使用してLambda関数をデプロイしています。 DevOpsエンジニアは、デプロイ直後の数秒間に注文APIで一時的な障害が発生することに気づきました。調査の結果、この障害は、Lambda関数が呼び出される前にデータベースの変更が完全に反映されていなかったためであることが判明しました。 DevOpsエンジニアは、この問題をどのように解決すべきですか?

    • A. AppSpecファイルにBeforeAllowTrafficフックを追加し、必要なデータベース変更が完了するまで待機・テストを行い、その後で新バージョンのLambda関数にトラフィックを流します。
    • B. AppSpecファイルにAfterAllowTrafficフックを追加し、新バージョンのLambda関数が応答を開始する前に、保留中のデータベース変更が完了するまで待機させます。
    • C. AppSpecファイルにBeforeInstallフックを追加し、Lambda関数の新バージョンをデプロイする前に、必要なデータベース変更が完了するまで待機・テストを行います。
    • D. AppSpecファイルにValidateServiceフックを追加し、着信トラフィックをチェックし、データベースなどの関連サービスが準備完了でない場合はペイロードを拒否します。

    この問題を見る →

  27. Q27. 開発者は、50台のAmazon EC2 Linuxサーバーから構成されるクラスターを保守しています。これらのサーバーは、Amazon EC2 Auto Scalingグループの一部であり、Elastic Load Balancingを使用して負荷分散されています。 あるとき、いくつかのアプリケーションサーバーがELBのHTTPヘルスチェックに失敗した後に終了しました。開発者はこの問題の根本原因を分析したいと考えていますが、サーバーが終了する前にアプリケーションログにアクセスできません。 ログ収集をどのように自動化すればよいですか?

    • A. Auto Scalingライフサイクルフックを使用して、インスタンスをPending:Wait状態に設定します。EC2 Instance Terminate SuccessfulのAmazon CloudWatchアラームを作成し、AWS Lambda関数をトリガーしてSSM Run Commandスクリプトを呼び出してログを収集し、Amazon S3にプッシュした後、ライフサイクル操作を完了します。
    • B. Auto Scalingライフサイクルフックを使用して、インスタンスをTerminating:Wait状態に設定します。EC2インスタンス終了ライフサイクル操作のAWS Configルールを作成し、Step Functionsをトリガーしてログ収集スクリプトを呼び出し、Amazon S3にプッシュした後、ライフサイクル操作を完了します。
    • C. Auto Scalingライフサイクルフックを使用して、インスタンスをTerminating:Wait状態に設定します。EC2 Instance Terminate SuccessfulのAmazon CloudWatchサブスクリプションフィルターを作成し、CloudWatchエージェントをトリガーしてログ収集スクリプトを呼び出し、Amazon S3にプッシュした後、ライフサイクル操作を完了します。
    • D. Auto Scalingライフサイクルフックを使用して、インスタンスをTerminating:Wait状態に設定します。EC2インスタンス終了ライフサイクル操作のAmazon EventBridgeルールを作成し、AWS Lambda関数をトリガーしてSSM Run Commandスクリプトを呼び出してログを収集し、Amazon S3にプッシュした後、ライフサイクル操作を完了します。

    この問題を見る →

  28. Q28. ある企業が、AWS CodeBuildプロジェクト内でDockerコマンドを実行してコンテナイメージをビルドしています。コンテナイメージのビルド後、CodeBuildプロジェクトはそのイメージをAmazon S3バケットにアップロードします。CodeBuildプロジェクトは、S3バケットへのアクセス権限を持つIAMサービスロールを使用しています。 DevOpsエンジニアは、S3バケットの代わりにAmazon Elastic Container Registry(Amazon ECR)リポジトリを使用してコンテナイメージを保存するよう変更する必要があります。DevOpsエンジニアは、CodeBuildプロジェクトと同じAWSリージョンにECRプライベートイメージリポジトリを作成しました。また、新しいECRリポジトリへのアクセスに必要な権限をIAMサービスロールに追加しました。さらに、buildspec.ymlファイル内のdocker buildおよびdocker pushコマンドに新しいリポジトリ情報を反映させました。 CodeBuildプロジェクトが実行されると、ECRリポジトリへのアクセスを試みる際に失敗します。 ECRリポジトリへのアクセス失敗を解決するソリューションはどれですか?

    • A. buildspec.ymlファイルを更新し、AWS CLIコマンド`aws ecr get-login-password`を使用してECRリポジトリにログインし、認証トークンを取得します。docker loginコマンドを更新し、この認証トークンを使用してECRリポジトリにアクセスします。
    • B. CodeBuildプロジェクトにSECRETS_MANAGERタイプの環境変数を追加します。環境変数には、CodeBuildプロジェクトのIAMサービスロールのARNを含めます。buildspec.ymlファイルを更新し、新しい環境変数を使用してdocker loginコマンドでログインし、ECRリポジトリにアクセスします。
    • C. ECRリポジトリをパブリックイメージリポジトリに更新します。IAMサービスロールがECRリポジトリにアクセスできるよう、ECRリポジトリポリシーを追加します。
    • D. buildspec.ymlファイルを更新し、AWS CLIを使用してECR操作用のIAMサービスロールを引き受けます。IAMサービスロールがECRリポジトリにアクセスできるよう、ECRリポジトリポリシーを追加します。

    この問題を見る →

  29. Q29. ある企業は、社内で開発されたPythonパッケージを格納するためにAWS CodeArtifactリポジトリを使用しています。DevOpsエンジニアは、AWS CodeDeployを用いてアプリケーションをAmazon EC2インスタンスにデプロイする必要があります。このアプリケーションは、CodeArtifactリポジトリに格納されたPythonパッケージに依存しており、BeforeInstallライフサイクルイベントフックでそのパッケージをインストールします。DevOpsエンジニアは、EC2インスタンスがCodeArtifactリポジトリにアクセスできるようにする必要があります。

    • A. CodeArtifact向けのサービス関連ロールを作成し、そのロールをEC2インスタンスに関連付けます。その後、インスタンス上でaws codeartifact get-authorization-token CLIコマンドを実行します。
    • B. CodeArtifactリポジトリに対してリソースベースのポリシーを構成し、EC2インスタンスのプリンシパルがReadFromRepository操作を実行できるように許可します。
    • C. CodeArtifactリポジトリ上でACLを構成し、EC2インスタンスがPythonパッケージにアクセスできるように許可します。
    • D. CodeArtifactへのアクセス権限を持つIAMロールを含むインスタンスプロファイルを作成し、そのインスタンスプロファイルをEC2インスタンスに関連付けます。その後、インスタンス上でaws codeartifact login CLIコマンドを実行します。

    この問題を見る →

  30. Q30. ある企業は、複数のリソースでAmazon S3バケットをファイルゲートウェイモードのAWS Storage Gatewayとともに使用しています。業務開始時に、ユーザーは前夜にサードパーティが処理したオブジェクトを確認できませんでした。DevOpsエンジニアがS3バケットを直接確認したところ、データは存在していましたが、Storage Gateway上では表示されていませんでした。

    • A. 毎晩実行されるAmazon EventBridgeイベントを構成し、AWS Lambda関数を呼び出してStorage GatewayのRefreshCacheコマンドを実行します。
    • B. サードパーティに対し、AWS Transfer for SFTPを使用してS3バケットにデータをアップロードするよう指示します。
    • C. Storage Gatewayをボリュームゲートウェイモードで動作するように変更します。
    • D. S3の同一リージョンレプリケーションを使用して、S3バケットに対する変更をStorage Gatewayに自動的に複製します。

    この問題を見る →

  31. Q31. ある企業は複数のチームに分割されています。各チームには専用のAWSアカウントがあり、すべてのアカウントはAWS Organizations内の単一組織に属しています。各チームは自チームのAWSアカウントに対するセキュリティ管理権限を保持しています。また、ハッカー対策として、各チームが利用できるAWSサービスを企業が承認したサービスに限定したいと考えています。AWSサービスへのアクセスは、承認プロセスおよび承認された手順を通じて許可されます。

    • A. AWS CloudFormation StackSetsを使用して、各アカウントにIAMポリシーを展開し、制限されたAWSサービスへのアクセスを拒否します。さらに、各アカウントでAWS Configルールを構成して、IAM委任者にポリシーが正しくアタッチされていることを検証します。
    • B. AWS Control Towerを使用して、組織内のOU(Organizational Unit)にアカウントをプロビジョニングします。AWS Control Towerを構成してAWS IAM Identity Center(AWS SSO)を有効化し、管理アクセスを提供します。制限されたAWSサービスへのアクセスを拒否するポリシーを含むユーザーロールをIAM Identity Centerで設定します。
    • C. すべてのアカウントを組織内の新しいトップレベルOU下に配置します。制限されたAWSサービスへのアクセスを拒否するService Control Policy(SCP)を作成し、そのSCPをOUにアタッチします。
    • D. 承認済みAWSサービスのみへのアクセスを許可するSCPを作成し、そのSCPを組織のルートOUにアタッチします。組織のルートOUからFullAWSAccess SCPを削除します。

    この問題を見る →

  32. Q32. ある企業は、AWS WAFを用いてクラウドインフラストラクチャを保護しています。DevOpsエンジニアは、運用チームがAWS WAFから生成されるログメッセージを分析できるようにする必要があります。運用チームは、ログ出力内の特定のパターンに対してアラートを作成できる必要があります。

    • A. Amazon CloudWatch Logsのロググループを作成します。適切なAWS WAF Web ACLを構成し、ログメッセージをそのロググループに送信します。運用チームに対し、CloudWatchメトリクスフィルターを作成するよう指示します。
    • B. Amazon OpenSearch Serviceクラスターと適切なインデックスを作成します。Amazon Kinesis Data Firehose配信ストリームを構成し、ログデータをインデックスに転送します。OpenSearchダッシュボードを用いてフィルターとウィジェットを作成します。
    • C. ログ出力用のAmazon S3バケットを作成します。AWS WAFがログ出力をS3バケットに送信するよう構成します。運用チームに対し、必要な各ログメッセージパターンを検出するAWS Lambda関数を作成するよう指示します。Lambda関数をAmazon Simple Notification Service(Amazon SNS)トピックに通知するよう構成します。
    • D. ログ出力用のAmazon S3バケットを作成します。AWS WAFがログ出力をS3バケットに送信するよう構成します。Amazon Athenaを用いてログメッセージパターンに適合する外部テーブル定義を作成します。運用チームに対し、SQLクエリを作成し、Athenaクエリ用のAmazon CloudWatchメトリクスフィルターを作成するよう指示します。

    この問題を見る →

  33. Q33. ある企業は、重要なアプリケーションを複数のAWSリージョンにデプロイしています。各リージョンでアプリケーションロードバランサー(ALB)を使用しており、各ALBに対してAmazon Route 53のDNSレコードを設定しています。同社は、Amazon Route 53 Application Recovery Controller(ARC)を用いて、リージョン間のフェイルオーバーを保証するアプリケーション回復計画を実施しています。Route 53 ARCの構成には、各リージョンのルーティングコントロールが含まれています。同社は、Route 53 ARCを用いた四半期ごとの災害復旧(DR)テストを実施しています。最近のDRテストで、DevOpsエンジニアが誤ってすべてのルーティングコントロールを無効化しました。同社は、常に少なくとも1つのルーティングコントロールが有効な状態であることを保証する必要があります。

    • A. Route 53 ARCで、新しいアサーションセキュリティルールを作成します。このアサーションセキュリティルールを2つのルーティングコントロールに適用します。ルールのタイプを「AT_LEAST」、しきい値を1に設定します。
    • B. Route 53 ARCで、新しいゲートセキュリティルールを作成します。このアサーションセキュリティルールを2つのルーティングコントロールに適用します。ルールのタイプを「OR」、しきい値を1に設定します。
    • C. Route 53 ARCで、新しいリソースセットを作成します。リソースセットをAWS::Route53::HealthCheckリソースタイプで構成し、2つのルーティングコントロールのARNをターゲットリソースとして指定します。リソースセットに対して新しい「レディネスチェック」を作成します。
    • D. Route 53 ARCで、新しいリソースセットを作成します。リソースセットをAWS::route53-recovery-readiness::DNSTargetResourceリソースタイプで構成し、2つのRoute 53エイリアスDNSレコードのドメイン名をターゲットリソースとして追加します。リソースセットに対して新しい「レディネスチェック」を作成します。

    この問題を見る →

  34. Q34. ある企業では、複数の開発チームが共有のAWSアカウント内で作業しています。リソースの作成がアカウントのサービス制限に近づいた際に、チームの上級マネージャーがサードパーティAPIを介してアラートを受け取ることを希望しています。

    • A. 定期的に実行されるAmazon CloudWatch Eventsルールを作成し、そのターゲットをAWS Lambda関数に設定します。Lambda関数内で、AWS環境の現在の状態を評価し、デプロイ済みリソースの値とアカウントのサービス制限を比較します。アカウントがサービス制限に近づいている場合、上級マネージャーに通知します。
    • B. AWS Trusted Advisorのチェックを更新するAWS Lambda関数をデプロイし、Amazon CloudWatch Eventsルールを構成して定期的にそのLambda関数を実行します。Trusted Advisorのイベントと一致するイベントパターンおよびターゲットLambda関数を指定した別のCloudWatch Eventsルールを作成します。ターゲットLambda関数内で、上級マネージャーに通知します。
    • C. AWS Personal Health Dashboardのチェックを更新するAWS Lambda関数をデプロイし、Amazon CloudWatch Eventsルールを構成して定期的にそのLambda関数を実行します。Personal Health Dashboardのイベントと一致するイベントパターンおよびターゲットLambda関数を指定した別のCloudWatch Eventsルールを作成します。ターゲットLambda関数内で、上級マネージャーに通知します。
    • D. AWSサービス制限の状態をチェックする定期実行型のAWS Configカスタムルールを追加し、通知をAmazon SNSトピックにストリーミングします。上級マネージャーに通知するAWS Lambda関数をデプロイし、そのLambda関数をSNSトピックにサブスクライブさせます。

    この問題を見る →

  35. Q35. ある企業は、AWSリージョンでWebアプリケーションをホストしています。災害復旧(DR)の目的で、第2のリージョンがDRリージョンとして設定されています。DR要件では、データがリージョン間でほぼリアルタイムでレプリケートされる必要があり、また1%のトラフィックをセカンダリリージョンにルーティングしてシステム機能の継続的な検証を行う必要があります。さらに、プライマリリージョンのサービス障害が発生した場合、トラフィックは自動的にセカンダリリージョンにルーティングされ、セカンダリリージョンはそのトラフィック量を処理できるようにスケールアウト可能である必要があります。

    • A. 両リージョンでAWS Elastic Beanstalk上にアプリケーションをデプロイし、Amazon DynamoDBグローバルテーブルを用いてセッションデータを保存します。Amazon Route 53の加重ルーティングポリシーとヘルスチェックを用いて、リージョン間でトラフィックを分散します。
    • B. 両リージョンでAuto Scalingグループでアプリケーションを起動し、DynamoDBを用いてセッションデータを取得します。Route 53のフェイルオーバールーティングポリシーとヘルスチェックを用いて、リージョン間でトラフィックを分散します。
    • C. 両リージョンでAWS Lambdaにアプリケーションをデプロイし、Amazon API Gatewayで公開します。Amazon RDS for PostgreSQLとセッションデータのクロスリージョンレプリケーションを用います。クライアント側のロジックでWebアプリケーションをデプロイし、API Gatewayを直接呼び出します。
    • D. 両リージョンでAuto Scalingグループでアプリケーションを起動し、DynamoDBグローバルテーブルをセッションデータに使用します。Amazon CloudFrontの加重配信をリージョン間で有効化します。Amazon Route 53のDNSレコードをCloudFront配信を指すように設定します。

    この問題を見る →

  36. Q36. ある企業は、放送協会から提供されたクラウドアーキテクチャを基にWebアプリケーションのインフラストラクチャを開発しています。データベースエンジニアチームは、CloudFormationテンプレートでデータベースリソースを管理し、ソフトウェア開発チームは別個のCloudFormationテンプレートでWebアプリケーションリソースを管理しています。アプリケーションの拡張に伴い、ソフトウェア開発チームはデータベースエンジニアチームが管理するリソースを利用する必要があります。両チームはそれぞれ独自のレビューおよびライフサイクル管理プロセスを持ち、それらを維持したいと考えています。また、両チームはリソースレベルの監査対象のレビューを必要としています。ソフトウェア開発チームは、CI/CDパイプラインを用いてこのテンプレートへの変更をデプロイしたいと考えています。

    • A. データベースのCloudFormationテンプレートからスタック出力をエクスポートし、これらの参照をWebアプリケーションのCloudFormationテンプレートにインポートします。
    • B. 2つのスタック間でクロススタックリソース参照およびパラメータを有効にするネストされたCloudFormationスタックを作成します。
    • C. 2つのスタック間でクロススタックリソース参照およびパラメータを有効にするCloudFormationスタックセットを作成します。
    • D. WebアプリケーションのCloudFormationテンプレートで入力パラメータを作成し、データベーススタックからリソース名およびIDを渡します。

    この問題を見る →

  37. Q37. ある企業がAWS CloudFormationスタックを使用してアプリケーションの更新をデプロイしています。このスタックは、AWS Auto Scalingグループ、Amazon EC2インスタンス、アプリケーションロードバランサー(ALB)、およびスタックの起動・維持に必要なその他のリソースで構成されています。CloudFormationスタックの更新以外でアプリケーションリソースを変更することは許可されていません。

    • A. ALBに構成されたサブネットマッピングを更新します。AWS CLIコマンド「aws cloudformation update-stack-set」を実行します。
    • B. CloudFormationスタック更新に必要な権限を提供するようにIAMロールを更新します。AWS CLIコマンド「aws cloudformation continue-update-rollback」を実行します。
    • C. 当該アカウントのEC2インスタンス数のクォータ増加リクエストを提出します。AWS CLIコマンド「aws cloudformation cancel-update-stack」を実行します。
    • D. Auto Scalingグループリソースを削除します。AWS CLIコマンド「aws cloudformation rollback-stack」を実行します。

    この問題を見る →

  38. Q38. ある企業が、AWS Organizations内の複数のAWSアカウントで動作するデータ受信アプリケーションを運用しています。このアプリケーションは、自動スケーリンググループ上のAmazon EC2インスタンスで実行されており、機密性の高いデータを扱うため、インターネットへのアクセスは禁止されています。エンジニアは必要なVPCエンドポイントを既にデプロイ済みであり、アプリケーション専用のカスタムAMIがEC2インスタンス上で実行されています。

    • A. ユーザーがEC2インスタンスにログインした際にセキュリティチームに通知を送信するAmazon EventBridgeルールを作成します。EC2インスタンス接続(EC2 Instance Connect)を使用してインスタンスにログインします。AWS CloudFormationで自動スケーリンググループをデプロイします。外部アクセス用の適切なVPCルーティングを展開するためにcfn-initヘルパースクリプトを使用します。カスタムAMIを再構築し、AWS Systems Managerエージェントを含めます。
    • B. NATゲートウェイとインターネットアクセス可能なバステーションホストをデプロイします。バステーションホストからのすべてのEC2インスタンスへの着信トラフィックを許可するセキュリティグループを作成します。すべてのEC2インスタンスにAWS Systems Managerエージェントをインストールします。自動スケーリンググループのライフサイクルフックを使用してアクセスを監視・監査します。Systems Managerセッションマネージャーを使用してインスタンスにログインします。ログをAmazon CloudWatch Logsのロググループに送信します。監査目的でデータをAmazon S3にエクスポートします。S3イベント通知を使用してセキュリティチームに通知を送信します。
    • C. EC2 Image Builderを使用してカスタムAMIを再構築し、最新バージョンのAWS Systems Managerエージェントを含めます。自動スケーリンググループを、すべてのEC2インスタンスにAmazonSSMManagedInstanceCoreロールをアタッチするように設定します。Systems Managerセッションマネージャーを使用してインスタンスにログインします。セッション詳細情報をAmazon S3に記録します。新しいファイルアップロードに対してS3イベント通知を作成し、Amazon Simple Notification Service(Amazon SNS)トピック経由でセキュリティチームにメッセージを送信します。
    • D. AWS Systems Manager Automationを使用してSystems ManagerエージェントをカスタムAMIに組み込みます。AWS Configを使用して、SCP(Service Control Policy)をルート組織アカウントにアタッチし、EC2インスタンスがSystems Managerに接続できるようにします。Systems Managerセッションマネージャーを使用してインスタンスにログインします。セッション詳細情報をAmazon S3に記録します。新しいファイルアップロードに対してS3イベント通知を作成し、Amazon Simple Notification Service(Amazon SNS)トピック経由でセキュリティチームにメッセージを送信します。

    この問題を見る →

  39. Q39. 開発チームが最近プロジェクト数を大幅に増やしたため、個別のコードリポジトリの数も増加しています。現在のプロセスでは、AWS CodePipelineを手動で設定しています。また、既存のAmazon S3バケット数に関するサービス制限のアラートが発生しています。どのパイプラインオプションがS3バケットの肥大化(バケット蔓延)アラートを減少させますか?

    • A. 複数の独立したコードリポジトリを1つに統合し、各プロジェクトのロジックを含む単一のAWS CodePipelineでデプロイします。
    • B. AWS APIまたはAWS CLIを使用して新しいパイプラインを作成し、各プロジェクトに別々のプレフィックスを設定した単一のS3バケットを共有するように構成します。
    • C. 各プロジェクトごとに異なるリージョンで新しいパイプラインを作成し、単一リージョンにおけるS3バケットのサービス制限を回避します。
    • D. AWS APIまたはAWS CLIを使用して単一アカウント内のS3バケットのサービス制限を回避し、各プロジェクトごとに新しいパイプラインと新しいS3バケットを作成します。

    この問題を見る →

  40. Q40. ある企業が、顧客のWebサイトおよびモバイルアプリケーションでの行動を監視するアプリケーションを運用しています。このアプリケーションは、Amazon ElastiCache for Redisを直書きキャッシュとして使用し、Amazon RDS for PostgreSQLデータベースを長期ストレージとして使用しています。アプリケーションが顧客操作を記録するリクエストを受け取ると、Redisクラスターとデータベースの両方に同時に書き込みます。さらに、このアプリケーションは各顧客のデータに基づいてコンテンツ推薦を生成します。

    • A. RedisクラスターのElastiCachePrimaryEngineCPUUtilizationメトリクスに対してターゲットトラッキング自動スケーリングポリシーを作成します。自動スケーリングポリシーを構成してRedisクラスターのシャード数を増減させます。推薦アプリケーションを更新し、クラスタ構成エンドポイントを使用してRedisにアクセスするようにします。
    • B. RedisクラスターのElastiCachePrimaryEngineCPUUtilizationメトリクスに対してターゲットトラッキング自動スケーリングポリシーを作成します。自動スケーリングポリシーを構成してRedisクラスターのシャード数を増減させます。推薦アプリケーションを更新し、クラスターの読み取り専用エンドポイントを使用してRedisにアクセスするようにします。
    • C. RedisクラスターのElastiCachePrimaryEngineCPUUtilizationメトリクスに対してスケジュール型自動スケーリングポリシーを作成します。自動スケーリングポリシーを構成してRedisクラスターに読み取り専用レプリカを追加します。推薦アプリケーションを更新し、クラスタ構成エンドポイントを使用してRedisにアクセスするようにします。
    • D. RedisクラスターのElastiCachePrimaryEngineCPUUtilizationメトリクスに対してスケジュール型自動スケーリングポリシーを作成します。自動スケーリングポリシーを構成してRedisクラスターに読み取り専用レプリカを追加します。推薦アプリケーションを更新し、Redisではなくデータベースの読み取り専用エンドポイントを使用するようにします。

    この問題を見る →

  41. Q41. DevOpsエンジニアがAWS CloudFormationカスタムリソースを使用してAD Connectorをセットアップしています。AWS Lambda関数が実行されAD Connectorが作成されましたが、CloudFormationスタックのステータスがCREATE_IN_PROGRESSからCREATE_COMPLETEへ遷移しません。

    • A. Lambda関数のコードが正常に終了することを確認します。
    • B. Lambda関数のコードが事前に署名されたURLへのレスポンスを返すことを確認します。
    • C. Lambda関数のIAMロールがスタックARNに対してcloudformation:UpdateStack権限を持つことを確認します。
    • D. Lambda関数のIAMロールがAWSアカウントに対してds:ConnectDirectory権限を持つことを確認します。

    この問題を見る →

  42. Q42. ある企業が、Auto Scalingグループ内のAmazon EC2インスタンスでアプリケーションを実行しています。アプリケーションが起動時に、まずAmazon S3バケットからデータを処理し、その後でリクエストのサービス提供を開始する必要があります。

    • A. Auto Scalingグループにウォームプールを構成し、ウォームEC2インスタンスを停止状態にします。Auto ScalingグループにAutoscaling:EC2_INSTANCE_LAUNCHINGライフサイクルフックを構成します。アプリケーションを、リクエストのサービス提供準備が整った時点でライフサイクルフックを完了するように変更します。
    • B. Auto Scalingグループの最大インスタンス数を増加させます。Auto Scalingグループにautoscaling:EC2_INSTANCE_LAUNCHINGライフサイクルフックを構成します。アプリケーションを、リクエストのサービス提供準備が整った時点でライフサイクルフックを完了するように変更します。
    • C. Auto Scalingグループにウォームプールを構成し、ウォームEC2インスタンスを実行状態にします。Auto Scalingグループにautoscaling:EC2_INSTANCE_LAUNCHINGライフサイクルフックを構成します。アプリケーションを、リクエストのサービス提供準備が整った時点でライフサイクルフックを完了するように変更します。
    • D. Auto Scalingグループの最大インスタンス数を増加させます。Auto Scalingグループにautoscaling:EC2_INSTANCE_LAUNCHINGライフサイクルフックを構成します。アプリケーションをライフサイクルフックを完了するように変更し、リクエストのサービス提供準備が整った時点で新規インスタンスをStandby状態にします。

    この問題を見る →

  43. Q43. あるクラウドチームが、AWS OrganizationsおよびAWS Identity Center(AWSのシングルサインオン)を使用して企業のAWSアカウントを管理しています。この企業は最近、研究チームを設立しました。研究チームには、アカウント内のリソースを分離して管理する権限が必要ですが、IAMユーザーの作成は許可されていません。

    • A. iam:CreateUser操作を拒否するIAMポリシーを作成し、それを研究管理者のパーミッションセットにアタッチします。
    • B. iam:CreateUser操作を除くすべての操作を許可するIAMポリシーを作成し、そのIAMポリシーを研究管理者のパーミッションセットの権限境界として設定します。
    • C. iam:CreateUser操作を拒否するSCP(Service Control Policy)を作成し、研究チームのAWSアカウントにアタッチします。
    • D. IAMユーザーを削除するAWS Lambda関数を開発します。IAMユーザー作成イベントを検出するAmazon EventBridgeルールを作成し、そのルールをLambda関数の呼び出しに構成します。

    この問題を見る →

  44. Q44. ある企業が、外部顧客ごとにIAMユーザーを作成し、その顧客にAWSアカウントへのアクセス権限を付与しています。

    • A. AWSアカウントでAWS Configを有効にします。AWS Configマネージドルール「iam-user-unused-credentials-check」をデプロイし、定期的にConfigルールを実行するように構成します。自動修復を構成して、AWS Systems Manager Automationランブック「AWSConfigRemediation-RevokeUnusedIAMUserCredentials」を実行します。
    • B. AWSアカウントでAWS Identity and Access Management Access Analyzerを使用してアナライザーを作成します。90日以上前に最後にアクセスしたIAMユーザーのIAMアクセスアナライザーイベントを一致させるAmazon EventBridgeルールを作成します。このルールを構成して、AWS Systems Manager Automationランブック「AWSConfigRemediation-DetachIAMPolicy」を実行し、IAMユーザーにアタッチされたすべてのポリシーを分離します。
    • C. AWSアカウントでAWS Trusted Advisorを有効にします。AWS Developer Supportプランを使用してAWS Support APIにアクセスします。Amazon EventBridgeのスケジュールルールを構成し、Trusted AdvisorのIAMアクセスキーのローテーションチェックを使用して90日以上未使用のIAM資格情報を検出します。別のEventBridgeルールを構成し、Trusted Advisor Check Item Refresh Statusイベントタイプを使用して、AWS Systems Manager Automationランブック「AWSConfigRemediation-RevokeUnusedIAMUserCredentials」を実行します。
    • D. AWSアカウントでAWS Security Hubを有効にします。IAMユーザーの最終アクセス時刻を特定するSecurity Hubルールを構成します。Amazon EventBridgeルールを構成し、Security Hubルールに一致した場合にAWS Systems Manager Automationランブック「AWSConfigRemediation-RevokeUnusedIAMUserCredentials」を実行します。

    この問題を見る →

  45. Q45. DevOpsエンジニアが、Amazon EC2上で実行されるカスタムWebアプリケーションを管理しています。このアプリケーションは、Amazon Kinesis Data Streamsを使用してネットワークログを収集および処理します。DevOpsエンジニアは、同様にAmazon EC2上で実行されるKinesisコンシューマーアプリケーションも管理しています。 データの急増により、Kinesisコンシューマーアプリケーションが遅延し、処理可能な状態になる前にKinesisデータが破棄されています。 DevOpsエンジニアは、処理能力を拡張するソリューションを実装する必要があります。 どのソリューションが、これらの要件を最も高い運用効率で満たすことができますか?

    • A. Kinesisコンシューマーアプリケーションを変更し、ログをAmazon S3に永続化します。Amazon EMRを使用してAmazon S3上のデータを直接処理し、顧客インサイトを取得します。結果をAmazon S3に保存します。
    • B. Amazon CloudWatchのGetRecords.IteratorAgeMillisecondsメトリクスに基づいて追加のEC2インスタンスを起動し、Kinesisコンシューマーアプリケーションを水平方向にスケールアウトします。Kinesis Data Streamsの保持期間を延長します。
    • C. KinesisコンシューマーアプリケーションをAWS Lambda関数として実行するように変換します。Kinesis Data StreamsをLambda関数のイベントソースとして構成し、データストリームを処理します。
    • D. Kinesis Data Streamsのシャード数を増やして全体的なスループットを向上させ、コンシューマーアプリケーションがデータをより迅速に処理できるようにします。

    この問題を見る →

  46. Q46. ある企業が、AWS Database Migration Service(AWS DMS)を使用して、オンプレミスのソースデータベースからターゲットのAmazon Aurora PostgreSQLデータベースへデータをレプリケートしています。企業は、変更データキャプチャ(CDC)を有効にしたDMSレプリケーションタスクを作成しました。 レプリケーション実行中に予期しない中断が発生し、重要な機能に影響を与えています。企業は、レプリケーション実行の耐障害性を高め、中断に関する通知を受信したいと考えています。 どのソリューションが、最小限の運用オーバーヘッドでこれらの要件を満たすことができますか?

    • A. AWS DataSyncを使用して、ソースデータベースからAmazon S3へデータをコピーします。AWS Lambda関数を構成して、S3からターゲットデータベースへデータをコピーします。Amazon CloudWatchアラームを設定してLambda関数のエラーおよび制限を監視し、Amazon Simple Notification Service(Amazon SNS)トピックを使用してメール通知を行います。
    • B. DMSレプリケーションタスクのメトリクスおよびホストメトリクスを監視するためのAmazon CloudWatchアラームを作成します。Amazon Simple Notification Service(Amazon SNS)トピックを使用してメール通知を行い、異なるAWSリージョンにバックアップのDMSレプリケーションインスタンスを設定するAWS Lambda関数を呼び出します。
    • C. DMSレプリケーションタスクのメトリクスおよびホストメトリクスを監視するためのAmazon CloudWatchアラームを作成します。Amazon Simple Notification Service(Amazon SNS)トピックを使用してメール通知を行います。通知を受け取った後、同一AWSリージョン内で新しいDMSレプリケーションタスクを設定します。
    • D. DMSレプリケーションインスタンスのマルチAZサポートを有効化します。DMSレプリケーションタスクのメトリクスおよびホストメトリクスを監視するためのAmazon CloudWatchアラームを作成します。Amazon Simple Notification Service(Amazon SNS)トピックを使用してメール通知を行います。

    この問題を見る →

  47. Q47. DevOpsエンジニアが、AWS CodePipelineを使用してAWS Service Catalogポートフォリオをデプロイしています。パイプラインは、JSONまたはYAML形式のマニフェストファイルに基づいて製品およびテンプレートを作成し、パイプラインによって管理されるAWS Service Catalog製品に対してセキュリティ要件を適用する必要があります。

    • A. AWS CodeDeploy内のAWS Service Catalogデプロイアクションを使用し、CodeDeploy AppSpec内の検証ステップを通じて新バージョンの製品をAWS Service Catalogにプッシュします。
    • B. AWS CodeBuild内のAWS Service Catalogデプロイアクションを使用して、新バージョンの製品を検証し、AWS Service Catalogにプッシュします。
    • C. CodePipeline内でAWS Lambdaアクションを使用し、新バージョンの製品を検証してAWS Service CatalogにプッシュするLambda関数を実行します。
    • D. AWS CodeBuild内でAWS Lambdaアクションを使用し、新バージョンの製品を検証してAWS Service CatalogにプッシュするLambda関数を実行します。

    この問題を見る →

  48. Q48. ある企業が、AWS Systems Managerドキュメントを使用して開発者の物理ノートブックPCをブートストラップしたいと考えています。ブートストラッププログラムのコードはGitHubに保存されています。DevOpsエンジニアは、Systems Managerエージェントをインストール済みのノートブックPCを登録し、エージェントIDを設定するSystems Managerアクティベーションを作成済みです。 次に実施すべき手順のセットはどれですか?

    • A. Systems Managerドキュメントを、AWS-RunShellScriptコマンドを使用してGitHubからファイルをAmazon S3にコピーし、sourceTypeがS3であるaws-downloadContentプラグインを使用するように構成します。
    • B. Systems Managerドキュメントを、aws-configurePackageプラグインのインストール操作を使用し、Gitリポジトリを指すように構成します。
    • C. Systems Managerドキュメントを、GitHubのsourceTypeを持つaws-downloadContentプラグインおよびリポジトリ詳細を含むSourceInfoを使用するように構成します。
    • D. Systems Managerドキュメントを、aws:softwareInventoryプラグインを使用し、Gitリポジトリからスクリプトを実行するように構成します。

    この問題を見る →

  49. Q49. ある企業の組織は、業界のセキュリティ準拠要件に従い、単一のOU(Organizational Unit)に配置されています。この企業はOU内のアカウントでAmazon EC2インスタンスを実行しています。企業は、各EC2インスタンスの認証情報の使用を、その認証情報が割り当てられた特定のEC2インスタンスに限定したいと考えています。設計者はEC2インスタンスのセキュリティを構成する必要があります。 どのソリューションがこれらの要件を満たしますか?

    • A. 指定されたVPC CIDRブロックを指定するSCP(Service Control Policy)を作成します。SCPを構成して、Aws:Vpc31-slp条件キーが指定されたブロック内にあるかを確認します。同じSCPチェック内で、Aws:EC2--------------- -----------------------------------------------------------------が両方とも偽の場合、アクセスを拒否します。このSCPをOUに適用します。
    • B. Aws:EC2即決-cevpcおよびaws:SourceVpc条件キーの値が一致するかを確認するSCPを作成します。値が一致しない場合はアクセスを拒否します。同じSCPチェック内で、Aws:EC2快捷来源の値とaws:Vpc31-ceip条件キーの値が一致するかを確認します。値が一致しない場合はアクセスを拒否します。このSCPをOUに適用します。
    • C. 許容されるVPC値のリストを含むSCPを作成し、aws:SourceVpc条件キーの値がそのリストに含まれているかを確認します。同じSCPチェック内で、許容されるIPアドレス値のリストを定義し、aws:Vpc31-ceip条件キーの値がそのリストに含まれているかを確認します。両方の条件が偽の場合、アクセスを拒否します。このSCPを組織内の各アカウントに適用します。
    • D. Aws:EC2即時程序およびaws:Vpc31-ceip条件キーが一致するかを確認するSCPを作成します。値が一致しない場合はアクセスを拒否します。同じSCPチェック内で、Aws:EC2の値が一致するかを確認します。値が一致しない場合はアクセスを拒否します。このSCPを組織内の各アカウントに適用します。

    この問題を見る →

  50. Q50. ある企業が、Amazon EC2上でホストされているWebアプリケーションをサーバーレスアーキテクチャへ移行したいと考えています。現在、企業は新しいEC2インスタンスのAuto Scalingグループおよび新しいElastic Load Balancerを作成し、Amazon Route 53のルーティングポリシーを使用してトラフィックを段階的に切り替えることで、アプリケーションを更新しています。 新しいサーバーレスアプリケーションでは、Amazon API GatewayおよびAWS Lambdaを使用する予定です。企業は、デプロイプロセスを更新して新しいアプリケーションをサポートする必要があります。また、新機能を全ユーザーに展開する前に、少数のユーザーに対してテストを行う機能を確保する必要があります。

    • A. AWS CDKを使用してAPI GatewayおよびLambda関数をデプロイします。コードを変更する必要がある場合、AWS CloudFormationスタックを更新し、新しいバージョンのAPIおよびLambda関数をデプロイします。Route 53のフェイルオーバールーティングポリシーをカナリアリリース戦略として使用します。
    • B. AWS CloudFormationを使用してLambda関数のバージョンとともにAPI GatewayおよびLambda関数をデプロイします。コードを変更する必要がある場合、新しいLambdaコードでCloudFormationスタックを更新し、カナリアリリース戦略を使用してAPIバージョンを更新します。テスト完了後に新バージョンを展開します。
    • C. AWS Elastic Beanstalkを使用してAPI GatewayおよびLambda関数をデプロイします。コードを変更する必要がある場合、新しいバージョンのAPIおよびLambda関数をデプロイします。Elastic Beanstalkのブルー/グリーンデプロイを使用してトラフィックを徐々に切り替えます。
    • D. AWS OpsWorksを使用して、サービス層にAPI Gatewayを、カスタム層にLambda関数をデプロイします。コードを変更する必要がある場合、OpsWorksでブルー/グリーンデプロイを実行し、トラフィックを段階的に切り替えます。

    この問題を見る →

  51. Q51. ある企業が、継続的デリバリー(CD)パイプラインを構築したいと考えています。企業はアプリケーションコードをプライベートなGitHubリポジトリに保存しており、アプリケーションコンポーネントをAmazon Elastic Container Service(Amazon ECS)、Amazon EC2およびAWS Lambdaにデプロイする必要があります。パイプラインは、手動承認操作をサポートする必要があります。

    • A. AWS CodePipelineを、Amazon ECS、Amazon EC2およびLambdaをデプロイプロバイダーとして使用します。
    • B. AWS CodePipelineおよびAWS CodeDeployをデプロイプロバイダーとして使用します。
    • C. AWS CodePipelineおよびAWS Elastic Beanstalkをデプロイプロバイダーとして使用します。
    • D. AWS CodeDeployをGitHubと統合してアプリケーションをデプロイします。

    この問題を見る →

  52. Q52. ある企業が、VPC内の最新世代のAmazon EC2インスタンスで実行されるアプリケーションを運用しています。EC2インスタンスはAmazon Linuxを実行し、Amazon EC2 Auto Scalingグループで起動されています。このアプリケーションはAmazon S3バケットからデータを取得し、処理して、別のS3バケットへ処理済みデータをアップロードします。 最近、アプリケーションのパフォーマンスが劣化しました。手動調査の結果、EC2インスタンスのタイプに対するアウトバウンドネットワーク帯域幅利用率が過剰であることが判明しました。企業はEC2インスタンスを新しい世代のインスタンスへアップグレードしました。 アプリケーションが、EC2インスタンスが利用可能な以上のアウトバウンドネットワーク帯域幅を使用しようとする場合、DevOpsチームはAmazon CloudWatchアラームで通知を受け取る必要があります。

    • A. EC2インスタンスに対してEC2詳細モニタリングを構成します。各EC2インスタンスのBw_out_allowance_exceeded CloudWatchメトリクスに対してCloudWatchアラームを作成するAWS Lambda関数を作成します。アラームをDevOpsチームへ通知するよう構成します。
    • B. EC2インスタンス上で統合CloudWatchエージェントを構成し、bw_out_allowance_exceededメトリクスをCloudWatchメトリクスへ送信します。すべてのbw_out_allowance_exceededメトリクスを監視するCloudWatch複合アラームを作成します。アラームをDevOpsチームへ通知するよう構成します。
    • C. EC2インスタンスのVPCフローログをAmazon CloudWatch Logsへ記録するよう構成します。帯域幅制限を超えたイベントに一致するCloudWatch Logsメトリクスフィルターを作成します。すべてのbw_out_allowance_exceededメトリクスを監視するCloudWatch複合アラームを作成します。アラームをDevOpsチームへ通知するよう構成します。
    • D. EC2インスタンス上で統合CloudWatchエージェントを構成し、Bw_out_allowance_exceededメトリクスをCloudWatchメトリクスへ送信します。各EC2インスタンスのbw_out_allowance_exceeded CloudWatchメトリクスに対してCloudWatchアラームを作成するAWS Lambda関数を作成します。アラームをDevOpsチームへ通知するよう構成します。

    この問題を見る →

  53. Q53. セキュリティチームは、開発者が本番環境のAmazon EC2インスタンスにElastic IPアドレスを関連付ける可能性を懸念しています。開発者によるElastic IPアドレスの関連付けは一切許可されていません。また、本番サーバーがいつでもElastic IPアドレスと関連付けられている場合、セキュリティチームに通知する必要があります。 このタスクを自動化するにはどうすればよいですか?

    • A. Amazon Athenaを使用してAWS CloudTrailログをクエリし、Elastic IPアドレスの関連付け試行を検出します。その後、AWS Lambda関数を作成して、インスタンスからElastic IPアドレスを切り離し、セキュリティチームに通知します。
    • B. 開発者のIAMグループにIAMポリシーをアタッチして、Elastic IPアドレスの関連付け権限を明示的に拒否します。さらに、カスタムAWS Configルールを作成して、タグ「Production」が付与されたEC2インスタンスにElastic IPアドレスが関連付けられていないかをチェックし、該当する場合はセキュリティチームにアラートを送信します。
    • C. 開発者に関連付けられたすべてのIAMグループがElastic IPアドレスの関連付け権限を持たないようにします。その後、定期実行されるAWS Lambda関数を作成して、タグ「Production」が付与されたEC2インスタンスにElastic IPアドレスが関連付けられていないかをチェックし、関連付けられている場合はセキュリティチームにアラートを送信します。
    • D. すべての本番インスタンスが、Elastic IPアドレスの関連付け権限を拒否するEC2 IAMロールを持つことを確認するAWS Configルールを作成します。また、任意のインスタンスにElastic IPアドレスが関連付けられていないかを検証し、関連付けられている場合はセキュリティチームにアラートを送信します。

    この問題を見る →

  54. Q54. ある企業は、重要なドキュメントの保存にAmazon S3バケットを使用しています。同社は、一部のS3バケットが暗号化されていないことに気づきました。現在、同社のIAMユーザーは暗号化なしで新しいS3バケットを作成できます。同社は新たな要件を導入し、すべてのS3バケットが暗号化されることを義務付けました。 DevOpsエンジニアは、既存および新規のS3バケットに対してサーバーサイド暗号化(SSE)を確実に有効化するソリューションを実装する必要があります。新しいS3バケットが作成された直後に、自動的に暗号化が有効化される必要があります。デフォルトの暗号化タイプは、256ビットAES(AES-256)である必要があります。

    • A. Amazon EventBridgeのスケジュールルールによって定期的に呼び出されるAWS Lambda関数を作成します。このLambda関数を、すべての既存S3バケットの暗号化ステータスをスキャンし、暗号化設定がないバケットに対してAES-256をデフォルト暗号化として設定するようにプログラミングします。
    • B. s3-bucket-server-side-encryption-enabled AWS Configマネージドルールを設定・有効化します。このルールを、補正アクションとしてAWS Systems Manager Automationランブック「AWS-EnableS3BucketEncryption」を呼び出すように構成します。既存のS3バケットのコンプライアンスを保証するために、再評価プロセスを手動で実行します。
    • C. Amazon EventBridgeのイベントルールによって呼び出されるAWS Lambda関数を作成します。このルールは、新規S3バケット作成イベントに一致するイベントパターンで定義されます。Lambda関数はEventBridgeイベントを解析し、S3バケットの構成を確認して、AES-256をデフォルト暗号化として設定します。
    • D. s3:x-amz-server-side-encryption条件キーの値がAES-256でない場合、s3:CreateBucket操作を拒否するIAMポリシーを構成します。同社のすべてのIAMユーザーを含むIAMグループを作成し、このIAMポリシーをそのグループに関連付けます。

    この問題を見る →

  55. Q55. あるDevOpsエンジニアは、Amazon EC2上で実行される大規模なWebアプリケーションを管理しています。このアプリケーションは、Amazon Kinesis Data Streamsを使用してネットワークログを収集・処理しています。DevOpsエンジニアは、同様にAmazon EC2上で実行されるKinesisコンシューマーアプリケーションも管理しています。 データの急増により、Kinesisコンシューマーアプリケーションが遅延し、処理可能な状態になる前にKinesisデータストリームがレコードを破棄しています。DevOpsエンジニアは、処理能力を向上させるソリューションを実装する必要があります。 どのソリューションが、これらの要件を最も高い運用効率で満たすことができますか?

    • A. Kinesisコンシューマーアプリケーションを変更し、ログをAmazon S3に永続的に保存します。Amazon EMRを使用してAmazon S3上のデータを直接処理し、顧客インサイトを取得します。結果をAmazon S3に保存します。
    • B. Amazon CloudWatchのGetRecords.IteratorAgeMillisecondsメトリクスに基づき、より多くのEC2インスタンスを追加してKinesisコンシューマーアプリケーションを水平スケーリングします。Kinesisデータストリームの保持期間を延長します。
    • C. KinesisコンシューマーアプリケーションをAWS Lambda関数として実行するように変換します。KinesisデータストリームをLambda関数のイベントソースとして構成します。
    • D. Kinesisデータストリーム内のシャード数を増やして全体のスループットを向上させ、コンシューマーアプリケーションがデータをより迅速に処理できるようにします。

    この問題を見る →

  56. Q56. マルチレイヤーアプリケーションでは、毎回デプロイ時にAmazon RDS MySQLデータベースインスタンス内のテーブルを削除・再作成する必要があります。このプロセスには数分かかる場合があり、完了するまでWebレイヤーは接続できません。現在、WebレイヤーはAmazon EC2 Auto Scalingグループで構成されており、デプロイ時にインスタンスが終了・置換されます。AWS CodeBuildジョブがSQLクエリを実行してMySQLテーブルを初期化しています。

    • A. RDS MySQLの直接的な代替としてAmazon Auroraを使用します。正しいデータでテーブルを初期化するためにスナップショットを使用します。
    • B. Auto Scalingグループの起動設定を変更し、ユーザーデータの実行を600秒間一時停止して、テーブル初期化を許可します。
    • C. AWS Step Functionsを使用してデータ初期化ステータスを監視・管理します。デプロイを続行する前にデータベースを「サービス中」とマークします。
    • D. EC2 Auto Scalingライフサイクルフックを使用してWebレイヤーの構成を一時停止し、テーブルが初期化されるまで待機します。

    この問題を見る →

  57. Q57. ある企業は、複数の国で事業を展開する福利厚生協会の組織であり、多数のアカウントを所有しています。この組織には専任のAWSアカウント管理者がいます。 同社は、OU(Organizational Unit)内のアカウントにおいて、AWSクラウド内で作成または更新されるAmazon EBSボリュームおよびAmazon SQSキューに対してサーバーサイド暗号化(SSE)を強制する必要があります。

    • A. AWS CloudFormationの信頼アクセスを有効化します。EBSボリュームおよびSQSキューに対してサーバーサイド暗号化を強制するCloudFormationフックを作成します。StackSetsを使用して、このフックをOU内のすべてのアカウントにデプロイします。
    • B. すべてのアカウントにワークステーションを設定します。AWS Systems Managerを使用して、EBSボリュームおよびOU内のアカウントのSQSキューに対してサーバーサイド暗号化を強制するAWS Configルールをデプロイします。
    • C. EBSボリュームおよびSQSキューがサーバーサイド暗号化を指定しない限り、それらの作成を拒否するService Control Policy(SCP)を作成し、これをOUにアタッチします。
    • D. 承認済みの管理者アカウントでAWS Lambda関数を作成し、EBSボリュームおよびSQSキューがサーバーサイド暗号化を強制しているかをチェックします。OU内のアカウントへのLambda機能アクセスを提供するIAMロールを作成します。

    この問題を見る →

  58. Q58. ある企業は、AWS CodeDeployのブルー/グリーンデプロイメント戦略を用いてアプリケーションをデプロイしています。このデプロイメントには、Amazon Linux 2上で実行されるEC2インスタンスを起動するAmazon EC2 Auto Scalingグループが含まれます。 コードリポジトリには有効なappspec.ymlファイルが存在し、以下の内容を含んでいます: DevOpsエンジニアは、インスタンスがトラフィックを受信し始める前に、スクリプトをダウンロードしてライセンスファイルをインスタンスにインストールすることを保証する必要があります。DevOpsエンジニアは、appspec.ymlファイルにhooksセクションを追加しました。 DevOpsエンジニアは、ライセンスファイルのダウンロードおよびインストールスクリプトを実行するために、どのフックを使用すべきですか?

    • A. AfterTrafficHook
    • B. BeforeTrafficHook
    • C. BeforeInstall
    • D. DownloadBundle

    この問題を見る →

  59. Q59. あるDevOpsエンジニアは、Amazon EC2上で実行される大規模なWebアプリケーションを管理しています。このアプリケーションは、Amazon Kinesis Data Streamsを使用してネットワークログを収集・処理しています。DevOpsエンジニアは、同様にAmazon EC2上で実行されるKinesisコンシューマーアプリケーションも管理しています。 データの急増により、Kinesisコンシューマーアプリケーションが遅延し、処理可能な状態になる前にKinesisデータストリームがレコードを破棄しています。DevOpsエンジニアは、処理能力を向上させるソリューションを実装する必要があります。 どのソリューションが、これらの要件を最も高い運用効率で満たすことができますか?

    • A. Kinesisコンシューマーアプリケーションを変更し、ログをAmazon S3に永続的に保存します。Amazon EMRを使用してAmazon S3上のデータを直接処理し、顧客インサイトを取得します。結果をAmazon S3に保存します。
    • B. Amazon CloudWatchのGetRecords.IteratorAgeMillisecondsメトリクスに基づき、より多くのEC2インスタンスを追加してKinesisコンシューマーアプリケーションを水平スケーリングします。Kinesisデータストリームの保持期間を延長します。
    • C. KinesisコンシューマーアプリケーションをAWS Lambda関数として実行するように変換します。KinesisデータストリームをLambda関数のイベントソースとして構成します。
    • D. Kinesisデータストリーム内のシャード数を増やして全体のスループットを向上させ、コンシューマーアプリケーションがデータをより迅速に処理できるようにします。

    この問題を見る →

  60. Q60. ある企業は、AWS CloudFormationスタックを使用してアプリケーションの更新デプロイを行っています。このスタックは、AWS Auto Scalingグループ、Amazon EC2インスタンス、アプリケーションロードバランサー(ALB)、およびスタックの起動・維持に必要なその他のリソースで構成されています。CloudFormationスタックの更新以外でアプリケーションリソースを変更することは許可されていません。同社は最近、AWS CLIを用いてアプリケーションスタックの更新を試みました。しかし、スタックは更新できず、以下のエラーメッセージが表示されました。「エラー:デプロイおよびCloudFormationスタックのロールバックが失敗しました。デプロイが失敗した理由:[AutoScalingGroup]が更新できませんでした。」スタックはUPDATE_ROLLBACK_FAILED状態のままです。

    • A. ALBが構成するサブネットマッピングを更新します。aws cloudformation update-stack-set AWS CLIコマンドを実行します。
    • B. スタック更新に必要な権限を提供するようにIAMロールを更新します。aws cloudformation continue-update-rollback AWS CLIコマンドを実行します。
    • C. アカウントのEC2インスタンス数のクォータ増加をリクエストします。aws cloudformation cancel-update-stack AWS CLIコマンドを実行します。
    • D. Auto Scalingグループリソースを削除します。aws cloudformation rollback-stack AWS CLIコマンドを実行します。

    この問題を見る →

  61. Q61. ある企業は、Amazon EBSストレージでサポートされるAmazon EC2インスタンスを使用して、一時的なWebアプリケーションをホストしています。同社は、EC2インスタンスがネットワーク接続の問題や電源障害に見舞われた場合でも、最小限のデータ損失で迅速に復旧できるようにしたいと考えています。 これらの要件を満たすソリューションはどれですか?

    • A. 最小容量、最大容量、および必要容量をすべて1に設定したEC2 Auto Scalingグループにインスタンスを追加します。
    • B. ライフサイクルフックを備えたEC2 Auto Scalingグループにインスタンスを追加し、EC2インスタンスがシャットダウンまたは終了する際にEBSボリュームを分離します。
    • C. StatusCheckFailedシステムメトリクスに対してAmazon CloudWatchアラームを作成し、EC2インスタンスの復旧操作を選択します。
    • D. StatusCheckFailed Instanceメトリクスに対してAmazon CloudWatchアラームを作成し、EC2インスタンスの再起動操作を選択します。

    この問題を見る →

  62. Q62. 電子患者健康記録(EHR)を扱う企業が、Amazon Linuxオペレーティングシステムを実行する一連のAmazon EC2インスタンス上でアプリケーションを実行しています。同社は、EC2インスタンスが現在のプライバシー規制に準拠したOSパッチおよびアプリケーションパッチを実行していることを保証する必要があります。同社は、アプリケーションパッチを格納するためにカスタムパッケージリポジトリを使用しています。 DevOpsエンジニアは、OSパッチおよびアプリケーションパッチを自動展開する必要があります。また、DevOpsエンジニアは、デフォルトのOSパッケージリポジトリとカスタムパッケージリポジトリの両方を同時に使用したいと考えています。 これらの要件を最小限の労力で満たすソリューションはどれですか?

    • A. AWS Systems Managerを使用して、デフォルトのOSリポジトリおよびカスタムリポジトリを含む新しいカスタムパッチベースラインを作成します。Runコマンドを使用してAWS-RunPatchBaselineドキュメントを実行し、パッチの検証およびインストールを行います。BaselineOverride APIを使用して新しいカスタムパッチベースラインを設定します。
    • B. AWS Direct Connectを使用してカスタムリポジトリとEC2インスタンスを統合します。Amazon EventBridgeイベントを使用してパッチを展開します。
    • C. yum-config-managerコマンドを使用してカスタムリポジトリを/etc/yum.repos.d構成に追加します。yum-config-manager-enableコマンドを実行して新しいリポジトリを有効化します。
    • D. AWS Systems Managerを使用してデフォルトのOSリポジトリ向けにパッチベースラインを作成し、カスタムリポジトリ向けに別のパッチベースラインを作成します。Runコマンドを使用してAWS-RunPatchBaselineドキュメントを実行し、パッチの検証およびインストールを行います。BaselineOverride APIを使用してデフォルトおよびカスタムのパッチベースラインを設定します。

    この問題を見る →

  63. Q63. ある企業では、複数の開発チームが共有のAWSアカウント内で作業しています。リソースの作成がアカウントのサービス制限に近づいた際、チームの上級マネージャーはサードパーティAPI呼び出しを通じてアラートを受け取りたいと考えています。

    • A. 定期実行されるAmazon EventBridgeルールを作成し、そのターゲットとしてAWS Lambda関数を指定します。Lambda関数内でAWS環境の現在の状態を評価し、展開済みリソースの値とアカウントのリソース制限を比較します。アカウントがサービス制限に近づいている場合、上級マネージャーに通知します。
    • B. AWS Lambda関数をデプロイしてAWS Trusted Advisorのチェックを更新し、Amazon EventBridgeルールを設定してLambda関数を定期実行します。Trusted Advisorイベントに一致するイベントパターンとターゲットLambda関数を持つ別のEventBridgeルールを作成します。ターゲットLambda関数内で上級マネージャーに通知します。
    • C. AWS Lambda関数をデプロイしてAWS Health Dashboardのチェックを更新し、Amazon EventBridgeルールを設定してLambda関数を定期実行します。Health Dashboardイベントに一致するイベントパターンとターゲットLambda関数を持つ別のEventBridgeルールを作成します。ターゲットLambda関数内で上級マネージャーに通知します。
    • D. 定期実行されるAWS Configカスタムルールを追加し、AWSサービス制限の状態をチェックし、通知をAmazon Simple Notification Service (Amazon SNS)トピックにストリーミングします。上級マネージャーに通知するAWS Lambda関数をデプロイし、SNSトピックをLambda関数にサブスクライブさせます。

    この問題を見る →

  64. Q64. ある企業は、AWS CodeDeployを使用してソフトウェアデプロイを自動化しています。デプロイには以下の要件があります: ・デプロイ期間中、複数のインスタンスが通信サービスに利用可能である必要があります。これらのインスタンス間でトラフィックを負荷分散し、インスタンスが障害を起こした場合に自動的に修復される必要があります。 ・新しいリビジョンを自動デプロイするために、新しいインスタンス群を起動する必要があります。手動設定は不要です。 ・新しいインスタンス群へのトラフィックルーティングを開始する前に、デプロイ中に生成された一時ファイルを削除する必要があります。 ・デプロイが正常に完了した後、コスト削減のため、元のデプロイグループ内のインスタンスを即座に削除する必要があります。

    • A. アプリケーションロードバランサーとインプレースデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「AllowTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。
    • B. アプリケーションロードバランサーとブルー/グリーンデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションを使用し、最小健全ホスト数を50%とするカスタムデプロイ構成を作成し、それをデプロイグループに割り当てます。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「BeforeBlockTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。
    • C. アプリケーションロードバランサーとブルー/グリーンデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「BeforeAllowTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。
    • D. アプリケーションロードバランサーとインプレースデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション.ymlを使用して一時ファイルを削除するよう指示します。

    この問題を見る →

  65. Q65. ある企業は、積極的な開発を行うために1つのAWSアカウントを使用しています。セキュリティチームは、アカウント内にAmazon GuardDuty、AWS Config、およびAWS CloudTrailを導入しています。セキュリティチームは、GuardDutyの高重要度の調査結果について、ほぼリアルタイムで通知を受け取りたいと考えています。また、セキュリティチームは、アカウント内の他のセキュリティツールからの通知も受信するためにAmazon Simple Notification Service (Amazon SNS)トピックを使用しています。

    • A. GuardDutyの結果を検出するAmazon EventBridge (Amazon CloudWatch Events)ルールを設定します。入力変換器を使用して高重要度イベントパターンを検出します。ルールを設定してメッセージをSNSトピックに公開します。
    • B. GuardDutyの高重要度の結果のうち、AWS Configマネージドルール「guardduty-non-archived-Findings」に準拠していないものを検出するAmazon EventBridge (Amazon CloudWatch Events)ルールを設定します。EventBridge (CloudWatch Events)ルールを設定してメッセージをSNSトピックに公開します。
    • C. GuardDuty ListFindings API呼び出しのうち、高重要度レベルを持つものに一致するイベントパターンを使用してAmazon EventBridge (Amazon CloudWatch Events)ルールを設定します。ルールを設定してメッセージをSNSトピックに公開します。
    • D. イベント内で高重要度レベルを持つGuardDutyの結果に一致するイベントパターンを使用してAmazon EventBridge (Amazon CloudWatch Events)ルールを設定します。ルールを設定してメッセージをSNSトピックに公開します。

    この問題を見る →

  66. Q66. ある企業は、Amazon S3を使用して機密情報を保存しています。開発チームは毎日新しいプロジェクト用にS3バケットを作成します。セキュリティチームは、既存および今後作成されるすべてのS3バケットに対して、暗号化、ログ記録、バージョン管理が有効化されていることを保証したいと考えています。さらに、どのバケットもパブリック読み取りまたは書き込みを許可してはなりません。

    • A. AWS CloudTrailを有効化し、AWS Lambdaを使用して自動修復を設定します。
    • B. AWS Configルールを有効化し、AWS Systems Managerドキュメントを使用して自動修復を設定します。
    • C. AWS Trusted Advisorを有効化し、Amazon CloudWatch Eventsを使用して自動修復を設定します。
    • D. AWS Systems Managerを有効化し、Systems Managerドキュメントを使用して自動修復を設定します。

    この問題を見る →

  67. Q67. ある企業は、アプリケーションロードバランサーの背後に配置されたAmazon EC2インスタンス上でWebアプリケーションをテストしています。インスタンスは、複数の可用性ゾーンにまたがるAuto Scalingグループで実行されています。同社は、新しいソフトウェアをデプロイする際に、ダウンタイムのないブルー/グリーンデプロイプロセスを使用しています。 テスト中に、ユーザーはアプリケーションに自動的にログアウトされます。テスト担当者は、アプリケーションの新バージョンがデプロイされると、すべてのユーザーがログアウトすると報告しています。開発チームは、スケーリングイベントおよびアプリケーションデプロイの際にユーザーがログイン状態を維持できるソリューションを必要としています。 ユーザーのログイン状態を維持するための最も効率的な方法は何ですか?

    • A. ロードバランサーでスマートセッション(ステッキーセッション)を有効化し、アプリケーションを既存セッションを確認するように変更します。
    • B. ロードバランサーでセッション共有を有効化し、アプリケーションをセッションストアから読み取るように変更します。
    • C. ユーザーのセッション情報をAmazon S3バケットに保存し、アプリケーションをそのバケットからセッション情報を読み取るように変更します。
    • D. アプリケーションを変更し、ユーザーのセッション情報をAmazon ElastiCacheクラスターに保存します。

    この問題を見る →

  68. Q68. DevOpsエンジニアが企業向けにアプリケーションを開発しています。このアプリケーションは、ファイルをAmazon S3に永続的に保存する必要があります。アプリケーションは、企業が定義する異なるセキュリティ分類(機密、個人、一般)のファイルをアップロードする必要があります。機密分類のファイルは、アップロードしたユーザー以外誰も閲覧できないようにする必要があります。アプリケーションは、ユーザーのIAMロールを使用してS3 API操作を呼び出します。DevOpsエンジニアは、アプリケーションを変更し、各機密ファイルのS3へのアップロード時にDataClassificationタグの値を'confidential'、Ownerタグの値をアップロードユーザーのIDとするようにしました。

    • A. S3バケットのACLを変更し、アップロードユーザーのIAMロールにバケット所有者による読み取りアクセスを付与します。aws:ResourceTag/DataClassificationが機密であり、s3:ExistingObjectTag/Ownerが${aws:userid}と等しい場合に、S3バケットに対するs3:GetObject操作を許可するIAMポリシーを作成します。このポリシーをS3バケットへのアクセスを必要とするユーザーのIAMロールにアタッチします。
    • B. S3バケットポリシーを変更し、aws:ResourceTag/DataClassificationが機密であり、s3:ExistingObjectTag/Ownerが${aws:userid}と等しい場合にs3:GetObject操作を許可します。S3バケットに対するs3:GetObject操作を許可するIAMポリシーを作成し、これをS3バケットへのアクセスを必要とするユーザーのIAMロールにアタッチします。
    • C. S3バケットポリシーを変更し、aws:ResourceTag/DataClassificationが機密であり、aws:RequestTag/Ownerが${aws:userid}と等しい場合にs3:GetObject操作を許可します。S3バケットに対するs3:GetObject操作を許可するIAMポリシーを作成し、これをS3バケットへのアクセスを必要とするユーザーのIAMロールにアタッチします。
    • D. aws:ResourceTag/DataClassificationが機密であり、s3:ExistingObjectTag/Ownerが${aws:userid}と等しい場合に、S3バケットのACLを変更して認証済みユーザーへの読み取りアクセスを許可します。S3バケットに対するs3:GetObject操作を許可するIAMポリシーを作成し、これをS3バケットへのアクセスを必要とするユーザーのIAMロールにアタッチします。

    この問題を見る →

  69. Q69. 開発チームが、Amazon Elastic Kubernetes Service(Amazon EKS)クラスター上でマイクロサービスアプリケーションをデプロイしようとしています。このクラスターはマネージドノードグループを使用しています。チームは、特定のCPU使用率に基づいてマイクロサービスのポッドに対して水平スケーリングを自動的に実行したいと考えています。チームはすでにEKSクラスター上にKubernetes Metrics Serverをインストール済みです。 これらの要件を最も効率的に満たすソリューションはどれですか?

    • A. EKSクラスターに関連付けられたワーカーノードのAuto Scaling Group(ASG)を編集します。ASGのCPU使用率が特定のパーセンテージに達した場合、ターゲット追跡スケーリングポリシーを使用してASGをスケーリングするように設定します。
    • B. クラスター内にKubernetes Horizontal Pod Autoscaler(HPA)およびKubernetes Vertical Pod Autoscaler(VPA)をデプロイします。HPAを目標CPU使用率に基づいてスケーリングするように設定し、VPAをレコメンダー(推奨)モードで設定します。
    • C. AWS Systems Manager Run Commandのノードグループ自動化ドキュメントを実行します。必要なノードサイズの見積もりに基づき、ノードのインスタンスタイプ、ノードカテゴリ、およびノードカテゴリの値を変更します。
    • D. クラスター内にKubernetes Horizontal Pod Autoscaler(HPA)およびCluster Autoscaler(CA)をデプロイします。HPAを目標CPU使用率に基づいてスケーリングするように設定し、CAを自動検出設定で構成します。

    この問題を見る →

  70. Q70. DevOpsエンジニアがAmazon S3コンソールを使用してS3バケットに複数のAmazon S3イベント通知を設定しました。オブジェクトのPUT操作が発生すると、これらのイベント通知がトリガーされます。ファイル拡張子が.csvの場合、AWS Lambda関数が呼び出されます。ファイル拡張子が.xlsxの場合、別のイベント通知によりAmazon Simple Notification Service(Amazon SNS)トピックが呼び出されます。 DevOpsエンジニアは、.csv拡張子のファイルはLambda関数を正常に呼び出すことを確認しましたが、.xlsx拡張子のファイルではSNSトピックが呼び出されないことに気づきました。 .xlsxファイルをS3バケットに追加した際にSNSトピックが呼び出されない原因は何ですか?

    • A. S3コンソールでは1つのイベント通知のみ許可されています。
    • B. Amazon S3は、Amazon SNSへイベント通知を発行するために適切な権限を必要とします。
    • C. イベント通知の処理においてLambdaがAmazon SNSより優先されます。
    • D. Amazon SNSは、オブジェクトPUTを含む一部のS3イベント通知には有効な宛先ではありません。

    この問題を見る →

  71. Q71. ある企業が新しいAWSアカウントで新しいアプリケーションを展開しました。このアプリケーションには、Amazon Simple Queue Service(SQS)標準キューからメッセージを処理するAWS Lambda関数が含まれており、処理結果はAmazon S3バケットに保存されます。Lambda関数は、メッセージがキューに送信されてから1秒以内に処理を完了する必要があります。Lambda関数の最大バッチサイズは10件で、1件のメッセージ処理に2秒かかります。 アプリケーションの初日における負荷増加に伴い、キュー内のメッセージの蓄積速度がLambda関数の処理能力を超えました。一部のメッセージは、要求される処理時間制約を満たせませんでした。ログによると、キュー内の多くのメッセージが無効なデータを含んでいます。企業は、有効なデータを持つメッセージについて、時間制約を満たす必要があります。 これらの要件を満たすソリューションはどれですか?

    • A. Lambda関数のバッチサイズを増加させます。標準キューをFIFOキューに変更します。Lambdaの同時実行数上限を米国東部(バージニア北部)リージョンで増加させます。
    • B. Lambda関数のバッチサイズを縮小します。SQSのメッセージスループット割り当てを増加させます。Lambdaの同時実行数上限を米国東部(バージニア北部)リージョンで増加させます。
    • C. Lambda関数のバッチサイズを増加させます。S3バケットでS3 Transfer Accelerationを設定します。FIFOキューを設定します。
    • D. Lambda関数のバッチサイズをそのままにします。Lambda関数を設定して失敗したバッチ項目を報告するようにします。FIFOキューを設定します。

    この問題を見る →

  72. Q72. ある企業は、Amazon EC2上でホストされている従来のWebアプリケーションをサーバーレスアーキテクチャに移行しようとしています。現在、新規EC2インスタンスとAuto Scalingグループ、および新しいElastic Load Balancerを用いてアプリケーションをデプロイし、Amazon Route 53のルーティングポリシーでトラフィックを段階的に切り替える計画です。新しいサーバーレスアプリケーションでは、Amazon API GatewayとAWS Lambdaを使用する予定です。これに伴い、デプロイプロセスを更新する必要があります。新機能を全ユーザーに展開する前に、少数のユーザーに対してテストできるようにする必要があります。 これらの要件を満たすデプロイ戦略はどれですか?

    • A. AWS CDKを使用してAPI GatewayおよびLambda関数をデプロイします。コードを変更する際には、AWS CloudFormationスタックを更新し、新しいバージョンのAPIおよびLambda関数をデプロイします。金糸雀(カナリア)リリース戦略としてRoute 53のフェイルオーバールーティングポリシーを使用します。
    • B. AWS CloudFormationを使用して、Lambda関数のバージョンとともにAPI GatewayおよびLambda関数をデプロイします。コードを変更する際には、新しいLambdaコードでCloudFormationスタックを更新し、APIのバージョンを金糸雀リリース戦略で更新します。テスト完了後に新バージョンを展開します。
    • C. AWS Elastic Beanstalkを使用してAPI GatewayおよびLambda関数をデプロイします。コードを変更する際には、新しいバージョンのAPIおよびLambda関数をデプロイします。Elastic Beanstalkのブルー/グリーンデプロイを使用してトラフィックを徐々に切り替えます。
    • D. AWS OpsWorksを使用して、サービス層にAPI Gatewayを、カスタム層にLambda関数をデプロイします。コードを変更する際には、OpsWorksでブルー/グリーンデプロイを実行し、トラフィックを段階的に切り替えます。

    この問題を見る →

  73. Q73. ある企業の開発チームは、組織内の単一のAWS Organizationsに所属する複数のアカウントを管理しています。 企業は、すべてのAmazon EC2インスタンスが開発チームが管理する承認済みAMI(Amazon Machine Image)のみを使用することを保証するソリューションを必要としています。このソリューションは、承認されていない非準拠システムの使用を自動的に是正する必要があります。個別アカウントの管理者は、承認済みの非準拠システムの使用を無効化することはできません。

    • A. AWS CloudFormation StackSetsを使用して、各アカウントにAmazon EventBridgeルールをデプロイします。このルールをAmazon EC2に関するAWS CloudTrailイベントに反応するよう設定し、Amazon Simple Notification Service(Amazon SNS)トピックに通知を送信します。開発チームがSNSトピックをサブスクライブします。
    • B. AWS CloudFormation StackSetsを使用して、各アカウントに承認済みAMIリストに基づくAWS Configルールを月次でデプロイします。EC2インスタンスが承認済みAMIを使用していない場合、AWS-STOP2インスタンスのSystems Manager Automationランブックを実行するようルールを設定します。
    • C. Amazon EC2のAWS CloudTrailイベントを処理するAWS Lambda関数を作成します。Lambda関数を設定してAmazon Simple Notification Service(Amazon SNS)トピックに通知を送信し、開発チームがそのトピックをサブスクライブします。組織内の各アカウントにLambda関数をデプロイし、各アカウントにAmazon EventBridgeルールを作成します。Amazon EC2のAWS CloudTrailイベントを監視するEventBridgeルールを設定し、Lambda関数を呼び出します。
    • D. 組織全体でAWS Systems ManagerのAutomation Compliance Managementを有効化します。承認済みAMIを指定したコンプライアンスパッケージを作成し、組織全体にデプロイします。承認済みAMIを使用していないEC2インスタンスに対して、AWS-STOP2INSTANCES Systems Manager Automationランブックを実行するようルールを設定します。

    この問題を見る →

  74. Q74. ある企業がAWS上でデジタルワークロードを実行しています。各アプリケーションチームは独自のAWSアカウントでアプリケーションをホストしており、これらのアカウントはAWS Organizations内で1つの組織にまとめられています。 企業は、組織全体でセキュリティ基準を実施したいと考えています。セキュリティ設定ミスによる非準拠を防ぐため、AWS CloudFormationの使用を必須としています。サポートチームは、AWS Management Consoleを使用してアプリケーション関連の問題を調査・解決し、本番環境のリソースを修正できます。 DevOpsエンジニアは、非準拠を引き起こすAWSサービス設定ミスをほぼリアルタイムで検出し、発見後15分以内に自動修復するソリューションを実装する必要があります。また、正確なタイムスタンプ付きのダッシュボードで非準拠リソースとイベントを追跡する必要があります。 これらの要件を最小限の開発工数で満たすソリューションはどれですか?

    • A. CloudFormationドリフト検出を使用して非準拠リソースを識別します。CloudFormationのドリフト検出イベントをトリガーとしてAWS Lambda関数を呼び出して是正処理を行います。Lambda関数のログをAmazon CloudWatch Logsロググループに送信するよう設定します。Amazon CloudWatchダッシュボードを設定し、ロググループをデータソースとして使用します。
    • B. AWSアカウントでAWS CloudTrailを有効化します。Amazon Athenaを使用してCloudTrailログを分析し、非準拠リソースを特定します。AWS Step Functionsを使用してAthenaのクエリ結果を追跡し、ドリフト検出を実行してAWS Lambda関数を呼び出して是正処理を行います。追跡用に、AthenaをデータソースとするAmazon QuickSightダッシュボードを設定します。
    • C. すべてのAWSアカウントでAWS Configのコンフィギュレーションレコーダーを有効化し、非準拠リソースを特定します。すべてのAWSアカウントで`--no-enable-default-standards`オプションを使用してAWS Security Hubを有効化します。AWS Config Management Rulesおよびカスタムルールを設定します。AWS Configコンプライアンスパッケージを使用して自動是正を設定します。追跡用に、指定されたSecurity Hub管理者アカウントでSecurity Hubダッシュボードを設定します。
    • D. AWSアカウントでAWS CloudTrailを有効化します。Amazon CloudWatch Logsを使用してCloudTrailログを分析し、非準拠リソースを特定します。CloudWatch Logsフィルターを使用してドリフト検出を実行します。Amazon EventBridgeを使用してLambda関数を呼び出して是正処理を行います。フィルター済みのCloudWatch LogsをAmazon OpenSearch Serviceにストリーミングします。OpenSearch Service上で追跡用ダッシュボードを設定します。

    この問題を見る →

  75. Q75. ある企業が、AWS CodePipeline を使用して継続的テストプロセスを自動化しています。この企業は、ステートが失敗した場合に通知を受け取り、Amazon CloudWatch で以下のカスタムイベントパターンを使用したいと考えています: { "source": ["aws.codepipeline"], "detail-type": ["CodePipeline Action Execution State Change"], "detail": { "state": ["FAILED"], "type": ["Approval"] } } このイベントパターンに一致するイベントの種類はどれですか?

    • A. すべてのパイプラインにおけるデプロイおよびビルド操作の失敗
    • B. すべてのパイプラインにおける承認操作の拒否または失敗
    • C. すべてのパイプラインにおけるすべてのイベント
    • D. すべてのパイプラインにおける承認操作

    この問題を見る →

  76. Q76. ある企業がAWS CodeCommitを使用してソースコード管理を行っています。開発者はさまざまな機能ブランチでアプリケーションを変更し、承認後に本番環境に反映させるためにプルリクエストを作成します。 開発者は、直接masterブランチに変更をプッシュしてはいけません。企業は、開発者のIAMロールにAWSCodeCommitPowerUserマネージドポリシーを適用していますが、これにより開発者はアカウント内のすべてのリポジトリのmasterブランチに直接プッシュできるようになっています。 企業は、開発者がmasterブランチに直接プッシュする能力をどのように制限すべきですか?

    • A. GitPushおよびPutFile操作に対する拒否ルールを含む追加ポリシーを作成します。ポリシー宣言内で、条件としてmasterブランチを参照する特定のリポジトリを制限します。
    • B. IAMポリシーを削除し、AWSCodeCommitReadOnlyマネージドポリシーを追加します。ポリシー文で、特定のリポジトリに対するGitPushおよびPutFile操作の許可ルールを追加し、条件としてmasterブランチを参照します。
    • C. IAMポリシーを修正します。ポリシー文で、特定のリポジトリに対するGitPushおよびPutFile操作の拒否ルールを含め、条件としてmasterブランチを参照します。
    • D. GitPushおよびPutFile操作に対する許可ルールを含む追加ポリシーを作成します。ポリシー宣言内で、条件として機能ブランチを参照する特定のリポジトリを制限します。

    この問題を見る →

  77. Q77. あるeコマース企業が、Amazon EBSボリュームでサポートされたAmazon EC2インスタンスを使用しています。EC2インスタンスの手動運用作業を減らすため、DevOpsエンジニアは、EC2インスタンスの予定停機イベントに応じて自動的に再起動操作を実行するようタスクを与えられました。 これを実現するにはどうすればよいですか?

    • A. Amazon CloudWatch Eventsのスケジュールルールを作成し、AWS Systems Manager Automationドキュメントを実行します。このドキュメントは、EC2インスタンスが週1回の停機を予定しているかをチェックし、予定停機が設定されている場合はインスタンスを休止状態にします。
    • B. すべてのインスタンスでEC2自動復旧を有効化します。AWS Configルールを作成し、復旧をメンテナンス期間内でのみ発生するよう制限します。
    • C. 標準業務時間外の承認済みメンテナンス期間内にすべてのEC2インスタンスを再起動します。Amazon CloudWatchアラームを設定し、EC2インスタンスのステータスチェックに失敗した場合に通知を送信します。
    • D. AWS HealthのAmazon CloudWatch Eventsルールを設定し、予定停機イベントが発生した際にAWS Systems Manager Automationドキュメントを実行してEC2インスタンスを停止・起動します。

    この問題を見る →

  78. Q78. セキュリティチームは、AWS CloudTrail を使用して、会社の AWS アカウント内の機微なセキュリティ問題を検出しています。DevOps エンジニアは、AWS アカウント内で無効化された CloudTrail を自動的に修復するソリューションを必要としています。 どのソリューションが、CloudTrail のログ配信停止時間を最小限に抑えることができますか?

    • A. CloudTrail のイベント記録停止をトリガーとする Amazon EventBridge ルールを作成します。AWS SDK を使用して、記録停止が呼び出されたリソースの ARN に対して StartLogging を実行する AWS Lambda 関数を作成します。この Lambda 関数の ARN を EventBridge ルールのターゲットとして追加します。
    • B. 1 時間ごとの評価間隔で設定された、CloudTrail を有効化した AWS Config のマネージドルールをデプロイします。AWS Config ルールのコンプライアンス状態変更をトリガーとする Amazon EventBridge ルールを作成します。AWS SDK を使用して、記録停止が呼び出されたリソースの ARN に対して StartLogging を実行する AWS Lambda 関数を作成します。この Lambda 関数の ARN を EventBridge ルールのターゲットとして追加します。
    • C. 5 分ごとの定期イベントをトリガーとする Amazon EventBridge ルールを作成します。AWS SDK を使用して、AWS アカウント内の CloudTrail トレースに対して StartLogging を実行する AWS Lambda 関数を作成します。この Lambda 関数の ARN を EventBridge ルールのターゲットとして追加します。
    • D. 5 分ごとに実行されるスクリプトで t2.nano インスタンスを起動し、AWS SDK を使用して現在のアカウント内の CloudTrail 状態を照会します。CloudTrail トレースが無効化されている場合、スクリプトでトレースを再有効化します。

    この問題を見る →

  79. Q79. ある企業は、AWS 上で専用のエンタープライズメモリーデータストレージ向けにグリッドシステムを導入したいと考えています。このシステムは、任意の Linux ベースのディストリビューション上で複数のサーバーノードで動作可能です。ノードの追加または削除時に、システム全体が自動的に再構成される必要があります。ノードの追加または削除時には、クラスタの現在のノードメンバーの IP アドレスを一覧表示する /etc/cluster/nodes.config ファイルが更新されます。 この企業は、クラスタへの新規ノード追加タスクを自動化したいと考えています。 DevOps エンジニアは、これらの要件を満たすために何を行うことができますか?

    • A. AWS OpsWorks Stacks を使用してクラスタのサーバーノードをレイヤー化します。/etc/cluster/nodes.config ファイルの内容を生成する Chef レシピを作成し、そのレイヤーの現在のメンバーに基づいてサービスを再起動します。このレシピを構成ライフサイクルイベントに割り当てます。
    • B. nodes.config ファイルをバージョン管理に置きます。クラスタノードの Amazon EC2 タグ値に基づいて AWS CodeDeploy のデプロイ構成およびデプロイグループを作成します。クラスタに新規ノードを追加する際、すべてのタグ付きインスタンスを反映したファイルを更新し、バージョン管理にコミットします。その後、新しいファイルをデプロイしてサービスを再起動します。
    • C. Amazon S3 バケットを作成し、/etc/cluster/nodes.config ファイルのバージョンをアップロードします。S3 ファイルを定期的にポーリングしてダウンロードする crontab スクリプトを作成します。Monit や systemd などのプロセスマネージャーを使用して、ファイルの変更を検知した際にクラスタサービスを再起動します。クラスタにノードを追加する際には、最新のメンバー情報を含むファイルを編集し、S3 バケットにアップロードします。
    • D. ユーザー・データ・スクリプトを作成し、クラスタの現在のセキュリティグループの全メンバーを列挙し、クラスタに新規インスタンスを追加する際に /etc/cluster/nodes.config ファイルを自動的に更新します。

    この問題を見る →

  80. Q80. ある電子商取引企業は、Amazon EBS でサポートされた Amazon EC2 インスタンスを多数使用しています。EC2 インスタンスの手動メンテナンス作業を減らすため、DevOps エンジニアは、予定された EC2 インスタンスの廃止イベント時に自動的に再起動操作を実行するタスクを担当しています。 これを実現するにはどうすればよいですか?

    • A. 週に一度、EC2 インスタンスの廃止予定をチェックする AWS Systems Manager Automation runbook を実行するための定期 Amazon EventBridge ルールを作成します。インスタンスの廃止が予定されている場合、runbook はインスタンスを休止状態にします。
    • B. すべてのインスタンスで EC2 自動回復を有効化します。AWS Config ルールを設定して、メンテナンスウィンドウ内でのみ回復を許可します。
    • C. 標準業務時間外の承認済みメンテナンスウィンドウ中に、すべての EC2 インスタンスを再起動します。EC2 インスタンスのステータスチェックに失敗した場合に通知を送信する Amazon CloudWatch アラームを設定します。
    • D. AWS Health の Amazon EventBridge ルールを設定し、予定された廃止イベントが発生した際に AWS Systems Manager Automation runbook を実行します。この runbook は EC2 インスタンスを停止および起動します。

    この問題を見る →

  81. Q81. ある企業は、Amazon EC2 インスタンス上でアプリケーションをテストするために単一の AWS アカウントを使用しています。この企業は AWS アカウントで AWS Config を有効化し、restricted-ssh AWS Config マネージドルールを有効化しました。 この企業は、アカウント内の任意のセキュリティグループが restricted-ssh ルールに準拠していない場合に、該当するセキュリティグループの名前と ID を含む通知を提供する自動監視ソリューションを必要としています。 DevOps エンジニアは、アカウント内で Amazon Simple Notification Service (Amazon SNS) トピックを作成し、適切な関係者をサブスクライブさせました。 これらの要件を満たすために、DevOps エンジニアが次にすべきことは何ですか?

    • A. AWS Config 評価結果が NON_COMPLIANT となる restricted-ssh ルールに一致する Amazon EventBridge ルールを作成します。EventBridge ルールにインプットトランスフォーマーを設定し、SNS トピックへ通知を発行するように構成します。
    • B. AWS Config を構成し、restricted-ssh ルールのすべての評価結果を SNS トピックへ送信します。SNS トピックにフィルターポリシーを設定し、「NON_COMPLIANT」のテキストを含む通知のみサブスクライバーへ送信します。
    • C. AWS Config 評価結果が NON_COMPLIANT となる restricted-ssh ルールに一致する Amazon EventBridge ルールを作成します。EventBridge ルールを構成し、SNS トピック上で AWS Systems Manager Run コマンドを呼び出してカスタム通知を生成し、その通知を SNS トピックへ発行します。
    • D. すべての AWS Config 評価結果が NON_COMPLIANT となるイベントに一致する Amazon EventBridge ルールを作成します。restricted-ssh ルール用にインプットトランスフォーマーを設定し、SNS トピックへ通知を発行するように構成します。

    この問題を見る →

  82. Q82. ある企業は、AWS Key Management Service (AWS KMS) のキーと手動によるキーのローテーションを用いて、規制遵守要件を満たしています。セキュリティチームは、90 日以上ローテーションされていないキーについて通知を受け取りたいと考えています。

    • A. AWS KMS を、キーが 90 日を超えた場合に Amazon Simple Notification Service (Amazon SNS) トピックへ通知を発行するように設定します。
    • B. Amazon EventBridge イベントを構成し、AWS Lambda 関数を起動して AWS Trusted Advisor API を呼び出し、Amazon Simple Notification Service (Amazon SNS) トピックへ通知を発行します。
    • C. AWS Config のカスタムルールを開発し、キーが 90 日を超えた場合に Amazon Simple Notification Service (Amazon SNS) トピックへ通知を発行します。
    • D. AWS Security Hub を、キーが 90 日を超えた場合に Amazon Simple Notification Service (Amazon SNS) トピックへ通知を発行するように設定します。

    この問題を見る →

  83. Q83. ある企業は、開発者がアカウント内の Amazon Elastic Block Store (Amazon EBS) ボリュームにバックアップ頻度を示すタグを付与することを要求しています。この要件には、バックアップ不要の EBS ボリュームも含まれます。企業は Backup_Frequency というカスタムタグを使用し、その値を none、daily、weekly のいずれかとして、バックアップ頻度を指定します。監査の結果、開発者が EBS ボリュームに適切にタグ付けしていないことが判明しました。 DevOps エンジニアは、すべての EBS ボリュームが常に Backup_Frequency タグを保持し、異なる値が指定されない限り、少なくとも週 1 回のバックアップが実行されることを保証する必要があります。 これらの要件を満たすソリューションはどれですか?

    • A. アカウントで AWS Config を設定します。Backup_Frequency タグが適用されていないすべての Amazon EC2 リソースに対して非準拠と判定するカスタムルールを作成します。Backup_Frequency タグの値を weekly として適用するカスタム AWS Systems Manager 自動化ランブックを補正アクションとして構成します。
    • B. アカウントで AWS Config を設定します。Backup_Frequency タグが適用されていない EC2::Volume リソースに対して非準拠と判定するマネージドルールを使用します。Backup_Frequency タグの値を weekly として適用するカスタム AWS Systems Manager 自動化ランブックを補正アクションとして構成します。
    • C. アカウントで AWS CloudTrail を有効化します。EBS CreateVolume イベントに反応する Amazon EventBridge ルールを作成します。Backup_Frequency タグの値を weekly として適用するカスタム AWS Systems Manager Automation ランブックを構成し、このランブックをルールのターゲットとして指定します。
    • D. アカウントで AWS CloudTrail を有効化します。EBS CreateVolume イベントまたは EBS ModifyVolume イベントに反応する Amazon EventBridge ルールを作成します。Backup_Frequency タグの値を weekly として適用するカスタム AWS Systems Manager Automation ランブックを構成し、このランブックをルールのターゲットとして指定します。

    この問題を見る →

  84. Q84. ある企業は、AWS 上でホストされるサーバーレス Web アプリケーションを開発しています。このアプリケーションは Amazon S3、Amazon API Gateway、2 つの AWS Lambda 関数、および MySQL データベースをバックエンドとする Amazon RDS で構成されています。企業は AWS CodeCommit を用いてソースコードを保管しており、ソースコードは AWS Serverless Application Model (AWS SAM) テンプレートと Python コードの組み合わせです。 セキュリティ監査およびペネトレーションテストの結果、RDS データベースの認証情報(ユーザー名およびパスワード)が CodeCommit リポジトリ内にハードコードされていることが明らかになりました。DevOps エンジニアは、ハードコードされた機密を自動的に検出し防止するソリューションを実装する必要があります。 これらの要件を満たす最も安全なソリューションは何ですか?

    • A. Amazon CodeGuru Profiler を有効化します。ハンドラ関数に @with_lambda_profiler() デコレータを適用します。手動で推奨レポートを確認し、パスワードをセキュア文字列として AWS Systems Manager パラメータストアに書き込みます。SAM テンプレートおよび Python コードを更新し、パラメータストアから機密を取得するようにします。
    • B. CodeCommit リポジトリを Amazon CodeGuru Reviewer と関連付けます。コードレビュー結果に提示される推奨事項を手動で確認し、「機密の保護」オプションを選択します。SAM テンプレートおよび Python コードを更新し、AWS Secrets Manager から機密を取得するようにします。
    • C. Amazon CodeGuru Profiler を有効化します。ハンドラ関数に @with_lambda_profiler() デコレータを適用します。手動で推奨レポートを確認し、「機密の保護」オプションを選択します。SAM テンプレートおよび Python コードを更新し、AWS Secrets Manager から機密を取得するようにします。
    • D. CodeCommit リポジトリを Amazon CodeGuru Reviewer と関連付けます。コードレビュー結果に提示される推奨事項を手動で確認し、パスワードを文字列として AWS Systems Manager パラメータストアに書き込みます。SAM テンプレートおよび Python コードを更新し、パラメータストアから機密を取得するようにします。

    この問題を見る →

  85. Q85. 企業は、アプリケーションのフェイルオーバーを実現する必要があります。このアプリケーションは、Amazon CloudFront および 1 つの Application Load Balancer (ALB) で構成され、単一のリージョンで運用されています。 企業は ALB を CloudFront のデフォルトオリジンとして構成済みです。 最近のいくつかのアプリケーション障害の後、企業はゼロ秒の RTO を求めています。企業はアプリケーションを、温かく準備されたバックアップ構成のセカンダリリージョンへ展開しました。設計者は、HTTP リクエストが所定の RTO を満たすよう、アプリケーションのフェイルオーバーをセカンダリリージョンへ自動化する必要があります。

    • A. セカンダリ ALB をデフォルトオリジンとする第 2 の CloudFront ディストリビューションを作成します。Amazon Route 53 のフェイルオーバー戦略を持つエイリアスレコードを作成し、2 つの CloudFront ディストリビューションのターゲットヘルスチェックを「有効」に設定します。アプリケーションを更新して、この新しいレコードセットを使用するようにします。
    • B. ディストリビューション上に新しいオリジンを作成し、ALB をそのオリジンとして設定します。オリジングループの失敗を HTTP 5xx ステータスコードに基づいて設定します。デフォルトの動作を更新して、オリジングループを使用するようにします。
    • C. 2 つの ALB のターゲットヘルスチェックを「有効」に設定した Amazon Route 53 のフェイルオーバー戦略を持つエイリアスレコードを作成します。2 つのレコードの TTL を 0 に設定します。ディストリビューションのオリジンとして新しいレコードセットを使用するように更新します。
    • D. HTTP 5xx ステータスコードを検出する CloudFront 関数を作成します。この関数が 5xx ステータスコードを検出した場合、関数を構成してセカンダリ ALB へ 307 Temporary Redirect レスポンスを返すようにします。ディストリビューションのデフォルト動作を更新し、関数からのレスポンスを処理するようにします。

    この問題を見る →

  86. Q86. あるDevOpsエンジニアが、AWS Lambda関数を使用するサーバーレスアプリケーション向けの継続的デプロイパイプラインを構築しています。この企業は、失敗したデプロイが顧客に与える影響を最小限に抑えたいと考えています。また、モニタリングも必要です。 これらの要件を満たすデプロイ戦略の構成はどれですか?

    • A. AWS Serverless Application Model(AWS SAM)テンプレートを使用してサーバーレスアプリケーションを定義します。AWS CodeDeployを使用し、Canary10Percent15MinutesデプロイメントプリファレンスタイプでLambda関数をデプロイします。Amazon CloudWatchアラームを使用して関数の健全性を監視します。
    • B. AWS CloudFormationを使用して新しいスタック更新をリリースし、すべてのリソースにAmazon CloudWatchアラームを含めます。開発者向けにAWS CodePipelineの承認アクションを設定し、AWS CloudFormationの変更セットを検証および承認させます。
    • C. AWS CloudFormationを使用して各スタック更新時に新バージョンをリリースし、すべてのリソースにAmazon CloudWatchアラームを含めます。スタック更新中に、AWS::Lambda::AliasリソースのRoutingConfigプロパティを使用してトラフィックルーティングを更新します。
    • D. AWS CodeBuildを使用して、テスト用のサンプルイベントペイロードをLambda関数に追加します。新バージョンの関数をリリースし、Amazon CloudWatchアラームを含めます。本番用エイリアスを新バージョンを指すように更新します。アラームがアラート状態になった場合にロールバックを実行するように構成します。

    この問題を見る →

  87. Q87. ある企業がAWS Organizationsの組織内で複数のアカウントを管理しています。組織内のいずれかのアカウントがAmazon S3バケットの「パブリックアクセスのブロック」機能を無効にした場合、セキュリティ運用(SecOps)チームはAmazon Simple Notification Service(Amazon SNS)による通知を受け取る必要があります。DevOpsエンジニアは、どのAWSアカウントの運用にも影響を与えない方法でこの要件を実装する必要があります。また、実装は組織内の個別メンバーアカウントが通知を無効にできないように保証しなければなりません。

    • A. 特定のアカウントを委任されたAmazon GuardDuty管理者アカウントとして指定します。組織全体のすべてのアカウントでGuardDutyを有効化します。GuardDuty管理者アカウント内でSNSトピックを作成し、SecOpsチームの電子メールアドレスをそのSNSトピックにサブスクライブさせます。同一アカウント内で、GuardDutyの結果を検出するイベントパターンとSNSトピックをターゲットとするAmazon EventBridgeルールを作成します。
    • B. SNSトピックを作成し、SecOpsチームの電子メールアドレスをそのSNSトピックにサブスクライブさせるAWS CloudFormationテンプレートを作成します。テンプレート内に、CloudTrailアクティビティs3:PutBucketPublicAccessBlockを検出するイベントパターンとSNSトピックをターゲットとするAmazon EventBridgeルールを含めます。CloudFormation StackSetsを使用して、このスタックを組織内のすべてのアカウントに展開します。
    • C. 組織全体でAWS Configを有効化します。委任された管理者アカウント内でSNSトピックを作成し、SecOpsチームの電子メールアドレスをそのSNSトピックにサブスクライブさせます。各アカウントに、s3-bucket-level-public-access-prohibited AWS Configマネージドルールを適用するコンプライアンスパッケージを展開し、AWS Systems Managerドキュメントを使用してイベントをSNSトピックに送信し、SecOpsチームに通知します。
    • D. 組織全体でAmazon Inspectorを有効化します。Amazon Inspector委任管理者アカウント内でSNSトピックを作成し、SecOpsチームの電子メールアドレスをそのSNSトピックにサブスクライブさせます。同一アカウント内で、S3バケットのパブリックネットワークへの公開を検出するイベントパターンを用いたAmazon EventBridgeルールを作成し、イベントをSNSトピックに送信してSecOpsチームに通知します。

    この問題を見る →

  88. Q88. ある企業が、マルチテナント環境をVPC内で管理しており、関連するAWSアカウントに対してAmazon GuardDutyを構成しています。同社は、GuardDutyによる調査結果をAWS Security Hubに送信しています。 疑わしい起源からのトラフィックの増加が検出されました。DevOpsエンジニアは、GuardDutyが新たな疑わしい起源を検出した際に、VPC全体のトラフィックを自動的に遮断するソリューションを実装する必要があります。

    • A. 脅威リストを作成します。GuardDutyがこのリストを参照するように構成します。この脅威リストを更新するAWS Lambda関数を作成します。このLambda関数を、GuardDutyから新しいSecurity Hubの検出を受けた際に実行されるように構成します。
    • B. カスタムルールグループを含むAWS WAF Web ACLを構成します。カスタムルールグループ内にブロックルールを作成するAWS Lambda関数を作成します。このLambda関数を、GuardDutyから新しいSecurity Hubの検出を受けた際に実行されるように構成します。
    • C. AWS Network Firewallでファイアウォールを構成します。ファイアウォールポリシー内に破棄(Drop)アクションルールを作成するAWS Lambda関数を作成します。このLambda関数を、GuardDutyから新しいSecurity Hubの検出を受けた際に実行されるように構成します。
    • D. GuardDutyの抑制ルールを作成するAWS Lambda関数を作成します。このLambda関数を、GuardDutyから新しいSecurity Hubの検出を受けた際に実行されるように構成します。

    この問題を見る →

  89. Q89. ある企業が、教育機関の組織内で複数のアカウントを管理しています。同社は、Amazon CloudWatch Logsのログデータを専用のAWSアカウントのAmazon S3バケットに送信するソリューションを必要としています。このソリューションは、既存および今後作成されるCloudWatch Logsのロググループをサポートする必要があります。

    • A. 組織のバックアップポリシーを有効化し、すべてのロググループを専用のS3バケットにバックアップします。すべての所属アカウントからのアクセスを許可するS3バケットポリシーを追加します。
    • B. AWS Backupでバックアッププランを作成します。専用のS3バケットをバックアップ保管庫として指定します。すべてのCloudWatch Logsのロググループリソースをバックアッププランに割り当てます。バックアッププラン内で、すべての所属アカウントのリソース割り当てを作成します。
    • C. AWS Backupでバックアッププランを作成します。専用のS3バケットをバックアップ保管庫として指定します。すべての既存のロググループをバックアッププランに割り当てます。バックアッププラン内で、すべての所属アカウントのリソース割り当てを作成します。AWS Systems Manager Automationランブックを作成し、バックアッププランにロググループを割り当てる処理を実行します。AWS Configルールを作成し、該当しないロググループに対して自動修復アクションを実行します。このルールのターゲットとしてランブックを指定します。
    • D. 専用のAWSアカウントでCloudWatch LogsのデスティネーションとAmazon Kinesis Data Firehoseの配信ストリームを作成します。S3バケットを配信ストリームのデスティネーションとして指定します。すべてのアカウント内のすべての既存ロググループに対してサブスクリプションフィルターを作成します。CloudWatch LogsのサブスクリプションフィルターAPI操作を呼び出すAWS Lambda関数を作成します。ロググループ作成イベントが発生した際に、このLambda関数を呼び出すAmazon EventBridgeルールを作成します。

    この問題を見る →

  90. Q90. ある企業が、AWS上で個人識別情報(PII)を含むファイルを保存するソリューションを構築しています。 要件は以下のとおりです: ・静止時および転送中のデータを暗号化すること。 ・データを少なくとも500マイル(805キロメートル)離れた2つの地理的に分離された場所にレプリケーションすること。

    • A. 少なくとも500マイル(805キロメートル)離れた2つの独立した可用性ゾーンに、プライマリおよびセカンダリのAmazon S3バケットを作成します。バケットポリシーを使用して、HTTPS経由でのみバケットにアクセスできるように強制します。バケットポリシーを使用して、バケットにアップロードされるすべてのオブジェクトに対してAmazon S3 SSE-Cを適用します。2つのバケット間でクロスリージョンレプリケーションを構成します。
    • B. 少なくとも500マイル(805キロメートル)離れた2つの独立したAWSリージョンに、プライマリおよびセカンダリのAmazon S3バケットを作成します。バケットポリシーを使用して、HTTPS経由でのみバケットにアクセスできるように強制します。バケットポリシーを使用して、バケットにアップロードされるすべてのオブジェクトに対してS3マネージドキー(SSE-S3)を強制します。2つのバケット間でクロスリージョンレプリケーションを構成します。
    • C. 少なくとも500マイル(805キロメートル)離れた2つの独立したAWSリージョンに、プライマリおよびセカンダリのAmazon S3バケットを作成します。IAMロールを使用して、HTTPS経由でのみバケットにアクセスできるように強制します。バケットポリシーを使用して、バケットにアップロードされるすべてのオブジェクトに対してS3マネージドキー(SSE-S3)を適用します。2つのバケット間でクロスリージョンレプリケーションを構成します。
    • D. 少なくとも500マイル(805キロメートル)離れた2つの独立した可用性ゾーンに、プライマリおよびセカンダリのAmazon S3バケットを作成します。バケットポリシーを使用して、HTTPS経由でのみバケットにアクセスできるように強制します。バケットポリシーを使用して、バケットにアップロードされるすべてのオブジェクトに対してAWS KMS暗号化を強制します。2つのバケット間でクロスリージョンレプリケーションを構成します。オブジェクトの暗号化に使用される主要リージョンでKMSカスタマーマスターキー(CMK)を作成します。

    この問題を見る →

  91. Q91. DevOpsエンジニアが、AWS LambdaベースのサーバーレスWebアプリケーションをデプロイしようとしています。デプロイは以下の要件を満たす必要があります: ・ステージング環境および本番環境を提供すること。 ・開発者が本番環境にアクセスすることを制限すること。 ・Lambda関数内に資格情報をハードコードしないこと。 ・ソースコードをAWS CodeCommitに保存すること。 ・AWS CodePipelineを使用してデプロイを自動化すること。

    • A. デプロイ先を分離するために、別々のステージングおよび本番アカウントを作成します。AWS Key Management Service(AWS KMS)を使用して環境固有の値を保存します。AWS CodeDeployを介してCodePipelineで自動デプロイを行います。
    • B. デプロイ先を分離するために、別々のステージングおよび本番アカウントを作成します。Lambda環境変数を使用して環境固有の値を保存します。AWS CodeDeployを介してCodePipelineで自動デプロイを行います。
    • C. デプロイ先を分離するために、ステージングおよび本番環境向けのタグ規約を定義します。AWS Key Management Service(AWS KMS)を使用して環境固有の値を保存します。AWS CodeDeployを介してCodePipelineで自動デプロイを行います。
    • D. デプロイ先を分離するために、ステージングおよび本番環境向けのタグ規約を定義します。Lambda環境変数を使用して環境固有の値を保存します。AWS CodeDeployを介してCodePipelineで自動デプロイを行います。

    この問題を見る →

  92. Q92. DevOpsエンジニアは、現在存在する一連のAWSアカウントにコアセキュリティコントロールを適用する必要があります。これらのアカウントはAWS Organizationsの組織内にあります。各チームは、個別のアカウントを管理するためにAdministratorAccess AWSマネージドポリシーを使用します。すべてのアカウントで、利用可能なAWSリージョンにおいてAWS CloudTrailおよびAWS Configを有効化する必要があります。個別アカウントの管理者は、基盤となるリソースの編集または削除を禁止されますが、自身のCloudTrailトレースおよびAWS Configルールについては編集または削除が可能です。

    • A. 標準アカウントリソースを定義するAWS CloudFormationテンプレートを作成します。CloudFormationスタックセットを使用して、組織の管理アカウントからすべてのアカウントにこのテンプレートを展開します。スタックポリシーを設定して、更新および削除操作を拒否します。
    • B. AWS Control Towerを有効化します。AWS Control Towerで既存のアカウントを登録します。個別アカウントの管理者にCloudTrailおよびAWS Configへのアクセス権限を付与します。
    • C. AWS Configの管理アカウントを指定します。AWS CloudFormationスタックセットを使用して、すべてのアカウントにAWS Configレコーダーを作成します。AWS Config管理アカウントを使用して、組織全体にAWS Configルールを展開します。組織の管理アカウントでCloudTrailの組織トレースを作成します。SCP(サービスコントロールポリシー)を使用して、AWS Configレコーダーの変更または削除を禁止します。
    • D. 標準アカウントリソースを定義するAWS CloudFormationテンプレートを作成します。CloudFormationスタックセットを使用して、組織の管理アカウントからすべてのアカウントにこのテンプレートを展開します。CloudTrailリソースおよびAWS Configリソースの更新または削除を、組織の管理アカウントの管理者以外の主体に対して禁止するSCPを作成します。

    この問題を見る →

  93. Q93. ある企業のアプリケーションは、複数の独立したAWS Lambda関数で構成されています。DevOpsエンジニアは、AWS CodePipelineおよびAWS CodeBuildを用いてCI/CDパイプラインを構築し、各Lambda関数を順次ビルド、テスト、パッケージ化、デプロイしています。パイプラインはAmazon CloudWatch Eventsルールを使用して、対応するアプリケーションのソースコードが変更された直後にパイプライン実行を開始するようになっています。このパイプラインを導入した後、DevOpsエンジニアはパイプラインの完了に非常に長い時間がかかることに気づきました。

    • A. パイプライン内のCodeBuildプロジェクトを修正し、より多くのネットワークスループットを利用可能なコンピューティングタイプを使用するようにします。
    • B. 対称型マルチプロセッシング(SMP)構成を含むカスタムCodeBuild実行環境を作成し、ビルドを並列実行できるようにします。
    • C. CodePipelineの設定を修正し、同じrunOrderを指定して各Lambda関数の操作を並列実行できるようにします。
    • D. 各CodeBuildプロジェクトをVPC内で実行するように修正し、専用インスタンスを使用してスループットを向上させます。

    この問題を見る →

  94. Q94. ある企業が、AWS Organizations内の組織に属する複数のAWSアカウントで実行されるデータ取り込みアプリケーションを運用しています。企業はこのアプリケーションの監視およびアクセスの統合を必要としています。現在、このアプリケーションは複数のAuto Scalingグループから構成されるAmazon EC2インスタンス上で実行されています。EC2インスタンスはインターネットへのアクセスを許可しておらず、データが機密であるためです。エンジニアは必要なVPCエンドポイントをすでにデプロイ済みです。EC2インスタンスは、このアプリケーション専用に構築されたカスタムAMI上で実行されています。 アプリケーションの保守およびトラブルシューティングのために、システム管理者がEC2インスタンスにログインできる必要があります。このアクセスは自動化され、集中管理される必要があります。また、インスタンスへのアクセスが発生するたびに、企業のセキュリティチームに通知が送信される必要があります。 これらの要件を満たすソリューションはどれですか?

    • A. ユーザーがEC2インスタンスにログインした際にセキュリティチームに通知を送信するAmazon EventBridgeルールを作成します。EC2 Instance Connectを使用してインスタンスにログインします。AWS CloudFormationを使用してAuto Scalingグループをデプロイします。外部アクセス用の適切なVPCルーティングを展開するためにcfn-initヘルパースクリプトを使用します。カスタムAMIを再構築し、最新版のAWS Systems Managerエージェントを含めます。
    • B. NATゲートウェイとインターネット接続可能なバストホストをデプロイします。バストホストからのすべてのEC2インスタンスへの着信トラフィックを許可するセキュリティグループを作成します。すべてのEC2インスタンスにAWS Systems Managerエージェントをインストールします。Auto Scalingグループのライフサイクルフックを使用してアクセスを監視および監査します。Systems Managerセッションマネージャーを使用してインスタンスにログインします。ログをAmazon CloudWatch Logsのロググループに送信します。データをAmazon S3にエクスポートして監査します。S3イベント通知を使用してセキュリティチームに通知を送信します。
    • C. EC2 Image Builderを使用してカスタムAMIを再構築します。イメージに最新版のAWS Systems Managerエージェントを含めます。Auto Scalingグループを設定して、すべてのEC2インスタンスにAmazonSSMManagedInstanceCoreロールをアタッチします。Systems Managerセッションマネージャーを使用してインスタンスにログインします。セッション詳細情報をAmazon S3に記録するように有効化します。新しいファイルアップロードに対してS3イベント通知を作成し、Amazon Simple Notification Service(Amazon SNS)トピック経由でセキュリティチームにメッセージを送信します。
    • D. AWS Systems Manager Automationを使用して、Systems ManagerエージェントをカスタムAMIに組み込みます。AWS Configを使用して、ルート組織アカウントにSCPをアタッチし、EC2インスタンスがSystems Managerに接続することを許可します。Systems Managerセッションマネージャーを使用してインスタンスにログインします。セッション詳細情報をAmazon S3に記録するように有効化します。新しいファイルアップロードに対してS3イベント通知を作成し、Amazon Simple Notification Service(Amazon SNS)トピック経由でセキュリティチームにメッセージを送信します。

    この問題を見る →

  95. Q95. ある開発者が50台のAmazon EC2 Linuxサーバーを管理しています。これらのサーバーはAmazon EC2 Auto Scalingグループの一部であり、ELB(Elastic Load Balancing)を使用して負荷分散を実現しています。 時折、一部のアプリケーションサーバーがELBのHTTPヘルスチェックに失敗した後に終了します。開発者は根本原因分析を行いたいのですが、サーバーが終了する前にアプリケーションログにアクセスできません。 ログ収集を自動化するにはどうすればよいですか?

    • A. Auto Scalingライフサイクルフックを使用してインスタンスをPending:Wait状態にします。EC2インスタンスのAmazon CloudWatchアラーム「terminate Successful」を作成し、AWS Lambda関数をトリガーします。このLambda関数はSSM Run Commandスクリプトを呼び出してログを収集し、Amazon S3にプッシュした後、ライフサイクル操作を完了します。
    • B. Auto Scalingライフサイクルフックを使用してインスタンスをTerminating:Wait状態にします。EC2 Instance-terminate lifecycle Actionに対するAWS Configルールを作成し、Step Functionsをトリガーします。Step Functionsはログ収集スクリプトを呼び出し、ログをAmazon S3にプッシュした後、ライフサイクル操作を完了します。
    • C. Auto Scalingライフサイクルフックを使用してインスタンスをTerminating:Wait状態にします。EC2インスタンスのAmazon CloudWatchサブスクリプションフィルター「成功終了」を作成し、CloudWatchエージェントをトリガーします。CloudWatchエージェントはログ収集スクリプトを呼び出し、ログをAmazon S3にプッシュした後、ライフサイクル操作を完了します。
    • D. Auto Scalingライフサイクルフックを使用してインスタンスをTerminating:Wait状態にします。EC2インスタンスのAmazon EventBridgeルール「終了ライフサイクル操作」を作成し、AWS Lambda関数をトリガーします。このLambda関数はSSM Run Commandスクリプトを呼び出してログを収集し、Amazon S3にプッシュした後、ライフサイクル操作を完了します。

    この問題を見る →

  96. Q96. ある企業が多数のアプリケーションを運用しています。企業内の異なるチームがさまざまな言語およびフレームワークを使用してアプリケーションを開発しています。これらのアプリケーションは、オンプレミスおよび異なるオペレーティングシステムを実行するさまざまなサーバー上で動作しています。各チームには独自のリリースプロトコルおよびプロセスがあります。企業は、これらのアプリケーションのリリースおよび保守の複雑さを軽減したいと考えています。企業は、これらのアプリケーションを含む技術スタック全体をAWSへ移行中です。企業は、ソースコードの集中管理、一貫性・自動化されたデリバリーパイプライン、および可能な限り少ない下位インフラストラクチャ保守作業を望んでいます。

    • A. すべてのアプリケーションに対して1つのAWS CodeCommitリポジトリを作成します。各アプリケーションのコードを異なるブランチに配置します。ブランチをマージし、AWS CodeBuildを使用してアプリケーションをビルドします。AWS CodeDeployを使用して、集中型アプリケーションサーバーにアプリケーションをデプロイします。
    • B. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して1つのアプリケーションを一度にビルドします。AWS CodeDeployを使用して、集中型アプリケーションサーバーにアプリケーションをデプロイします。
    • C. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して1つのアプリケーションを一度にビルドし、各サーバー用にAMIを作成します。AWS CloudFormation StackSetsを使用して、これらのAMIを活用し、Amazon EC2キューの自動構成および削除を実行します。
    • D. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して、各アプリケーション向けにAmazon Elastic Container Registry(Amazon ECR)内にDockerイメージをビルドします。AWS CodeDeployを使用して、AWS Fargateによって管理されるインフラストラクチャ上のAmazon Elastic Container Service(Amazon ECS)にアプリケーションをデプロイします。

    この問題を見る →

  97. Q97. DevOpsエンジニアは、Linux AMIを自動化された方法で作成したいと考えています。新しく作成されたAMIの識別子は、他のビルドパイプラインがプログラムでアクセスできる場所に保存される必要があります。

    • A. AWS CodePipeline内でパイプラインを構築し、最新のOSオープン仮想化フォーマット(OVF)イメージをダウンロードしてAmazon S3バケットに保存します。guestfishユーティリティを使用してイメージをカスタマイズします。VMインポートコマンドを使用してOVFをAMIに変換します。AMI識別子出力をAWS Systems Manager Parameter Storeのパラメータとして保存します。
    • B. AMI作成手順を定義した値を含むAWS Systems Manager Automationランブックを作成します。AWS CodePipeline内でパイプラインを構築し、このランブックを実行してAMIを作成します。AMI識別子出力をSystems Manager Parameter Storeのパラメータとして保存します。
    • C. AWS CodePipeline内でパイプラインを構築し、最新バージョンのアプリケーションを実行中のAmazon EC2インスタンスのスナップショットを取得します。このスナップショットから新しいEC2インスタンスを起動し、AWS Lambda関数を使用して実行中のインスタンスを更新します。更新済みインスタンスのスナップショットを取得し、AMIに変換します。AMI識別子出力をAmazon DynamoDBテーブルに保存します。
    • D. Amazon EC2インスタンスを起動し、Packerをインストールします。AMI作成方法を定義する値でPackerビルドを設定します。Jenkinsパイプラインを構築し、Packerビルドを呼び出してAMIを作成します。AMI識別子出力をAmazon DynamoDBテーブルに保存します。

    この問題を見る →

  98. Q98. AWS CodePipelineパイプラインがコードリリースプロセスを実装しています。このパイプラインはAWS CodeDeployと統合されており、各CodePipelineステージでアプリケーションのバージョンを複数のAmazon EC2インスタンスにデプロイします。最近のデプロイプロセスにおいて、CodeDeployの問題によりパイプラインが失敗しました。DevOpsチームは、デプロイ期間中のモニタリングおよび通知を強化し、問題解決時間を短縮したいと考えています。問題が検出された際、DevOpsエンジニアはどのように通知を作成すべきですか?

    • A. CodePipelineおよびCodeDeployに対してAWS CloudWatch Logsを実装し、コードデプロイの問題を評価するAWS Configルールを作成し、Amazon SNSトピックを作成してステークホルダーにデプロイの問題を通知します。
    • B. CodePipelineおよびCodeDeployに対してAWS CloudWatch Eventsを実装し、コードデプロイの問題を評価するAWS Lambda関数を作成し、Amazon SNSトピックを作成してステークホルダーにデプロイの問題を通知します。
    • C. CodePipelineおよびCodeDeployのAPI呼び出し情報を記録するAWS CloudTrailを実装し、コードデプロイの問題を評価するAWS Lambda関数を作成し、Amazon SNSトピックを作成してステークホルダーにデプロイの問題を通知します。
    • D. CodePipelineおよびCodeDeployに対してAWS CloudWatch Eventsを実装し、コードデプロイの問題を評価するAmazon Inspector評価ターゲットを作成し、Amazon SNSトピックを作成してステークホルダーにデプロイの問題を通知します。

    この問題を見る →

  99. Q99. あるDevOpsエンジニアが、AWS上で画像処理クラスターを実装する最もコスト効率の良い方法を調査しています。このアプリケーションはDockerコンテナでは実行できず、Amazon EC2上で実行する必要があります。画像処理ジョブはチェックポイントデータをNFSボリュームに保存し、中断を許容します。EC2 Linuxイメージに対するクラスターソフトウェアの設定には30分かかります。

    • A. チェックポイントデータにAmazon EFSを使用します。この作業を実行するために、EC2 Auto Scalingグループおよびオンデマンド料金モデルを使用してEC2インスタンスを一時的にプロビジョニングします。
    • B. EC2インスタンス上でチェックポイントデータにGlusterFSを使用します。バッチジョブを実行するために、EC2インスタンスを手動で構成します。ジョブ完了後に、インスタンスを手動でシャットダウンします。
    • C. チェックポイントデータにAmazon EFSを使用します。EC2 Fleetを使用してEC2 Spotインスタンスを起動し、ユーザーデータを使用して起動時にEC2 Linuxインスタンスを構成します。
    • D. チェックポイントデータにAmazon EFSを使用します。EC2 Fleetを使用してEC2 Spotインスタンスを起動します。クラスター用のカスタムAMIを作成し、インスタンス作成時に最新のAMIを使用します。

    この問題を見る →

  100. Q100. DevOpsエンジニアは、アプリケーションをオンプレミスからAWSへ移行するソリューションを探しています。このアプリケーションはLinux上で実行され、特定バージョンのApache Tomcat、HAProxyおよびVarnish Cache上で正常に動作する必要があります。アプリケーションのOSレベルのパラメータを調整する必要があります。このソリューションには、新しいアプリケーションバージョンを自動的にデプロイする方法が含まれる必要があります。インフラストラクチャはスケーラブルであり、障害が発生したサーバーは自動的に交換される必要があります。

    • A. 必要なすべてのソフトウェアを含むアプリケーションをDockerイメージとしてAmazon ECRにアップロードします。AWS Fargate起動タイプおよびAutoScalingグループを使用してAmazon ECSクラスターを作成します。Amazon ECRをソース、Amazon ECSをデプロイプロバイダーとして使用するAWS CodePipelineパイプラインを作成します。
    • B. アプリケーションコードを、ソフトウェアの設定およびインストール用の保存済み設定ファイルとともにAWS CodeCommitリポジトリにアップロードします。Tomcatソリューションスタックを使用したAWS Elastic Beanstalk Webサーバーレイヤーおよびロードバランス環境を作成します。CodeCommitをソース、Elastic Beanstalkをデプロイプロバイダーとして使用するAWS CodePipelineパイプラインを作成します。
    • C. ソフトウェアの設定およびインストール用の.ebextensionsファイルセットを使用してアプリケーションコードをAWS CodeCommitリポジトリにアップロードします。Tomcatソリューションスタックを使用したAWS Elastic Beanstalkワーカーレイヤー環境を作成します。CodeCommitをソース、Elastic Beanstalkをデプロイプロバイダーとして使用するAWS CodePipelineパイプラインを作成します。
    • D. 必要なソフトウェアを設定およびインストールするためのappspec.ymlファイルを使用してアプリケーションコードをAWS CodeCommitリポジトリにアップロードします。Amazon EC2 Auto Scalingグループに関連付けられたAWS CodeDeployデプロイグループを作成します。CodeCommitをソース、CodeDeployをデプロイプロバイダーとして使用するAWS CodePipelineパイプラインを作成します。

    この問題を見る →