コスト削減から考えるAWSの
   効果的な利用方法

2013年年3⽉月
株式会社サーバーワークス  ⼩小室⽂文
JAWS-UG三都物語  春 2013
他のセッション
((((;゚Д゚)))) < こりゃ。。ゴクリ    凄すぎオワタ
                            \(^o^)/




                                      2
(`・ω・´)ゞ
皆さんの御期待に添える様に
    頑張ります
はじめに


ü 株式会社サーバーワークス
ü  福岡オフィス  ⼩小室  ⽂文
ü  趣味: 折り紙
ü  今読んでいる本: 仮想化インフラを構築する技術
ü  好きなAWS: スポットインスタンス




               ⼀一応宣伝
コスト削減
  から考える

AWSの効果的
  な利利⽤用⽅方法
コスト≒お金
   コストはつまりお⾦金金ですよね。




 http://www.flickr.com/photos/59937401@N07/5857838458/6
コストの正体
例例えば⽶米国であればインフラの
お守りをする⼈人が必要なくなれば
解雇してコストを下げるが、
⽇日本はなかなかそうはいかない
                   PC/机/椅⼦子/⽂文房具等の経費


                    オフィスの光熱費

                    オフィスの通信費            AWS
                                       利利⽤用料料
                    オフィスの賃貸費

                    技術含めた教育費

             インフラを担当する⼈人件費
ü 無駄”だけ”を省省く事

ü 収益を上げる為に
 機会損失を下げる

         ⼤大事な事なので2回⾔言いますキリ)
顧客の      満⾜足度度向上
           企業のソリューション
                    x
                   AWS



AWSを使う事で良良いループを
                  利利益向上
意識識的に作る事が⼤大事
顧客の満⾜足度度
 ü  UX
     ü  例例えば表⽰示速度度
 ü  柔軟な対応




   http://www.designboom.com/technology/tesco-virtual-supermarket-in-a-subway-station/
利利益を上げる
ü  購⼊入まで快適に⾏行行なえる
ü  アフターサポート
ü  柔軟な対応




                 http://www.flickr.com/photos/nh7a/1430735204/
売り上げとAWS利利⽤用料料が同じ料料増えては
利利益が増えない。




                    AWS利利⽤用料料
どのようなアクセス増による
売り上げ増加があっても
利利⽤用料料がAWS利利⽤用料料を超えては
元も⼦子もない




                        AWS利利⽤用料料
初級編




下げましょう
リソースの現実
 ü  選んだリソースのスペックと現状が本当に有効に使え
       ているかどうか監視サービス等を利利⽤用し確認
 ü  最適化する


EC2に向き合う
 •  ⾊色んなタイプのインスタンスを知る

 1.  スタンダードインスタンス
       1.  第  1 世代(m1.hoge)
       2.  第  2 世代(m3.foobar)
 2.    マイクロインスタンス
 3.    ハイ{メモリ, CPU,I/O,ストレージ} インスタンス
 4.    クラスタコンピュート  インスタンス
 5.    ハイメモリクラスターインスタンス
 6.    クラスタ  GPU インスタンス
ネットワーク構
成と向き合う
ü  システムを信⽤用しませんか?
ü  障害が落落ちてもよいネットワー
    ク設計をしましょう。
ü  物理理的な同じ物の設置による冗
    ⻑⾧長構成 ≒ コスト増
ü  適切切なリソースの選択




                      http://www.flickr.com/photos/pallotron/2479534403/
利利⽤用するターゲットを⾒見見極め
て利利⽤用個所を限定する
 •    具体的にはCloudFrontの配信先を狭める

 •    価格クラスALL
       •    アメリカ
       •    ヨーロッパ
       •    ⾹香港&シンガポール
       •    ⽇日本
       •    南⽶米
       •    オーストラリア
 •    価格クラス200
       •    アメリカ
       •    ヨーロッパ
       •    ⾹香港&シンガポール
       •    ⽇日本
 •    価格クラス100
       •    アメリカ
       •    ヨーロッパ
不不要なリソースの解除
ü  EIPや別リージョンに隠れているリソース等
ü  Account Activityをチェック。
  ü  利利⽤用していないリージョンでのリソース料料⾦金金に⽬目を光らせ
      る
ü  Cloudworksを使ってインスタンスを全リージョン⼀一覧で
    チェック
  ü  http://cloudworks.jp
中級編




置き換えましょう
No EC2
Yes S3,CloudFront

名⾔言
「EC2を使ったら負けだと思っている」

静的、動的メディアの配信はEC2ではなく
CloudFront/S3で。
静的HTML  =  S3  Website
先ほどの続きで、ページを動的に⽣生成していない場合は、
S3のウェブサイト機能を使ってホスティングするのはどうですか?
No  more  妄想リクエスト,  
   Yes  オートスケール
沢⼭山来た
              どの程度度リクエストが来る
らどうし
              か分からないのであれば
 よう!!
              オートスケール等で備える。

              オートスケールちゃんと使
              えば出来る⼦子
利利⽤用アプリを変える
       ü    Oracle RDS/SQL Server RDS -> MySQL RDS
       ü    S3 -> Glacie
       ü    DynamoDB -> SimpleDB
       ü    RHL/Windows -> Amazon Linux等


商⽤用をdisている訳ではないですが、商⽤用
の差別化になる機能を使っていないので
あれば、OSS等でもよいのでは?




             Oracle              MySQL
データの圧縮
                 ü  S3にデータをアップロードする時
                 ü  ウェブサーバからコンテンツを配信する
                     時
      ディスク容量量、転送量量を下げる為にも
      データの圧縮を忘れない。




http://www.flickr.com/photos/omegatron/
438272080
DNS→Route53

メール→SES

キュー→SQS
ü  特定の機能を持つサーバから、該当機能
    を持つサービスへ移⾏行行
32bit
  ↓
 64bit
32bitではメモリ4G以上は
スケールアップ出来ないので
今後の事を考えて選ぶ        http://www.flickr.com/photos/laughingsquid/3326545676
上級編




増やす事でコスト削減しましょう
t1.micro
 例例えば画像の変換処理理などでt1.microを
 使うのはどうでしょうか?




バーストが発⽣生してしまうアプリは、
t1.microを複数台で運⽤用
1.  オンデマンド
$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
           2.  リザーブド
$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

            3.  スポット
$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$
 EC2インスタンスの⽀支払い⽅方法を適切切に選ぶ
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$$$$
POST & GETしない
  S3のPost/Get/Copyのリクエ
  スト料料は無視出来ない
  ↓
  PUT、COPY、POST、または  
  LIST リクエスト $0.01 1,000
  リクエスト当たり




•  S3内のファイル⼀一覧を
   ElastiCacheに⼊入れてしまう
•  EC2内容をElastiCacheに⼊入れ
   る
•  CloudFrontのKeepAliveを延ば
   す
No ディスク I/O

ü    クライアント側で表⽰示させる
ü    キャッシュを利利⽤用
ü    SQL クエリ⽂文を⾒見見直す
ü    ElastiCache


              なるべくディスクでのI/Oが発⽣生しないように、
              永続的じゃなくてもよいものであればメモリを利利⽤用する

              SQLのクエリをチューニングする
                 ü  例例: select * from hogeはNG
⼆二⼑刀流流使い
になる
ü  セッションの管理理=DynamoDB、それ以
    外はRDS
ü  書き込みはマスターへ、読み込みは
    リードレプリカへ
ü  Provisioned IOPSと、通常EBS

アプリ側でのリソース使い分けを積極的に
⾏行行なう。
例例えばクエリータイプ別に利利⽤用するDBを使       http://www.flickr.com/photos/midpath/350677374/
い分ける等
まとめ

1.  現在の利利⽤用上を⾒見見直す。最適化
    する

2.  別のサービスで負荷分散、コス
    ト/運⽤用軽減出来ないか試してみ
    る

3.  別のサービスで負荷を下げる、
    サービスを使い分ける
ü 無駄”だけ”を省省く事

ü 収益を上げる為に
 機会損失を下げる
AWSはツール
       but
  向き合えば最⼤大限の
メリットを⽣生み出す事が可能

       YOU
                                                           AWS




             http://www.flickr.com/photos/aidan_jones/1234618279/
ご清聴ありがとうござい
    ました
ü  AWS エコノミクスセンター
    http://aws.amazon.com/jp/economics/

ü  Question?


   株式会社サーバーワークス
   ⼩小室
   komuro@serverworks.co.jp

コスト削減から考えるAWSの効果的な利用方法