「AWSコンテナ設計・構築 [本格] 入門」を執筆しました

はじめに

AWS x コンテナに関する商業誌を執筆しましたので、本ブログにて少し内容を紹介できればと思います。 (しかし、見本誌をつみあげるとなかなか圧巻でした!)

amzn.to

f:id:horsewin:20211018102128j:plain
見本誌

こちら、共同執筆者の新井さん (@msy78)や、監修いただいた佐々木さん(@dkfj)のブログでも触れられている内容になります。執筆に至った経緯などはお二人のブログでも語られていますので、↓をどうぞ。

『AWSコンテナ設計・構築[本格]入門』の監修しました - プログラマでありたい 「AWSコンテナ設計・構築 [本格] 入門」を執筆しました - How elegant the tech world is...!

このブログでは執筆者の一人である、私の視点からの書籍の紹介をいたします。

書籍について

本の概要

全5章で構成しています。本当は付録としてECSコンテナを扱うためのツールもいくつか紹介するための文章は書いていましたが、分量の関係上削らざるを得なかったので書籍単体としては全5章です。以下、それぞれの章の構成です。

  • 1章 コンテナの概要についてかんたんにウォークスルー
  • 2章 AWSでコンテナを使うための組み合わせや学習方法、ユースケース
  • 3章 ECS/Fargateでアーキテクチャ設計をするためのポイントをWell-Architectedアーキテクチャに照らしながら検討
  • 4章 ECS/Fargateでウェブアプリケーションを動かすためのハンズオン
  • 5章 プロダクションレディに近づけるための実践的なハンズオン

対象読者

本書では、次のような読者の方々を想定しています。

  • これからAWSを活用してコンテナを学習しようとしている方
  • オンプレミスからクラウドネイティブなアプリケーション移行を検討されている方
  • Lift&Shiftに向けて、コンテナを活用しようとしている方々
  • プロダクション運用を念頭にしたてコンテナ設計を体系的に学習したい方
  • 自ら手を動かしながらAWSサービスを学びたい方

特に、オンプレミスからクラウドへアプリケーション移行をしようとしている方、EC2などの仮想マシンでサービスを運用していた人のLift&Shiftを手助けしたいという想いが強いです。

本のメタ情報

単行本(ソフトカバー)で448ページとなります。そして驚くことにフルカラーです。当初は4色刷りというはなしでした。しかし、かなり熱量を込めて執筆し、図表の数が膨大になったためにこういった形をとっていただけたと思っています。

なお、図表が151個、画面キャプチャが245個です。図表は3章のコンテナ設計に関わる箇所が大きな比重を占めており、図表で可能な限りわかりやすく直感的に伝えようと心がけました。

冒頭で述べたとおり、本来であれば付録やさらに多くのキャプチャもつけていて、600ページを軽く超えていました。ですが、さすがに広辞苑にするわけにもいかないので削りに削って448ページ着地となりました。 本が少し薄くなることを心がけて紙質も少し薄めのものをチョイスしています。 Kindle版もありますのでKindleiPadにいれる選択もありですね。

また、2021-10-06時点でまだ予約販売の段階ですが、システム管理・監査部門の売れ筋1位となりました。2021-10-11時点でもシステム管理・監査部門の売れ筋1位コンピュータ・サイエンス部門で4位をキープしておりました。総じてありがたい限りです。

目次

目次は次の通りとなっています。 私は「2章」、「4章」、「5章」を担当しています。 共著者の新井さんが「はじめに」、「1章」、「3章」の執筆を担当しました。

f:id:horsewin:20211010235628p:plain

f:id:horsewin:20211010235657p:plain

f:id:horsewin:20211010235718p:plain

4章と5章を少しだけ紹介

私が担当した4章と5章について少し紹介できればと思います。

4章と5章はハンズオンのコンテンツとなっています。

4章では、まずはコンテナアプリケーションを動かしてみることを主題にしたハンズオンとなっています。とはいえ、プロダクションレディを少しでも意識したネットワーク設計やセキュリティ設計を取り入れています。また、4章の内容は以前に同人誌として出版した、「クラウドネイティブファーストストーリー」を下地としています。 フロントエンドアプリケーションとバックエンドAPIアプリケーションをコンテナベースで動かすように構築していきます。

booth.pm

f:id:horsewin:20211010235844p:plain

5章では、3章で触れてきた内容の一部を4章のアーキテクチャに取り入れていきます。4章、5章とステップアップをして、3章のどの部分を実装しているかと対応付けることを意識してハンズオンを組み上げていきました。WAFの導入、FireLens(Fluent Bit)を利用したログ収集、DevSecOpsを意識したCI/CDなど骨のあるコンテンツを盛り込めたと自負しています。

f:id:horsewin:20211010235907p:plain

もちろん、実現したいビジネスやシステムの要件によっては足りない部分があるかと思います。その際は3章の設計ポイントと照らし合わせながら、作り上げたいアーキテクチャを自分たちのモノへアジャストしていただければと思います。

Special Thanks

本書は本当に数多くの方々にレビューを頂いてブラッシュアップできました。 APN Ambassadorである山口さん( @kinunori )やクラメソ ハマコー さん( @hamako9999 )、アイスリーデザイン 久保さん( @seiyakubo )、弊社の佐古さん ( @sakon310 )やArumon(Arumon - NRI発若手中心スタートアップコミュニティ)メンバーなどなど、短い期間の中でのレビュー、本当にありがとうございました。

さいごに

本書はかなり長い期間をかけて執筆していたこともあり、当初記述した内容が古くなったり、どんどん新しいサービスが出てきたりしました(ECS Anywhere、App Runnerなどはキャッチアップと同時並行して加筆していきました)。

パブリッククラウドは本当に変化による陳腐化と進化がはやい領域です。しかし、そういった領域の中であっても、セキュリティ設計や運用設計などは従来の設計ノウハウが残る領域です。そういった陳腐化しにくいノウハウと、今ならこういった形で設計/実装するといったハンズオンをうまく組み合わせた書籍にできました。

また、今回都合上詰めきれなかった内容として、X-rayによる分散トレーシングやIaC (Infrastructure As Code) などがあります。IaCストーリーの著者としても、IaCコンテンツは是非とも届けていきたいので、今後はブログなどからCDKやTerraform、Pulumiで実装したIaCのソースコードも取り上げることができたらと考えています。

booth.pm

ぜひ、多くの方々の手に届き、色々なフィードバックやディスカッションをできればと考えています。 ありがとうございました。

amzn.to