春のJAWS-UG 三都物語 2013@大阪へ参加してきました


JAWS-UG(AWS User Group Japan)主催「春のJAWS-UG 三都物語 2013」

昨日は、JAWS-UG(AWS User Group Japan)主催の「春のJAWS-UG 三都物語 2013」へ参加してきました。12時開始でしたが、少し遅れて13時からのセッションから参加しました。AWS を利用していて工夫していることや苦労したことなどのお話が聞けて非常によかったです。

3つのセッションに参加してきました。

  • ChatWork 14万ユーザーを支えるインフラ、AWS 活用事例のご紹介
  • ベータテスト100人からアジア350万へ。無制限にスケールし続ける写真共有 SNS を構築するケーススタディ「Snapeee」
  • AWS Elastic Beanstalk ハンズオン

ChatWork 14万ユーザーを支えるインフラ、AWS 活用事例のご紹介

2013031001.jpg

ChatWorkの藤原吉規さんがお話されました。インフラ、モバイルアプリの開発を担当されておられます。

まず、ChatWork ではユーザが5GBまでファイルをアップロードできるそうです。アップロード用のインスタンスを設けて、そこへアップロードしてもらう形が一般的ですが、ChatWork では、Amazon S3 へ直接アップロードしてもらっているそうです。CDP パターンでは、「Direct Object Uploadパターン」に該当します。このパターンだと、アップロード用のインスタンスのコストが抑えられ、しかも Amazon S3 へのデータアップロードは無料ということで、コストパフォーマンスは非常にいい感じがしました。アップロード速度が気になった点ですが、チャットというリアルタイム性が求められるサービスで実運用に耐えている点は非常に素晴らしいと思いました。

続いて、インスタンスの管理では、インスタンスの詳細情報を Amazon SimpleDB に格納し、最新のインスタンス設定ファイルとアプリケーションファイルは、Amazon S3 へ保存しているそうです。プロダクション、ステージング、テスト環境にインスタンスを作るときは、最新の状態で作成でき、またプロダクション、ステージング、テスト環境のインスタンスの把握も簡単に行えるようになっているそうです。Amazon CloudWatch からも情報は取得できるんですが、パースするのが意外と面倒だったりするので、Amazon SimpleDB にデータ入れておくのは非常に参考になりました。

最後に、ホストのエイリアス名の付け方で、インスタンスID、アベイラビリティゾーンなどを含めているそうです。確かにホストのエイリアス名見ても、マネージメントコンソールからインスタンスIDを入れて調べたりしていたので、参考になりました。

インフラ、モバイルアプリの開発と担当されており、インフラも見ながら開発というのはこれまでどっち付かずになりがちだったかと思います。AWS を利用することで、2013年1月はインフラのトラブルもなく、モバイルアプリの開発に専念でき、2013年2月はコストが1割下がったそうです。インフラの安定性とコストパフォーマンスのよさ、そして、何より開発の時間が生まれることは素晴らしいことと思いました。

ベータテスト100人からアジア350万へ。無制限にスケールし続ける写真共有 SNS を構築するケーススタディ「Snapeee」

Snapeee

マインドパレットの神尾隆昌さんがお話されました。CTO/Co-Founderとしてインフラとサービス開発されておられます。

スタートアップの無料サービスということもあり、できる限りコストを抑えたいことから、Amazon RDS は使わず Amazon SimpleDB を選択したそうです。Amazon SimpleDB の問題としては、バックアップが取れない、10GB/ドメインリミット、稀にピークタイムにレスポンスが返ってこないことなどがあったそうです。

バックアップは、CloudAlly というサービスを利用しているそうです。運用していてデータはなくなったことはなく、Amazon SimpleDB の高い可用性と堅牢性をとても感じたそうです。ただ、プロダクションとテストでアカウントを分けているそうですが、間違えてデータを消してしなうことがないか不安とのことでした。

10GB/ドメインリミットは、インデックスを Amazon SimpleDB、コンテンツを Amazon DynamoDBに分けることで解決に向かっているそうです。ただ、まだまだ移動しないといけないドメインが大量にありました。

ピークタイムのレスポンスは、Amazon DynamoDB で IOPS が指定できることと、パーティショニングを上手くすることで解決できたそうです。キーが偏りしないように上手くアプリケーション側でも対応が必要とのことでした。

インフラ、 サービス開発をされています。インフラは問題がなければ、ほとんど何もせず、サービス開発をされているそうです。インフラの安定性とコストパフォーマンスは素晴らしいと思いました。

AWS Elastic Beanstalk ハンズオン

AWS Elastic Beanstalk

アマゾンデータサービスジャパンの片山暁雄さんのハンズオンでした。AWS にも似たようにサービスが3つ存在していて、その一つです。

  • AWS CloudFormation
    リソース管理
  • AWS Elastic Beanstalk
    リソース管理、アプリケーション管理用
  • AWS OptsWorks
    アプリケーション管理

AWS Elastic Beeanstalk は、Application 内に Environment と呼ばれる環境を作ります。例えば、プロダクション、ステージング、テスト Environment を作り、それぞれの Environment で Amazon ELB、Amazon AutoScale、Amazon CloudWatch、コンテナ(各言語環境)を設定することで、アプリケーションのデプロイが簡単に行えるようになっています。

Amazon AutoScale と連携しているので、AWS Elastic Beanstalk から Amazon AutoScale も設定できることから、自動でスケールアウト、インなども設定できます。

下記を事前に理解していると、わかりやすいかと思います。

  • AWS ハンズオン VPC + 3Tier 構成構築編(堀内さんハンズオンおすすめです!)
  • 3-tier system
  • CUI

以上、気になったところをざっと書いてみましたが、全体を通して AWS を利用することで、インフラの安定性とコスト削減、そして、開発の時間が生まれることが素晴らしいと思いました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です