K's Atelier

個人的な学習記録

AWS公式コースウェアの読み込み方

知ってる人は知ってると思うが,AWS公式トレーニングは目の玉飛び出るくらい高額。

「ちょっと聞いてみるか」という気持ちにはとてもなれない。

もし万が一受講する機会があったら,徹底的に情報を吸い出した方がいい。その方法の一例を書き残しておく。これは講師の講座準備作業と同じなのだ。

結論

文書中の図,絵を書き写すこと。書き写した図に,文章から読み取ったことを書き加えていくこと。

公式トレーニングの構成

公式トレーニングは,「テキスト」「ラボ」の2つから構成される。トレーニングによってはラボがない。

テキスト

テキストは,モジュールに分かれる。モジュールは一般書籍でいう「章」にあたる。この中がさらにいくつかに分割されることもある。特定の名称がないので,章のさらに下位の単位を本記事では「セクション」と呼んでおく。

ラボ

たいていのトレーニングには,複数のラボが入っている。「ラボ1」「ラボ2」という具合だ。各ラボは「タスク」に分かれる。タスクには操作の概略的な名前がつけられている。「S3バケットを作成する」という感じ。タスクによってはさらに内容が分割される。最小単位は管理コンソールの1操作に対応していて,ラボごとに通番が振られている。

ラボについての注意点が一つある。ラボは「手順書」になっている。手順ではなく,「ラボの目的」と「ラボ内のサービス構成」を把握しよう。手順はAWSのサービス改訂によってどんどん変わってしまうが,「目的=やりたいこと」と「サービスの基本構成」は簡単には変わらない。

コースウェア読込戦略

テキスト

テキストは,「セクション」単位で読み込めれば完璧。「章」でも読み込み方は同様なので,まとめ方のコツを以下に記述する。

まとめとして,以下の項目を整理していく。

  1. タイトル(章タイトル,セクションタイトル)
  2. 扱う課題
  3. 該当する設計原則
  4. 対応するAWSのソリューション群
  5. 印象的な図

章,セクションともに,通常は「そもそもの課題」が記載される。「CIOから『組織が複雑化してきたのだが,AWSアカウントの管理をどうすればよいか』」といったものだ。対象のセクションを理解する動機になるので抜き書きしておく。単なるAWSサービスの紹介から始まったときは,そのAWSサービスの紹介そのものが課題を表現している。

該当する設計原則は,AWS固有で言うならWell-Architected Frameworkだ。これを当てはめて課題を解決するのがSolution Architectの仕事なので,「専門家としてどういう方向にもっていくか」ということで考える。設計原則は,テキストには直接載っていないことの方が多いので,W-A Frameworkのサイトを確認しながら自分で考える。設計原則に関しては,AWSだけに縛られるものではない。Microservice Architecture, The Telve-Factor Appなどいろいろなものを総合する。妥当性が求められる部分でもあるので,少ないよりは多い方が良い。AWSしか分からないのはSolution Architectとしてはまずい。

あとは,課題を設計原則に沿って考えたときのソリューションとしてのAWSのサービスをまとめる。

最後に,印象的な図。特に構成図は可能な限り「色付きのペンを使って」ノートに描く。手書きしていくと「あれ?なんでここからここにつながるの?」というところが出てくる。疑問点が視覚的に分かるのでやった方が良い。

これをやると,3日間コースで30-40個くらいのまとめができる。

ラボ

ラボは「ラボガイド」という文書化されたものがある。これを落ち着いて確認するのが大切。

ラボのまとめ方は以下の通り。

  1. ラボタイトル
    1. シナリオ
  2. タスク
    1. 構成図
    2. AWSサービス

ラボには,ラボの動機になるシナリオが含まれていることがある。こういったものは書き写しておく。

タスクには構成図があるものとないものがある。図がある場合は必ず手書きで書き写す。なぜかというと,「実際にラボの環境を確認して書き足す」ため。たいていの図は最低限のことしか書いていない。ラボの前提となるRoleや,Logging系のサービスなどは省略されている。Route Tableの設定も記載されていない。また,特定の手順でどこを操作するかも書かれていない。こういうことを追記するために,先に図を手書きしておくのだ。

もし,タスクに構成図が無いときは,AWSサービスのアイコンを書こう。アイコンを何度も書いていると,サービスを視覚的に識別できるようになる。Security系のサービスやVPC周りなど,似たようなアイコンがたくさん存在するので,視覚的に識別できると作業がはかどる。

ラボは以上のように,「一度頭の中で整理してから」実施するのが本来の筋だ。そうでないと単なる「手順通りに操作しました」になってしまう。残念ながら講座実施中はそんな時間は無いはずなので,受講者は受講後に自分で振り返ることになる。

読み込みの手間と成果

教材の読み込みには相当の時間がかかる。ただし,きちんと手を動かして読み込みをした人には想像以上の成果が得られるはずだ。

個人的には,絵を描いていること自体が楽しい。

追記

応用編として,「ラボ環境をCloudFormationで再現する」くらいまでできれば,プロトタイプ作成能力として実務でも通用するだろう(かなりの作業時間がかかるが)。ラボは最低限の設定しかされておらず,特にロギング系の設定がないので,「ここはどういう経路で通信してるんだろう?」といった疑問を解消できないのだ。自力で構築できれば,幅広く疑問を追求できる。