【速報】JJUGアマゾンEC2ナイトセミナ第2回メモ。実際に使っている人の話はオモシロイ
JJUG(日本Javaユーザーグループ)が主催するアマゾンEC2ナイトセミナに参加させていただいた。
今の名刺的にマイクロソフトで.NETでAzureな私の申し込みを快くOKしてくださったうえ、
2番目に講演された横田さんにはQ&Aでいじっていただくなど、実にありがたい場であった。
感謝の意を込めて、私の手元メモを公開させていただきたい。
(私の誤解、誤植や講演者、主催者の方々に不都合な内容があれば、適宜対応させていただく)
ちなみに、私はらぶぷらす未体験。(会場にいた方にしか分からない話で申し訳ない)
内容としては、実体験に基づく興味深い話で、Azureを伝導する私にとっても大変参考になった。
もちろん、立場的にはAmazon EC2マンセー!な訳ではないのでそのあたりは割り引いてみて
いただいてもかまわないが、できるだけ講演者の話の内容をそのままひろったつもりである、
おそらくこの内容がお役に立つ方がいらっしゃるであろうことを想定して掲載することにする。
あえて「Azureではこう」というコメントは書いていない。
< 講演1:自宅サーバーからEC2へ >
(株)paperboy&co.
EC・コミュニティ事業本部
カラメルチーム プロデューサー 藤川真一
ハンドルネーム: ふじしん
ブログ:F's garage
(中略)
■EC2に移転したきっかけ
セレボ社のエンジニアの方が設計した直流電源自作サーバーとEC2を迷っていた(電力効率がよい)
EC2の問題点はランニングコストを払いきれるか?という不安
モバツイッターの寄付を募った分で、数ヶ月の評価は可能だと思った
最終的にはルーター過負荷による緊急対応
■そもそも、なぜEC2か?
初期導入コストがかからない
決断して、すぐ導入できる(選択の余地がなかった)
レイテンシについては、そもそもtwitter apiが海外なので関係ない
携帯→埼玉県→twitter api(西海岸)
携帯→EC2(東海岸)→twitter api(西海岸)
■まず、EC2を始めるのに必要な情報
ほとんど英語の情報で日本語は少ない
id:rx7さんのはてなダイヤリーしか見てません。
■現在のEC2基本システム構成
ロードバランサー(Elastic Load Balancing)
Webサーバー9台 すべて冗長構成 手作業で30分で追加可能
DBサーバー1台(+固定IPオプション)
インスタンスはすべてMedium(32bit Xeon 2.3GHz相当 1.7GByte、350GB HDD)
1台あたり、$0.2/hour 月刊約$144+帯域利用料
PHPセッション共有用にNFSで共有エリアをもうける
(経験上、あまり好ましくない)
■それ以外のシステム構成
画像はほとんどない。
プロフィール画像は本家から配信
バックアップDB(EC2にsmallインスタンス)
ログ検索用に、家のmySQLにレプリケーション
全文検索DBをEC2におくのは値段が高い
(最低でもLarge Instance 0.4$/hour メモリ7.5GB)
メール投稿、DNSは、家の環境で動作
フルフルEC2ではない
■EC2インスタンスの選択について
単体のインスタンスのCPU性能はかなり低い
I/O負荷の高いWebサーバー用途に、small instanceでは全然動かなかったので、もう使わない。
(月刊200万PVぐらいのサイトで試してみたい)
感覚的にはMedium×3インスタンスで
mediumはsmallで構築したAMIをそのまま利用できる
Largeは64bitなのでそのままは使えない
smallではじめてmediumに移行するのがよいか
■Webサーバー追加のフロー
WebサーバーのAMIで、インスタンスを追加
最新のソースをステージングサーバーからrsyncで同期
以前のAMI作成後にアップデートされた処理をコピペでながす
動作確認後ロードバランサーにぶら下げて作業完了
■AMI作成後にアップデートされた作業リスト
AMIの作成はかなり大変
■料金
7月、8月のコスト
インスタンス費用$997 $1200
帯域利用料$225 $340
ロードバランサ費用$23 $24
S3利用料$1.2 $1.2
トータルで$1226 $1606
■EC2運用の今後の課題、問題点
朝起きたらLoad BalancerのIPが変わってた!
ec2へのDNSは、原則CNAMEで割り当て。
movatwitter.jpからwww.movatwitter.jpへ
Cloud watch or WAKAMEによる効率的なインスタンス運用でのコストダウン
(負荷が高いときはあらかじめマシンを増やしておく)
サーバー追加Scriptの自動化で、管理工数の提言
EBSに共有ソースコード置き場?
Reserved Instance…コストダウンとEC2の柔軟性と相反。キャッシュフローの問題
寄付ではEC2は維持できません
■EC2の活かし方
■EC2のメリット サービス性
1h単位でリソースを使えるし、止められる
集客できるポータル+サブサイト(ec2)に最適
eLearning、IRやスポーツ中継、広告キャンペーンなど
セミッターの方がモバツイッターよりEC2に向いている?
■コマンドラインツール
GUIもあるが、コマンドラインツールでコントロールできるのは強力
インスタンス起動、ロードバランサにサーバーを追加など
■iPhoneによるサーバー管理
Touch Term:公開鍵認証に対応しているSSHクライアント
このアプリを手に入れたらモバイルノートはいらなくなった
■クラウド時代のサーバーエンジニア像
クラウドに本当にビジネスメリットがあるのなら
一度AMIを作れば誰でもサーバーを増やせる
再起動管理がほとんど必要ない
サーバー構成の選択の余地が減る
HDDの故障などの運用業務が減る
監視系はあまり変わらないが、原則アプリケーション都合になるのでは?
→アーキテクト+アプリケーションエンジニアで回る
■変われない予測
アプリケーションエンジニアがサーバーに関する勉強を放棄している会社
事業の経験上サーバーエンジニアの力の大きい会社
急速な変化は期待できない?
クラウドも小規模ベンチャーから?!
変化は周縁から起こる(湯川鶴章)
■まとめ
サーバーのハード的な問題から解放されて精神的安定をもたらしてくれたEC2には素直に感謝
(落ちることはあるけれども少なくとも自分のせいではない)
1H単位で必要なときに足せて、必要なときに減らせる。
コレを収益に活かすビジネスモデルを作ったら最強
これからのアプリケーションエンジニアは、
インフラ(AMI)を自分で構築できるようになるべきだし
サーバーエンジニアはシステムアーキテクトを目指すなどの対応が必要
■Q&A
Q:クラウドを利用することで対障害性があがるのか?
A:ぶっちゃけ、ただのレンタルサーバーですよ
Q:継続的にEC2を使い続けるのはコスト的に厳しいのではないか?
A:PVがのびるとAdSenseがのびる、正直言うと、AdSenseに依存している
Q:DBのバックアップはどうしているの?
A:たぶん、EBSを使えばよいのだろうが、気持ちの余裕がなかった
再起動すると消えてしまうmount領域にデータを置いている
2台おちることはなかろうという前提
バックアップ用に1インスタンスずっとたてているよりはEBSを使った方が安い
<講演2:AWSから見るクラウドコンピューティング>
Amazon EC2/S3クラウド入門著者
スラッシュドット編集者 or ブロガー
横田真俊
twitter:Wslash
さくらインターネット出身
東通インテレクト
会社案内、パンフレット印刷
イベント立案
ユーザーサポート請負
Webページ作成
あすなろブログ
オルタナティブブログ
スラッシュドット
来月rx7さんが書く本がでる予定なのでオススメ
■クラウドのおさらい
Google Trends
2008年頃から急速にクラウドコンピューティングという言葉が普及し、数多く検索されている事が分かる
Web2.0の入れ替わりとしての存在
EC2とAzureではEC2の方がちょっと上
(中略)
2006年ごろまでは緩やかだった
1999年SFDC起業
2004年Gmail
2006年S3,EC2
2008年4月GAE
2008年Azure
■日本のクラウドコンピューティング
CBoC NTT
Trusted-Service Platform 富士通
RIACUBE NEC
KDDIクラウドサーバサービス
IIJ
(中略)
■クラウドが注目される理由
巨大ベンダーのリソース切り売りが可能になった
スケールアップからスケールアウトへ
スケーラビリティのあるサーバーが必要になった
■AWSはどれくらい使われているか?
Bandwidth consumed by...
AmazonのAnnual Report
AWSがAmazon本家(ECサイト)を抜いた(急激に伸びている)
■Y combinator調べ
Y combinator:スタートアップインキュベーターとして知られる
67社に調査
13社がAmazonを、14社がSoftlayerを、12社がSlicehostを利用している
Emailのホスト先は?
同じく67社中42社がGoogleで圧倒的
■AWSとは?
フロント:SQS,CloudFront
サーバー:EC2, ElasticMapReduce
ストレージ:S3, SimpleDB
単純なサーバーホスティングではなく、各メニュー同士が連携し、サービスを提供する
■AWSの特徴
従量課金制度
そこそこ高いSLA
EC2 99.5%, S3 99.9%
仮想サーバー以外のメニューが充実している
ストレージやCDN
SSHが落ちたこともある
クラウドだから安心というのは幻想。シビアな運用が必要
Amazonのアカウントを乗っ取られたという人もいるらしい
■EC2
すぐにサーバーの起動・終了ができるので、アクセスが増えた場合などの増減が簡単
従量課金制なので利用した分だけ料金を支払うことになり、余分な初期コストなどを支払う必要がない
最低利用期間などの縛りがない
■料金は
Smallを1日利用すると$2.4
さくらインターネットのエントリーだと7800円×12=936000円
Reserved Instanseにすれば割引もある
■3日で2500台サーバーを増加したAnimoto
50台くらいの亜kそうさーバーを一気に増加
Facebookのアプリが人気になったのが原因
■AWS Management Console
ブラウザだけで操作できる
■S3
192TB分のデータを預けるサイトの事例
有料の写真保存サイト:年間$40
年間50万ドル節約できたと同社CEOがブログに書いている
■SimpleDB
Erlangで記述された分散データベース。Key Value
■SQS (Simple Queue Service)
大量のメッセージを複数のサーバーなどに割り振るときなどに利用する
■CloudFront
ここだけ日本語化されている(これだけ東京にサーバーがある)
AWSのCDN
Amazon S3と連携できる
2桁くらい早くなる。
コンテンツ配信Webサービスです。開発者や起業が、低地園、高速データ転送、長期契約不要のサービスで、エンドユーザーにコンテンツを簡易に配信できる方法を提供している。
Air焼き肉がYahooトピックスにのってしまって、一時的にサービスが止まり、CloudFrontを使っていた時期がある
■MapReduce
Hadoopを使った事例1851年から1980年までの過去記事1100万枚のスキャン画像をPDF化するのにEC2 100台を使って24時間以内に終了した
■Virtual Private Cloud
EC2のインスタンスをVPNで接続する
まだ西海岸Onlyで日本では使えない
■AWSまとめ
すでにAWSはスタートアップ企業に利用され始めている
単純な仮想サーバ・ストレージ以外にも様々なメニューがある
とはいえ、まだユーザーには不安な点が多い
■日本のクラウド(中小規模)
AT-link パワーフレックス
IDCフロンティア NOWA
ビットアイル Cloud ISLE
サーバワークス Cloud works (EC2を使っている)
■日本とAmazon EC2
日本のクラウド:Amazon EC2
定額制:支払制度:従量課金
請求書など:支払い方法:クレジットカード(日本では大きな障害になる、だいたいここではねられる)
↑日本の企業ではこれを売りにしている事が多い
仮想サーバー中心:機能:仮想サーバーの他いろいろ
3日ほど必要:サーバー用意:すぐに追加できる
スケールアップ:性能増加:スケールアウト
24×365運用:監視・運用:ユーザー任せ(EC2ではインスタンスが落ちるとすぐに復旧できない)
少ない:遅延:多い
日本の会社はレイテンシを最大の売りにしているケースが多い(のは悲しい)
■Q&A
Q: Virtual Private Cloudについての追加情報は知らないか?
A: 実際にやったことはないのでよくわからない
Q: 日本にはデータセンターを持たないのか
A: CloudFrontは使っているし、あとは政治の話
Q: AmazonはAWSで収益あげているのか?
A: 全体収益の2%強か。Annual Reportにのっている
Q: レイテンシーが気になったという声は聞かないか?
A: 開発者的にはちょっとつらいが、対ユーザーを考えればそれほど遅いわけではない
全部EC2でやるというより、スケールアウトはEC2で、重たいコンテンツはさくらインターネットで使い分けているユーザーが多いように見受けられる
Q: Azureとの比較
A: 今あるシステムをそのまま移行できる
Cloud Watchなどの周辺ツールがそろってきている
マイクロソフト側はヘルプデスクなどの対応で対決してくるのではなかろうか
…と、最後に、「どうですかね、砂金さん」と。
う、潜入してるのがバレてる…。おとなしくしているつもりだったのが。
というわけで、マイクロソフトの中の人の見解を厚かましくも述べさせていただいた。
Azureについてはインターオペラブルなニュアンスが強いので囲い込まれるのではないか
という恐怖感を払拭して、是非つかってみていただきたい、と。
アンケートには、Amazon EC2とGoogle App EngineとForce.comとAzureで(ガチンコな)比較を
やってみてほしいという要望を書いてみた。天ツバではあるのだが、オモシロイと思う。
中の人の発言禁止だと、さらにオモシロイはず。
終了後、会場にいらした丸山先生との会話の中で、Azureもコミュニティをもっとうまく使えば
いいのに歯がゆい、という貴重なご意見をいただいた。先々週のTech・Edの盛り上がりを見ても、
マイクロソフトの周辺での活動は活発なのだが、外からはそう見えないかもしれないし、
実際に活動量が相対的に少ないのかもしれない。
クラウドのようなインターオペラビリティ性の高いニュアンスのネタで、Javaのコミュニティと
.NETのコミュニティをまぜてみるとお互いのためになるのだろうが、実際にやろうとすると
結構難しいかもしれない。機会を見てチャレンジしてみたいと思う。