「JAWS-UG - Sendai勉強会 第0回 (2010/12/15) 」に行った。

2010年12月15日、仙台でJAWS-UGの第0回勉強会が開催されます。

当日は、AWSからエバンジェリストの玉川氏が参加します。
またJAWS-UGからも株式会社gumi CTOの堀内氏が参加予定です。

http://jaws-ug.jp/events/gaew52


 Amazon Web Serviceって言うとAPIってイメージがあったが、そのAPIではなく、サーバー関連の話中心になっている。スピーカーはエバンジェリストの玉川さん(ツイッターIDは@kentamagawa)と株式会社gumi CTOの堀内さん(ツイッターIDは@horiuchi)玉川さんがAWSの紹介をし、実際の運用している堀内さんからユーザーとして経験などの話をする。ツイッター上では ハッシュタグ #jawsug

玉川さんの話

アマゾンではの3つのビジネスを展開している。

  • 一般消費者向けサービス(Eコマース)
    • 範囲の経済
  • セラー様向けサービス(物流部分をアマゾンがサービスとして売っている)
    • 規模の経済
  • 開発者IT開発者向けサービス(クラウドコンピューティング

 今日の話は3番目のアマゾンンのクラウドサービスのこと。実はアマゾンって言うと本のサイトが有名だが、 アマゾン自身のアクセス量よりもAWSへのアクセス量が2007年に超えたという事実があり、これからも重要になってくるだろうと。

AWSの本質

 AWSの本質的な部分としては、「自家発電からサービスの委譲(へいつでも必要なだけ安価に)」ということを言っていた。その例としてビール工場の例を挙げる。ビール工場で使う電気は始めは自家発電だった。しかしそれだと、発電機の量で規模が制限されてしまう。時代が移り、今は発電を自己完結するのではなく、電力会社に依存している。これは電気を「いつでも必要なだけ安価に提供」してくれるインフラができたから。

 同じことがIT業界でも起こっている。

  • 自家発電 ⇒ 社内のサーバー
  • 電力会社 ⇒ AWSのデータセンター



AWSのイメージ

 完全な時間課金制。標準的な仮想サーバーでも1〜8ECUECUはアマゾン馬力。1ECU≒1GHz)で1時間あたり7円。ハイCPUでも14円、スパコンクラスでも131円と、導入が手軽になっている。しかし、7円×24時間×30日を目安として考えてしまうが、使いたいときに使い、使った分だけ課金されるということを考えるともっと安くなる。(データの転送量は別にかかるが、金額の10%から20%を目安)



 そのほかのキーワード

  • 仮想サーバー(Amazon EC2)
  • スペックを決めて数分で出来上がるサーバー
  • 作ったサーバーをAMIでスナップショットを取って保存可能
  • AMIを基にスケールアウト
  • AWS Management Consoleでクラウドインフラを管理
  • Windowsでは仮想デスクトップとして使え、Unixでは普通にターミナルでつなげることも可能。


 お客様事例として、 ピーク時、5000台までサーバーがスケールアウトした例を紹介。実際にサーバーを購入するわけではないので、アクセスが無くなればサーバー数が自動的に減るということ。また、夜と昼でピークが逆転する例(昼は少なく夜は多いのが繰り返しとか)こういった場合は昼の時間帯は自動スケールインで経費を浮かすことができ、お金を他に投資に回すことが可能となる。

 他のAWSのサービス

Amazon S3 (Simple Storage Service)
  • 容量無制限のストレージ
  • 置いた瞬間にURLが付く(その場で公開可能)
  • コンテンツ配信(CDN)に直結
  • データ保持能力 99.99999999999%
  • コスト(1Gバイト1カ月置いて、0.083$:約6円)


ミドルウエアレイヤ
サービス
  • Amazon SQS(キューサービス)
  • AmazonSNS
  • Elastic Map reduce
  • Route53(DNSサーバー)
  • モバイルSDK


※これらのサービスをブロックのように組み合わせてサービスを開発可能しかも安い「!

 利用事例としては、ファームウエアの公開など、はじめピークがあって、その後も公開をやめられないものや、ピークが読めないもの、バッチ処理など一時的に集中したいもの、時間的にピークが変わるもの、シーズンものなどに向いている。

本物の蔵独活5か条
  • 初期費用、設備投資がかからない
  • 従量課金、定額、使った分だけ
  • スケールアウト/インが自由自在
  • ビジネススピードを速める
  • 本業専念


 プライベートクラウドは仮想化ではあるが初期費用がかかる、スケールアウト/インがむづかしい、その維持費がかかるため本業に専念できないなどで本当のクラウドではないとのこと。

3分間クッキング(実演)


 実際にAWSを使って仮想サーバにWebサーバーとDBサーバーを立ち上げ、アプリを登録し、そっから冗長化構成に発展させ、非常に耐久性のあるサーバーを構築する実演を行った。

  • 冗長化構成
  • マスタ、スレーブのDB、ロードバランサ

 コレの構成をたった10分ぐらいでやった。実際にやったら見積りやらなんやらで4週間とかかかるだろうとのこと。また、AmazonではISO-27001、PCI,DSSプロバイダ認証、SAS-70 Type2を取得し、非常にセキュアなサーバーを構築することが可能。これは社内VPNなんかとしても使える。

堀内さんの話

 携帯ゲームとかを作っている会社。サーバーのインスタンス数は150台ぐらい。DBサーバーは20台ぐらい。1アプリあたり20から30台のサーバー構成。はじめ物理サーバ2台構成(Webssa-ba 、DbBサーバ)でMIXIアプリを公開したが数分でダウン!そこで・・・

  • プログラムのチューニング ⇒ あまり効果なし
  • スケールアウトを考えた
    • 物理サーバでは見積りでは1カ月ぐらいかかる
    • エンジニアがいなし・・・時間がかかるし・・・

 結果としてクラウドの利用。1週間ぐらいでサービスを再開。

 AMIたんをつくっておくと、自動的にスケーリングしてくれるその閾値を自由に決めることができる。愛してやまない(これは玉川さんの言葉)プログラムが書けるエンジニアであれば気軽にあービスを作ることができる。サーバーの増減を貴にしなくていいので、ピークになればお手軽に増やせるし、閑古鳥になれば、潔く無くすことができる。インフラエンジニア不要になってくる。

所感など


 話を聞いていて、非常に面白かった。クラウド活用ってデータのみがどっかにあってそれを活用できる、ASPとはちょっと違うぞ的なイメージだったけど、コレを見る限り、どっかのクラウドと呼ばれるサービスを使うだけがクラウドじゃなくて、コンピュータっで表現できるハードを含む全てのものが、インターネットを介して低価格に作れ、使えるってことなのかな??コンピュータのリソースをすべてWebで表現できる、使える、公開できる。


 当初、AWSってアマゾンのデータを使うためのAPIやらなんやらでその活用事例なんかが今日講演されるのかなって勝手に思っていた・・・が、それは単なるアマゾンの一つのレイヤであって、プログラマとしてとっつきやすい部分だった。


 今日話しに出た、Amazon EC2Amazon S3Amazon RDS、AmazonSimpleDB、Amazon SQS、Route53・・・と一つ一つが単体のサービスとして使えるしお客様向けに提供できるアイデアが思いつくし、それらを組み合わせた形でも面白いことができるんじゃないか。しかも講師が言うように、誰もが、安価に、個人で。最近読んだ本でもチープ革命のことが言われていたが、まさにそれを地で行く感じがした。


 堀内さんが話のなかで、「ついついサーバーを多くして対応してしまう」的なことを言っていたが、それわかるねぇって感じた。90年代までの「プログラムのチューニングで何とかなるや」から「ハードの進歩にはかなわない」って動きがあったけどそれに似たようなもんでしょう。ハードの進歩、価格の低下によって今まで可読性無視で書いていたコードやらがその工数をハードの金額に当てたほうがいいってなった。その分ぼくらプログラマも可読性を考えればいいようになったし。時代の流れじゃないかな。


 自分の身の回りでは勉強のためって言って、自宅サーバーでサービスやらサイトやら色々公開しているが、なんか「勉強のためって言う、言い訳」という自分のはずかしい部分を鏡で見せられる感じがした「ほら、AWSを使うと自宅サーバーいらないよ、しかも安価にね」って。餅は餅屋にまかせましょう。そう感じた。玉川氏が最期に言っていたが、誰でも、安価に、公開できる「サービスの民主主義」とはさっきの「チープ革命」と相まってなるほどねって感じた。