SAPC01 問題集1 SAPC01 2022.04.02 下記の選択問題にチェックを入れて、「送信」ボタンを押してください。 問題1 モバイルゲームアプリケーションは、データをAmazon KinesisDataStreamsに継続的に送信します。 AWS Lambdaは、データストリームレコードを分析し、AmazonDynamoDBデータベースに書き込みます。DynamoDBテーブルには、70%のターゲット使用量で有効な自動スケーリングをしてあります。毎日、一日の始まりと終わりの数分間、平均負荷の5倍を超えることが多いトラフィックサージがあります。 企業はGetRecordsレイテンシーに気づきます。何分もの間、KinesisデータストリームのIteratorAgeMillisecondsメトリックは1分以上に急増します。 特定の瞬間に、AWSLambda関数はProvisionedThroughputExceededExceptionメッセージをAmazonCloudWatch Logsに記録し、一部のレコードをデッドレターキューにリダイレクトします。 ゲームアプリケーションでは、Kinesisプロデューサーは例外をスローしません。この問題に対処するために、企業はどのような変更を行う必要がありますか? Application Auto Scalingを使用してスケーリングスケジュールを設定し、予測可能な負荷スパイク時にDynamoDBテーブルの書き込み容量をスケールアウトします。 Amazon CloudWatchイベントを使用してデッドレターキューを監視し、Lambda関数を呼び出して失敗したレコードを自動的に再試行します。 DynamoDBテーブルの自動スケーリングポリシーのターゲット使用率を20%に減らして、負荷の急増に迅速に対応します。 Kinesisデータストリームのシャードの数を増やして、スループット容量を増やします。 None 問題2 サービスのデプロイを支援するために、開発チームは多数のAWSCloudFormationテンプレートを作成しました。 彼らは、ネットワーク/仮想プライベートクラウド(VPC)スタック、データベーススタック、要塞ホストスタック、およびWebアプリケーション専用のスタックのフレームワークを開発しました。 各サービスには、少なくとも次のものをデプロイする必要があります。 ・ネットワーク/仮想プライベートクラウドスタック ・バッションとして機能するホストスタック ・Webアプリケーションのスタック 各テンプレートには多数の入力パラメーターがあるため、AWSCloudFormationパネルを使用してサービスを個別にインストールすることはできません。 通常、1つのスタックの入力パラメーターは、他のスタックの出力です。 たとえば、ネットワークスタックのVPC ID、サブネットID、およびセキュリティグループをアプリケーションまたはデータベーススタックで利用する必要がある場合があります。 運用負荷とサービス展開に提供されるパラメーターの量の両方を削減するのに役立つアクティビティはどれですか? (2つ選択してください。) サービスごとに新しいAWSCloudFormationテンプレートを作成します。クロススタック参照を使用するように既存のテンプレートを変更して、各テンプレートに多くのパラメーターを渡さないようにします。アプリケーションに必要な各スタックを、新しいスタックからネストされたスタックとして呼び出します。 AWS CloudFormationコンソールから新しく作成されたサービススタックを呼び出して、以前に必要だったパラメーターのサブセットを使用して特定のサービスをデプロイします。 サービスごとにAWSサービスカタログに新しいポートフォリオを作成します。サービスの構築に必要な既存のAWSCloudFormationテンプレートごとに製品を作成します。 AWSサービスカタログでそのサービスを表すポートフォリオに製品を追加します。サービスをデプロイするには、特定のサービスポートフォリオを選択し、すべてのテンプレートをデプロイするために必要なパラメーターを使用してポートフォリオを起動します。 サービスごとにAWSCodePipelineワークフローを設定します。既存のテンプレートごとに、デプロイアクションとしてAWSCloudFormationを選択します。 AWSCloudFormationテンプレートをデプロイアクションに追加します。依存関係が守られていることを確認するために、デプロイメントアクションが処理されていることを確認してください。構成ファイルとスクリプトを使用して、スタック間でパラメーターを共有します。サービスを起動するには、サービスの名前を選択して変更をリリースすることにより、特定のテンプレートを実行します。 AWSステップ関数を使用して新しいサービスを定義します。サービスごとに新しいAWSCloudFormationテンプレートを作成します。クロススタック参照を使用するように既存のテンプレートを変更して、各テンプレートに多くのパラメーターを渡さないようにします。アプリケーションに必要な各スタックを、新しいサービステンプレートからネストされたスタックとして呼び出します。サービステンプレートを直接呼び出すようにAWSStepFunctionsを設定します。 AWS Step Functionsコンソールで、ステップを実行します。 AWSサービスカタログでサービスの新しいポートフォリオを作成します。サービスごとに新しいAWSCloudFormationテンプレートを作成します。クロススタック参照を使用するように既存のテンプレートを変更して、各テンプレートに多くのパラメーターを渡さないようにします。アプリケーションに必要な各スタックを、新しいスタックからネストされたスタックとして呼び出します。アプリケーションごとに製品を作成します。サービステンプレートを製品に追加します。それぞれの新製品をポートフォリオに追加します。ポートフォリオから製品をデプロイして、デプロイメントを開始するためにのみ必要なパラメーターを使用してサービスをデプロイします。 問題3 企業は、オンプレミスのビルドアーティファクトサーバーをアマゾンウェブサービス(AWS)ソリューションに移行しています。 既存のシステムは、ファイアウォールのローカルネットワーク内のクライアントにアーティファクトを提供するApacheHTTPサーバーで構成されています。 アーティファクトの利用者の大多数は、匿名のHTTPを介してアーティファクトをダウンロードする組み込み自動化スクリプトであり、企業は移行期間中にこれを調整することはできません。 企業は、S3の静的Webサイトホスティングに移行することを選択します。 アーティファクトコンシューマーは、仮想プライベートクラウドのパブリックサブネットとプライベートサブネット(VPC)内のAmazonEC2インスタンスに転送されます。 アーティファクトの利用者が、すでに実施されている自動化されたプロセスを変更せずにアーティファクトをダウンロードできるようにするソリューションはどれですか? VPCのパブリックサブネット内にNATゲートウェイを作成します。 NATゲートウェイを指すデフォルトルートを、コンシューマーを含むサブネットに関連付けられたルートテーブルに追加します。バケットポリシーを設定して、NATゲートウェイのエラスティックIPアドレスと一致する条件IpAddressおよび条件キーaws:SourceIpを使用してs3:ListBucketおよびs3:GetObjectアクションを許可します。 VPCエンドポイントを作成し、コンシューマーを含むサブネットに関連付けられたルートテーブルに追加します。バケットポリシーを設定して、VPCエンドポイントのIDと一致する条件StringEqualsおよび条件キーaws:sourceVpceを使用してs3:ListBucketおよびs3:GetObjectアクションを許可します。 Amazon EC2のIAMロールとインスタンスプロファイルを作成し、ビルドアーティファクトを消費するインスタンスにアタッチします。バケットポリシーを設定して、作成されたIAMロールに一致するプリンシパルに対してs3:ListBucketおよびs3:GetObjectsアクションを許可します。 VPCエンドポイントを作成し、コンシューマーを含むサブネットに関連付けられたルートテーブルに追加します。バケットポリシーを設定して、VPC CIDRブロックに一致する条件IpAddressと条件キーaws:SourceIpを使用してs3:ListBucketおよびs3:GetObjectアクションを許可します。 None 問題4 AWSのクライアントは、EC2インスタンスのAutoScalingグループを利用するアプリケーションを起動しています。お客様のセキュリティポリシーに従って、これらのインスタンスからお客様の仮想プライベートクラウド内の他のサービスへのアウトバウンド接続は、インスタンスの一意のIDを含む一意のx509証明書を使用して認証する必要があります。さらに、認証の信頼性を確保するには、顧客の鍵管理サービスによってx509証明書を作成する必要があります。次のセットアップのどれがこれらの仕様を満たしていますか? 署名付き証明書を含むAmazonS3オブジェクトへのアクセスを許可するIAMロールを設定し、このロールでインスタンスを起動するようにAutoScalingグループを設定します。インスタンスのブートストラップで、最初の起動時にAmazonS3から証明書を取得するようにします。 AutoScalingグループが使用するAmazonマシンイメージに証明書を埋め込みます。起動されたインスタンスに、署名用のキー管理サービスにインスタンスに割り当てられたインスタンスIDを使用して証明書署名要求を生成させます。 新しいインスタンスの起動に関するSNS通知を信頼できるキー管理サービスに送信するようにAutoScalingグループを設定します。キー管理サービスに署名付き証明書を生成させ、新しく起動したインスタンスに直接送信します。 起動したインスタンスを構成して、最初の起動時に新しい証明書を生成します。キー管理サービスに、関連付けられたインスタンスのAuto Scalingグループをポーリングさせ、新しいインスタンスに証明書署名(特定のインスタンスIDを含む)を送信させます。 None Time's up
コメント