プログラマでありたい

おっさんになっても、プログラマでありつづけたい

AWSパターン別本の狙い。例えばAutoScalingを使えるように。「Amazon Web Services パターン別構築・運用ガイド」の裏話

Amazon Web Services パターン別構築・運用ガイド

Amazon Web Services パターン別構築・運用ガイド

 先日、『Amazon Web Services パターン別構築・運用ガイド』を書きましたというエントリーで、執筆のご案内をしました。せっかくの機会なので、もう少し踏み込んで目標などを解説していきたいと思います。ちなみにタイトルを「AWSパターン別本」と省略していますが、今勝手に考えました。元のタイトル長すぎで、覚えられません。

本書の目標



 今回書いた本の目標として、例えば「読んだ人がAutoScalingくらいを苦もなく使えるようになる」というのがあります。AWSを使いこなしている人にとっては、AutoScalingなんて当たり前と思うかもしれません。しかし、意外に敷居が高いものなのです。AutoScalingを実現するには、最低限、次の事項を理解していて設定できる必要があります。

  • MultiAZ,SingleAZにしろ、ある程度ネットワークを理解している
  • セキュリティグループの設定できる
  • 自分が作成したインスタンスからAMIを作成できる
  • CloudWatchの設定ができる。
  • 動的サイトの場合、アプリのセッションの維持の方法について方針を立てられる

 これだけでも結構たいへんです。実際、JAWSUGの初心者向けセッションに登壇した際に、何度かアンケートをとったことがあります。大体40人位の受講者で実施することが多いのですが、AutoScalingについて聞いたことがある人は、いつも9割くらいです。また使えるようになりたいと聞いてみると、7〜8割くらいの人が挙手します。それに対して実際に構築したことがある人はせいぜい2〜3人です。
 まずはこのギャップを埋めることができれば、結構役立てて貰えるのではと考えました。AWSは、ハンズオンなどで直に学べる機会や、マイスターシリーズやブラックベルトシリーズなど良質のコンテンツが提供されています。一方で、そういったものがあると知らない人も多いのも事実です。本というアプローチは、そういった人たちの何割かにリーチできるのではと思います。

本書のステップ例



 仮に目標をAutoScalingとしたら、この本では次のような要素で解説をしています。まず2章の「AWSを利用する」の部分で、アカウントの作り方からネットワークの作成とセキュリティグループの説明をしています。そしてEC2の使いかたとして、起動からAMIの作成まで取り扱っています。そしてELBの説明です。3章の「パターン別構築例」で、みんな大好きWordPressを例に、Web複数台+DB構成でシステムを構築しています。一旦基本のシステムが出来たあとに、AutoScalingに変更するといった塩梅です。順を追って説明しているので、じっくり読んで貰えればきっと出来るようになると思います。また、例えAWSのコンソールが多少変わったとしても、何のためにするのかということも併せて書いているので、そこの部分は役に立つはずです。

AutoScalingの先に



 次に、この本がAutoScaling使えない初心者向きかというと、そうでもないです。もう一歩先まで目指しているで、例えばAutoScalingで利用するインスタンスは、ElasticBeanstalkを使ったらどうなるのかや、それ以前に静的サイトであればS3 WebHostingで良いよねという話も載せています。
 また後半では、AutoScalingは良いけどアプリケーションのセッションはどう考えるのかとか、デプロイどうするのかとか、そもそもインスタンス起動時の初期化処理はどうなっているのかなどについても触れられています。あとは、AutoScaling時のログをどう考えるかなどですね。ここまで行くと、けっこう中上級者の人でも楽しんで頂けるのではないでしょうか。この辺りの方式については、ただ1つの正解はないと思っています。1つの考え方として、自分の考えるアーキテクチャと較べて貰えればと思います。

まとめ



 改めて見返してみると、いろいろなテーマを取り上げています。社内の教育やお客さんへの説明に使いたいと考えていたので、かなり網羅的になっています。その辺りどう反応して貰えるか、楽しみです。次は、SIerという立場である私が、この本を出したりJAWSUGで登壇していることについて書いてみたいと思います。


Amazon Web Services パターン別構築・運用ガイド

Amazon Web Services パターン別構築・運用ガイド


See Also:
『Amazon Web Services パターン別構築・運用ガイド』を書きました
『Rubyによるクローラー開発技法』を書きました
本を書く前に準備したこと、執筆中にしていたこと