AWS Well-Architected Frameworkドキュメントを読んでみました(W-Aレビュー編)
はじめに
こんにちは。DWS職員のshumpeiです。
ご存じの方が多いかと思いますが、標題のAWS Well-Architected Framework(以下、W-Aと略します)は、ごく簡単に言うとAWSを用いてワークロードを構築・運用する上でのベストプラクティス(以下、BPと略します)を集めて体系的に整理したものです。そして、W-Aに沿ったワークロードになっているかを検討する活動をW-Aレビューと呼びます。W-Aレビューで洗い出されたHRIs(High Risk Issues)やMRIs(Medium Risk Issues)を解消することで、より望ましいワークロードに改善することが推奨されています。
最近、私が担当しているプロジェクトにてW-Aレビューを実施しています。レビューを進めるためにW-Aのドキュメントを読む必要が生じましたが、これがなかなか大変なことに私には感じられました。そこで本記事では、どういった点に注意を向ければW-Aドキュメントをスムーズに読み進められるか、私見をまとめます。
W-Aレビューのためにドキュメントをしっかり読みたいけれど……
W-Aレビューでは、対象ワークロードでベストプラクティスが適用されているか判定します。このレビューを実施する際に便利なのが、次のようなUIを持つW-Aツールです。
W-Aツール上では各ベストプラクティスの概要を確認できますが、これだけで判定するのは難しいケースもあります。そこで、BPの内実をより細かく把握するためにW-Aドキュメントを参照する必要が出てきます。W-Aドキュメントの大まかな構成は次のとおりです。
- 概要とイントロダクション
- フレームワークの柱
- レビュープロセス
- まとめ
- 寄稿者
- その他の資料
- 改訂履歴
- 付録: 質問とベストプラクティス
このドキュメントですが、分量がかなり多いです。英語版・日本語版ともにPDFですと550ページを超えます。業務としてレビューに割ける時間に限りがあるケースもあります。今回は、W-Aレビューを完遂するという目的をスムーズに達成するためには、ドキュメントをどのように読んでいけばよいかについて、私見を書きます。このような問題関心ですので、以下ではW-AドキュメントでBPについて詳しく解説されている「付録: 質問とベストプラクティス」のパートに焦点を当てます(なお、このパートだけで500ページ以上あります)。
W-AドキュメントのBPページの構成
「付録: 質問とベストプラクティス」のパートの各BP解説ページは、次のような項目から構成されています。
- リード文
- 期待される成果
- 一般的なアンチパターン
- このベストプラクティスを活用するメリット
- このベストプラクティスが確立されていない場合のリスクレベル
- 実装のガイダンス
- リソース
*BPによっては書かれていない項目もあります。
以下では、各項目ごとに何が書かれているのかと、BPが対象ワークロードで実現しているかを判定する上でどのように情報を拾えば良さそうかについて、書いていきます。
リード文
BPの概要が書かれています。ここの記述だけで判定を下すことができるはずですが、一般的・抽象的な書きぶりのBPも多く、判断に迷うこともしばしばです。とはいえ、BPの中核的内容はここの記述に集約されているはずですので、一読して理解できなかった場合は、繰り返し読んだり、他の項目を読んだ上で再読するなどして、極力明瞭な理解を得た方が良さそうです。
期待される成果
この項目では、BPを適用した結果、ワークロードがどのような状態になっているかが簡潔に記述されています。概要よりもやや具体的な記述になっているケースもあるので、対象ワークロードと照らし合わせて判断を試みるのが良さそうです。
一般的なアンチパターン
項目名の通り、BPに反する避けるべきあり方が記述されています。この項目は、リード文や期待される成果に比べて具体的な記述が多いため、対象ワークロードが当てはまるかどうか、判断しやすいと感じました。対象ワークロードがここに当てはまる場合は、基本的にNGにして良さそうです。ただし、ここで挙げられているアンチパターンに当てはまらないからといってBPが実現しているとは限らないので注意が必要とも思いました。
このベストプラクティスを活用するメリット
内容は項目名の通りです。レビュー時よりも、レビューの結果洗い出されたHRIs・MRIsのうち、どれから解消すべきかの優先順位を決める際に参照するのが良さそうです。
このベストプラクティスが確立されていない場合のリスクレベル
内容は項目名の通りで、高・中・低の3段階で記述されています。「このベストプラクティスを活用するメリット」同様、どの問題を解消すべきかの優先順位を決める際に参照するのが良さそうです。
実装のガイダンス
ここのボリュームが多いBPが多い印象を受けました。BPを適用するための具体的手順が書かれていることが多いので、W-Aレビュー時には流し読み・主要な見出しをさっと眺める程度でも良さそうです。
しかし、実装のガイダンス以前の項目でBPの内実を十分に理解できず、対象ワークロードにBPが適用されているかどうかが判断できないこともあります。そういったケースでは、このパートを精読して、推奨されている手順を日々の設計・開発・運用で踏んでいるかどうかを考えることで、BPが適用されているかどうかが判定しやすくなると思いました。
リソース
BPを適用するにあたって有益なドキュメント等のリンクが掲載されています。レビュー時に辿るよりも、HRIs・MRIs改善に取り組む時や、自分が気になったサービスについて学習する時に参照するのが良さそうと思いました。
おわりに
W-Aドキュメントを隅々まで理解できるのが理想的ですが、ボリュームのあるドキュメントですので、目的に応じて濃淡をつけて読むことも有効と思いました。今回はW-Aレビューを念頭においた読み方をしましたが、HRIs・MRIs改善に取り組む際もW-Aドキュメントを繰り返し読んでいきたいと思います。本記事がW-Aドキュメントを読む方のお役に立てたなら幸いです。