恵比寿で開催されたJJUG主催のナイトセミナー「アマゾンEC2 ナイトセミナ 第2回」に参加してきました。
目的は、モバツイッターの中の人である、えふしんさんによる、モバツイをEC2へ移行した話が聞きたかったのと、ついでにご挨拶したかったので早々と仕事を切り上げて行ってきました。
参考: F's Garage @fshin2000 :そろそろモバツイがEC2に移転した話でも書くとするか。
現在のサービスの状況やシステム構成、自宅サーバ運用の限界点など、裏側の話が特に興味深かった!面白かったです。
せっかくメモをとったので、ここに残しておきます。
究極のスモールスタート 自宅サーバからEC2へ
講演者
- 藤川真一(えふしん)さん
- (株)paperboy&co. ECコミュニティ事業部
- ペパボはGMOインターネットグループ、レンタルサーバ(lolipop)、ブログ(JUGEM)などが有名
- カラメル(http://calamel.jp)のプロデューサ
- http://www.milkstand.net/fsgarage/
- (株)paperboy&co. ECコミュニティ事業部
カラメルの体制
- カラメルチーム
- プロデューサ、プログラマ、ディレクタ、デザイナー
- サーバチーム
- サーバ構築、管理、監視
えふしんさんのこれまで
- 〜2000年
- 半導体系生産装置のエンジニア
- 2000年10月
- web制作ベンチャーに転職
- 2006年1月〜
- 現在のペパボへ
- ネット歴20年
元々使っていた自宅サーバ
- 2006年7月より運用
- Fedora Core 5
- Poweredge SC430
- Bフレッツマンション(上り1Mbps程度w)
- メールサーバ、ブログ等を動かしていた
自宅サーバ運用の目的
- 自宅サーバの限界を見極めたかった
- 自分でインフラ運用したかった
- 尊敬する増井俊之さん「必要なものは自分で作る」
モバツイッターの生い立ち
- 2007年4月開始、自宅で運用
- PHP5+MySQL
- (eoフレームワーク)
モバツイの特徴
- 携帯に最適化された画面を表示
- 写真や位置情報を送る
- はてなフォトライフ、携帯百景と連携
- URLが書かれたページを携帯向けに表示
モバツイの現状
- ユニークアカウント数: 15万人
- 24時間以内に、約4万人程度がアクセス
- twitterのAPI利用頻度が多いので、日本向けのtwitterポータルページに、のせてもらっている
- 約160万PV/日
自宅サーバでのトラブル履歴
- RAIDのHDDが壊れて徹夜でメンテ
- サーバ増かでブレーカーが落ちる
- 雷でサーバが落ちる
- ハブが壊れて、仕事を抜け出して家に帰る
- 部屋が暑い、エアコンが効かない、エアコンも24時間稼働
- Webサーバの過負荷対策として、ハイパワーCPU買ったら部屋が暑くなった
- モバツイは、WebサーバがAPIリクエストしにいくので、Webサーバから重くなる
- ルーター過負荷で、家からustが見られなくなる
- 元々、メルコの1万円くらいの製品を使っていたのだが、YAMAHAのRT1000にしたが・・・
- (自宅サーバは、最初は1台、最後はクアッドコアCPUを含む2台体制だったとのこと)
自宅サーバの限界点
- AMDクアッドコア一台では、モバツイ換算で月間600万PVが限界
- 最終的なボトルネックはルーターか帯域
- モバツイはin/outが同時に発生する
- ただし、画像はほとんどない
EC2に移転したきっかけ
- セレボ社のエンジニアの方が設計した直流電源自作サーバ(電気をあまり食わないらしい)とEC2を迷っていた
- EC2の問題点はランニングコストを払いきれるかといった不安
- モバツイの寄付を募った分で、数ヶ月の評価は可能になった
- 最終的にはルーター過負荷による緊急対応
- (モバツイの機嫌がわるいと、えふしんさんの機嫌がわるいww)
何故EC2か
- 初期導入コスト不要
- 決断してすぐ導入できる
- 選択の余地がなかった
- レイテンシについては、そもそもtwitter APIが海外なので関係ない
- 自宅サーバ: 携帯 => 埼玉 => twitter(US西海岸)
- EC2: 携帯 => EC2(US東海岸) => twitter(US西海岸)
EC2へ移転
- 当ブログのエントリ(Amazon EC2/S3を使ってみた - まとめ (Amazon Web Services関連エントリ目次) - 元RX-7乗りの適当な日々)をマニュアル代わりにしたとのこと
- (ここだけ見てればでOK!とのことです。ありがとうございます!)
モバツイのシステム構成 on EC2
- ロードバランサ(Elastic Load Balancing)
- Webサーバ9台、全て冗長構成
- 手作業で30分で追加可能
- DBサーバ1台
- +固定IPオプション
- 同時接続数がはねあがってきているので、2台目がそろそろ必要かも
- インスタンスは全てMediumインスタンス
- Xeon 2.3GHz, 1.7GBmem, 350GBdisk
- PHPセッション共有用にNFSで共有エリアを設ける
- 画像はほとんどない
- バックアップDB
- EC2のSmallインスタンスでレプリケーション(いつでも使える状態に)
- ログ検索用に、家のMySQLにレプリケーション
- 全文検索DBをEC2に置く(Largeインスタンス)のはコスト高
- メール投稿、DNSは家の環境で動作
EC2インスタンスの選択について
- 単体のインスタンスのCPU性能は低い
- I/O負荷の高いWebサーバ用途にSmallインスタンスでは動かなかった
- 月間200万PVくらいのサイトから試してみたい、とのこと
サーバの追加方法
- Webサーバ用のAMIからサーバ追加
- 最新のソースをステージングサーバよりrsyncで同期
- 以前のAMI作成後にアップデートした処理を流す
- 動作確認後、ロードバランサの下にぶらさげる
かかっている費用
- 2009年7月
- インスタンス: $977
- 帯域: $225
- ロードバランサ: $23
- S3: $1.2
- 合計: $1226
- 2009年8月
- インスタンス: $1200
- 帯域: $340
- ロードバランサ: $24
- S3: $1.2
- 合計: $1606
- 参考情報として、、、
- モバツイは携帯のHTMLメイン
- ただし、携帯はまともにキャッシュしてくれないので、常に転送が発生
EC2運用の今後の問題点、課題
- 朝起きたら、ロードバランサのIPが変わっていたことも
- EC2へのDNSは、原則CNAMEで割り当てる
- なので、movatwitter.jp から www.movatwitter.jp へ
- EC2へのDNSは、原則CNAMEで割り当てる
- Amazon Cloud Watch or Wakameで効率的なインスタンス運用でのコストダウン
- サーバ追加スクリプトの自動化で管理コストの削減
- EBSに共有ソースコード置き場
- Reserved Instanceの活用
- (寄付だけでは、EC2では維持できません)
EC2の生かし方
- メリット、サービス性
- 1h単位でリソースを使えられるし、止められる
- 集客できるポータル + サブサイトに最適
- e-learning、IR、スポーツ中継、広告キャンペーン
- モバツイよりセミッターの方が、EC2に向いていそう
- コマンドラインツールでコントロールできるのは協力
- GUIもあるけど
- iPhoneによるサーバ管理
- Touch Term 公開鍵認証に対応しているSSHクライアント
クラウド時代のエンジニア像
クラウドに本当にビジネスメリットがあるなら、、、
- 誰でも簡単にサーバが増やせる
- OSのライブラリ化
- 再起動管理がほとんど必要ない
- サーバ構成の選択の余地が減る
- HDD故障などの運用業務が減る
- 監視系はあまりかわらない
アーキテクト+アプリケーションエンジニアで回る
変われない予測
- アプリケーションエンジニアがサーバに関する勉強を放棄している会社(自分の仕事じゃない)
- 事業の経緯上、サーバエンジニアの力の大きい会社
クラウドもまた小規模ベンチャーから
まとめ
- サーバのハード的な問題から解放されて精神的安定をもたらしてくれたEC2に感謝
- 1h単位で増やせる、減らせる
- ここを生かしたビジネスモデルを考えれば最適!
- APエンジニアはインフラ(AMI)を自分で構築できるようになるべき
- サーバエンジニアはシステムアーキテクトを目指すなどキャリアパスを考えるべき
おまけ
- PVが伸びるとadsenseが伸びる!状態になっているので、キャッシュフローはある
- モバツイは、adsenseに依存している
AWSから見るクラウドコンピューティング
えふしんさんの話の次は、横田さんの話。
こちらは、さほど細かくメモっていません。いや、面白くなかったんじゃなくて、個人的に知っている話が多かっただけです。(^^;
講演者
- 横田真俊さん
- あすなろブログ
- オルタナティブブログ
- スラッシュドット(編集者)
- 最近、GIGAZINEのパクリですか?と聞かれたww
- 日本人著者として、はじめてクラウドコンピューティングの解説書を書いた!
- 東通インテレクト
- ウルトラマンのファンクラブもされているらしい
クラウドコンピューティングとは何か?
有名ベンダーの参入
- 1999: salesforce開業
- 2004: Gmail開始
- 2006: Amazon S3, EC2開始
- 2008/1: force.com開始
- 2008/4: Google App Engine開始
日本のクラウドコンピューティング
クラウドコンピューティングの分類
クラウドが注目される理由
- 巨大ベンダーのリソース切り売りが可能になった
- スケールアップからスケールアウトへ
- スケーラビリティのあるサーバが必要になった
AWSはどれくらい使われているか?
- 2007年にAWSが本家(グローバルサイト)のトラフィックを抜いた
- YCombinatorの支援しているスタートアップ企業67社のうち、13社はAmazon、14社はSoftlayer、12社はSlicehostを利用している
- メールのホスト先よしては、67社中42社がGoogleを利用
AWSとは?
AWSを構成するサービス
AWSの特徴
- 従量課金制度、そこそこ高いSLA、仮想サーバ以外のメニューが充実している
Amazon EC2
3日で3500台のサーバを増加したAnimoto
- Facebookアプリをリリースしたタイミングで大人気になった
AWS Management Console
Amazon S3
192TB分のデータを預けるサイトSmugMug
- 今はもっと容量が上がっているかも
Amazon SimpleDB
- Erlangで記述された分散データベース、KVS
Amazon SQS
- 大量のメッセージ(キュー)を複数のサーバなどに割り振る時などに利用する
- Amazonサイトに実例が載っている
Amazon CloudFront
- なぜか、ここだけサイトが日本語化されている!
Amazon Elastic MapReduce
- NY Timesで1100万枚の過去記事の画像をPDF化。Hadoopを使って100台のサーバ、24時間で処理
Amazon Virtual Private Cloud
日本のクラウド
- AT-Link「パワーフレックス」
- IDCフロンティア「NOWA」
- ビットアイル「Cloud ISIE」
- サーバワークス「Cloudworks」
日本のクラウドの特徴
- 支払い制度: 定額制
- 支払い方法: 請求書など
- 機能: 仮想サーバ中心
- サーバ用意: 3日程度
- サーバ性能追加: スケールアップ
- 監視・運用: 24x365運用(ここがウリ、EC2だとユーザまかせなので)
- 遅延: 少ない(レイテンシの話)
おまけ
- EC2とAzureについて
- EC2だとLinux、既存のLinuxシステムは移行できる、周辺ツールも揃ってきている
- Azureは日本にもヘルプデスクもありそうだ、と
- Google Trendだと、今はEC2が勝っている
- ちなみに、Microsoftの砂金さんがいらっしゃって、Azureについてコメントしていらした
- Azureのチームは、それほどWindows Loveではないらしい
関連リンク
まとめ
クラウドAMAZON EC2/S3のすべて (ITpro BOOKs)
- 作者: 並河祐貴,安達輝雄,ITpro/日経SYSTEMS
- 出版社/メーカー: 日経BP社
- 発売日: 2009/11/05
- メディア: 単行本
- 購入: 4人 クリック: 372回
- この商品を含むブログ (18件) を見る