昨今、Amazon Web Services(AWS)が注目を浴びている。もともとメディアやソーシャルゲームなどではよく使われていたが、ここに来てエンタープライズの分野でも適応領域が急拡大しており、「本格的にキャズム(製品の初期市場と普及期の間に存在する深い溝)を超えた」と見なしている関係者は多い。
ところが、新しくAWSにチャレンジしようとするエンジニアからは「難しい」「思ったように学習できない」という声を頻繁に耳にする。本稿では、これからAWSを使い始めようとしているエンジニアを対象に、“つまずきポイント”を明らかにし、その活用を手助けすることを目指している。
第1回では、AWSを始める前に押さえておきたいポイントを解説する。第2回から第5回にかけては、主要サービスごとの“つまずきポイント”を説明する。
ポイント1:サービスの多さに惑わされない
AWSを始める前に押さえておきたいこととして、まず挙げておきたいのが、サービスの数が多いことだ。初心者はこの数に圧倒されがちだが、惑わされないようにしたい。
AWSのサービス一覧ページを見ると、本稿執筆時点(2013年11月)で37のサービスがリストされている。つまり「AWS」自体が37個のサービスの集合体と言えるわけである。さらに、このサービスの中にも細かい別サービスと呼べるようなオプションがあるなど、その全体像をつかむことはかなり難しい。
著者らがAWSを使い始めた2007年ころは、まだEC、S3、SQS、SimpleDBくらいしかサービスがなく非常に分かりやすかった。しかし今は、管理画面(Management Console)のメニューを自分でカスタマイズしなければ一画面にすべてのサービスを表示できないほど、拡大しているのである。
もはや「最初からすべて覚えよう」とするのは難しい。そこで、筆者がお薦めするのは、「企業システムで使うときに必要になりそうなサービスに絞って覚える」ということである。
もちろん最終的にすべてのサービスを覚えることに超したことはないが、相応の時間と労力が必要になるし、次々に新しいサービスやオプションが出てくることが考えられる。
筆者の経験上、企業システムで必要になるサービスは、以下の四つである。
- 仮想サーバーの「Amazon EC2(ストレージオプションのEBSを含む)」
- ストレージの「Amazon S3」
- 仮想プライベートクラウド環境を提供する「Amazon VPC」
- RDBサービスの「Amazon RDS」
もちろん、ほかにも重要なサービスは多くあるが、まず初心者が必ず習得すべきサービスはこの四つだ。対象を絞って学習することで、効率的にAWSを学ぶことができる。
特にAmazon VPC(Virtual Private Cloud)について「必ず習得すべき」としている書籍・情報は少ないように感じられる。しかし現状では、AWSのアカウントを開設するとVPCの機能が標準で有効になっており、かつ筆者らの周囲でもVPCを使わないケースはほとんどない。VPCはAWS初心者にとっても必ず学習すべきサービスであることを重ねて強調したい。