AWSの知識地図を読みました

https://gihyo.jp/dp/ebook/2022/978-4-297-12752-7

  • AWSの知識地図を読みました
    • AWSを題材に、パブリッククラウドサービスの利点や関心を勉強できます
    • AWSを初めて触る人にとって、最適な1冊目だと思います
  • 私のAWS前提知識
    • AWSに関する技術書を数冊以上読んだことがありました
    • AWSの各種サービスを使ったこともありました
  • この本をおすすめしたい人
    • パブリッククラウドを利用したシステム構築の経験がなく、触ってみたい人
    • AWSを通じて、パブリッククラウド利用者に必要な概念を学びたい人
      • 多種多様なクラウドサービスのカバー範囲を見極め、適切に組み合わせるアーキテクトへの入門
      • クラウドサービスの責任範囲と、ユーザの運用責任範囲
      • 料金モデルを理解する重要性
      • クラウドサービスを安全に利用するための心得や技術
    • システム構築の勉強をしたことがないアプリケーションエンジニア
  • 次に取り組むと良さそうな題材
    • 本書に記載されている、公式ドキュメントのリンクを眺める
    • AWS公式のホワイトペーパー集等を読み漁る
    • プロダクション環境で、どのように利用されているのかという実例を調べる

2023年に読んだ技術書2冊目です。 人気の本なので読みました。 あのクラスメソッドさんの方々が執筆された本なので、安心して読み切りました。

本の冒頭を読むと、これからAWSを触ってみたい人向けに整理されたもの、という印象を受けます。 今日のインフラ技術、クラウド技術を正しく、詳細に理解しようとすると、 歴史的背景や前提知識が多く要求されますが、 実際には、AWSのサービスを理解するのに必要な、仮想マシンとかコンテナの用語まで(かんたんにですが)解説されており、 読むための敷居は低い印象を受けました。 まずは使い始めて、慣れることの重要性を思い出させてくれる本だと思います。

一方、私がこの本に感じたもう一つの印象として、 今日の システムインフラ設計・構築 における、 一般的かつ基礎的( != 初歩的 )な話題のうちいくつかを取り上げており、 それら関心に対し、パブリッククラウドサービスを用いてどのようにアプローチしているのかを、 AWSの設計思想に乗せて解説する本だと思いました。

つまり、AWSに対するGetting Startedとしてだけではなく、 パブリッククラウド技術自体のイントロダクションも兼ねているようなイメージです。


ここから先は、特に取り上げたい感想を書いておきます。

本書の大きな特徴として、AWSの様々な概念や機能を紹介する際に、 ほぼ必ずと言っていいほど公式ドキュメントへのリンクが記載されているという点があります。

これはAWSに限らず、GCPやその他クラウドサービス全般に言えることですが、 これらクラウドサービスの公式ドキュメントは、ユーザが抱える多くのユースケースに対応するため、網羅的かつ詳細に整備されていることが多いです。 公式ドキュメントを参照する癖をつけておくことは、不必要なつまづきを防ぐことに繋がります。

その網羅性から、目的の情報が記載された場所を見つけ出すのが難しいという問題がありますが、 本書ではピンポイントに関連リンクが貼られているので、ダイレクトに参照することができます。

私が技術の勉強を始めた方に何か一つアドバイスするなら、 「困ったら一次情報を参照しましょう」と伝えると思います。 そんな私にとって、本書の姿勢はとても共感できました。

本書の第2章では、実際にAWSの各種サービスを利用して、 マルチAZでAWS VPCを展開し、プライベートサブネットにデータベースシステムを配置し、 WebサーバをAWS ALBで公開するという、シンプルなシステム構築のハンズオンが用意されています。

このハンズオンでは、まずはじめに全体構成図を紹介し、 読者に成果物の具体的なイメージを持たせた上で、ハンズオンを進行しています。

これはシステム構築だけではなく、エンジニアの様々な作業に共通して言えることですが、 最終的な成果物と、そのために行う目下の作業粒度にギャップがあり、敷居が高い という問題にうまくアプローチした例だと思います。

例えば、ネットワークプロトコルのTCPを実装する際に、 TCPコネクションのライフサイクルをある程度理解してからステートマシンを記述するのと、 何も知らない状態でRFCを読みながらハンドシェイク部を実装するのでは、 目の前の作業に対する解像度が大きく異なります。

特に、AWSの扱いに慣れておらず、システム構築の経験が少ない読者を想定している本書において、 まず全体構成図を見せるというアイデアは、とてもわかりやすいかなと思いました。


私はAWSの本を何冊か読んでいたし、AWS自体を触った経験も多少あったため、 特に苦労することなく、休日ゆったりと一日で読み切る事ができました。

個人的には、第3章の「安全にAWSを使うための基礎知識を押さえる」という章が良かったです。 単純にIAM周りの機能・概念を説明するだけではなく、 実際に運用する上でのプラクティスまで紹介されていて、実用性が高いと思います。