AWSでソーシャルゲームを安定運用するコツ ~Consolidated Billingとアカウント管理 編~
ポッピンゲームズ インフラ担当の吉田です。
1回目ということで、技術というよりは運用・管理の視点で投稿します。
今後は技術系の話も沢山盛り込んでいく予定ですので、ご勘弁を。。。
さて、弊社はインフラ環境にAWS(Amazon Web Services)を使っています。
国内外問わず、多くのソーシャルゲーム企業がAWSを使っていますね(Google Compute EngineやWindows Azureも頑張って欲しいところ)。その理由はざっと以下かなと思います。
- 堅牢なインフラ
- DNSからサーバ、Storage、果てやアプリケーション管理ツールまで提供するサービスの豊富さ
- スモールスタートできる安価な単価設定
- インフラ屋じゃなくても、構築、運用できるユーザフレンドリーなインターフェイス
ポイントは最後の2つ。特にインフラ屋を抱えきれない多くのスタートアップ企業にとって、アプリエンジニアがインフラをサクッと作って運用できるAWSが魅力的なのは納得出来ます。
とはいえ。。。ここには罠があります。
例えば。。。
- 勢いでインフラ作ったはいいけど、AWSのアカウント管理全くしてなかった(社員全員がManagement Console触れる状態だった(*ノω・*)テヘ)
- タイトルごとにコストを算出/管理したいけど、計算大変
- 誤って別のタイトルのサーバシャットダウンしちゃった
が挙げられます。
サービスを支えるインフラメンバーは単にサーバの構築だけでなく、運用フェーズのトラブルを想定した管理体制を整備しておくことが重要です(自戒を込めて)。
と、言うことで前置きが長くなりましたが、ソーシャルゲームインフラにおける運用第一歩として
VISAデビットとConsolidated Billingを使ってサービス(タイトル)ごとにAWSアカウントを分ける
をオススメします。
アカウントを分けるメリットは以下の通りです。
- アカウント(タイトル)ごとにAccount Activityからコストが簡単に割り出せる
- オペミスの防止 (IAMを併用するとより効果的)
AWSのアカウントはクレジットカード1枚単位で発行されます。例え支払い方法を海外送金に変更しても、アカウント作成には必ずクレジットカードが必要です(Amazonの人曰く、クレカで本人認証の代わりをしてるからとのこと)。
つまり複数アカウントを持つには、何枚もクレカを発行しなくてはなりません。
AWSの公式資料(AWSクラウド利用料算出の参考資料)では、三井住友VISAパーチェシングカードが部署単位ごとに発行できてオススメされています。但し、タイトルごとに複数枚発行するのはハードルが高いと言えます(スタートアップ企業は部署自体少ないですし)。
そこでVISAデビット(昔で言うと、ワンタイムデビット)の登場です。
VISAデビットは1口座あたり最大4つのデビット番号が発行可能です(最大利用金額は50万円)。
いざというときはカード番号をボタン1つで停止できます。
法人ですと子口座が無料で開設できますので、
(親口座+子口座)×4つ分のAccountが発行出来ますね。
【VISAデビット作成方法】
- JNBのHPよりVISAデビット番号発行
- AWSで新規アカウント作成
アカウント作成ができたら、Consolidated Billingを使って、親accountに支払いをマージさせます。マージさせても、子アカウントごとの課金状況はAccount Activityから確認できます。
【Consolidated Billingの設定方法】
Consolidated Billingを用いた、複数アカウントの請求の合算
★より深く知りたい方は
AWSマイスターシリーズ:: AWS Billingについて
次回は、boto + MySQL-MHA + VPCを使った幸せなMySQL生活について書きたいと思います。
最後になりましたが、現在ポッピンゲームズジャパン株式会社では一緒に働く仲間も募集しています。
少しでも関心がありましたらお気軽にお問合せ下さい。
http://poppin-games-japan.com/recruit/career/
よろしくお願いします。