助け合いフォーラム

AWS

AWS ソリューションアーキテクト - アソシエイト(SAA-C03)
問題ID : 30431
問題を開く
Well-Architected Frameworkの「運用上の優秀性」を実現するための設計で、適切なのは次のうちどれか

正解

障害やイベントの原因究明のため、AWSリソースの設定変更履歴を取得する

解説

Well-Architected Frameworkの「運用上の優秀性」の設計原則には、AWSで構築したシステムを効率よく運用するための推奨事項が記載されています。

「運用上の優秀性」の設計原則の一つは、「運用上のすべての障害から学ぶ」です。
運用上のイベントや障害から教訓を学び、運用の改善を促進します。例えば、AWSアカウントの操作履歴とAWSリソースの設定変更履歴から、障害やイベントの原因を特定し、運用手順の改善につなげます。

したがって正解は
・障害やイベントの原因究明のため、AWSリソースの設定変更履歴を取得する
です。

運用上の優秀性の設計原則は以下の5つです。
・運用をコードとして実行する … 運用手順をコード化しイベントに対応して自動実行することにより、人為的なミスを抑制できます。
・元に戻すことができる小規模な変更を定期的に実施する … 変更作業を小規模かつ元に戻せる作業にすることで、変更に失敗した場合でもユーザーへの影響を極力抑えることができます。
・運用手順を定期的に改善する … 定期的な運用手順の見直しと同時に、手順の改良や運用者への周知を行います。
・障害を予想する … 障害シナリオをテストし原因を特定する演習を実施することにより、障害発生の原因を除去したり障害による影響を軽減できます。
・運用上のすべての障害から学ぶ … 運用上のイベントや障害から教訓を学び、運用の改善を促進します。

その他の選択肢については、以下のとおりです。

・ELB配下にある複数のインスタンスは同時アクセスが想定されるので、同時に変更作業を行ってバージョンを揃える
ELB配下にある複数のEC2インスタンスに対して、アプリケーションの更新などの作業をする際は1インスタンスずつ行います。作業による問題が発見されたら即座にELBの負荷分散先から切り離し、元のインスタンスのイメージから作成したインスタンスを負荷分散先に追加することで、作業中に問題が発生してもユーザーへの影響を最小限にできます。
1インスタンスずつ作業を実施し、ユーザーへの影響を減らすことを推奨しているので、誤りです。

・バックアップなどの運用作業は、運用手順のコード化に手間がかかるため自動化はしない
AWSでは人為的なミスを抑制するために、バックアップなどの運用手順をコード化して自動実行することを推奨しているので、誤りです。

・運用手順の変更は運用者の負担になるため、明らかな誤りがない限り変更をしない
AWSでは定期的な運用手順の改善を推奨しているので、誤りです。

参考

【Well-Architected Frameworkとは】
Well-Architected Frameworkは、AWSが提唱するクラウド設計・運用のベストプラクティス集です。AWSユーザーが、効率よく、コストパフォーマンスが高く、安全で信頼のおけるクラウドシステムを設計するためのサポートを目的としています。
Well-Architected Frameworkには「一般的な設計原則」と、6本の柱である「信頼性」「セキュリティ」「パフォーマンス効率」「コスト最適化」「運用上の優秀性」「持続可能性(2021年12月追加)」があります。「一般的な設計原則」と「6本の柱の設計原則」には、クラウド環境におけるシステム設計のベストプラクティスが書かれており、実現したいシステムを設計原則に基づいて設計することで、AWSサービスをより最適に利用できます。
Well-Architected Frameworkは、技術の進化やAWSサービスの変化に応じて継続的に更新されているので、システムを実装した後も定期的にWell-Architected Frameworkと実装したシステムを見直すことが重要です。

【運用上の優秀性の設計原則】
運用上の優秀性の設計原則では、AWSで構築したシステムを効率よく運用できるように、以下の項目を満たす設計を目指します。

・運用をコードとして実行する
運用手順をコード化しイベントに対応して自動実行することにより、人為的なミスを抑制できます。
例えば、仮想サーバー用パッケージのアップデートやバックアップといった運用作業をコード化して実行することで、運用担当者による人為的なミスの抑制や属人化の排除に繋がります。

・元に戻すことができる小規模な変更を定期的に実施する
変更作業を小規模かつ元に戻せる作業にすることで、変更に失敗した場合でもユーザーへの影響を極力抑えることができます。
例えば、ELB配下にある複数のEC2インスタンスを起動させて、アプリケーションの更新などの作業は1インスタンスずつ行います。作業による問題が発見されたら即座にELBの負荷分散先から切り離し、元のインスタンスのイメージから作成したインスタンスを負荷分散先に追加することで、作業中に問題が発生してもユーザーへの影響を最小限にできます。

・運用手順を定期的に改善する
定期的な運用手順の見直しと同時に、手順の改良や運用者への周知を行います。
例えば、定期的にイベントのシミュレート(ゲームデー)を実施し、運用手順に従ってイベントに対応します。その後、CloudTrailで取得したゲームデーの運用手順における操作履歴やイベントに対応した結果をレビューし、不要な作業を削ったり自動化できる作業を発見するなどして、運用手順を改良していきます。

・障害を予想する
障害シナリオをテストし原因を特定する演習を実施することにより、障害発生の原因を除去したり障害による影響を軽減できます。
例えば、本番環境と同等のテスト環境に障害を発生させて、障害による影響の調査と対応手順の演習を実施することにより、実際に障害が発生する前に障害の原因を除去したり、実際に障害が発生した時も素早く手順通りに対応できます。

・運用上のすべての障害から学ぶ
運用上のイベントや障害から教訓を学び、運用の改善を促進します。
例えば、AWSアカウントの操作履歴とAWSリソースの設定変更履歴から、障害やイベントの原因を特定し、運用手順の改善につなげます。
上に戻る

[運用上の優秀性] 軽微な誤りの報告

投稿日 2022/09/09

「解説」の部分にて、

[誤] ELB配下に複数のEC2インスタンスに対して、
[正] ELB配下にある複数のEC2インスタンスに対して、

スタッフからの返信

s staff_satomi

2022/09/12 10:26

tnishita2様 ご指摘の点を修正いたしました。 ご報告下さり、誠にありがとうございます。

この投稿に対して返信しませんか?