AWS

AWSコストカット大作戦

More than 1 year has passed since last update.

AWS


サーバ代、決して安くないですよね


学習コストも安くはない


下手すると


破産します


:banana:


現状を見直してコストカットできるかもな方法をご紹介します💰


🌏お品書き

  • コストエクスプローラー
  • Trusted Advisor
  • 一括請求(ボリューム割引)
  • S3
  • EC2

コストエクスプローラー

サービス毎に月または日毎のサービス使用量をグラフ化。もちろんサービス(EC2やRDS)毎に見れる。


Cost Reports 2017-06-02 09-09-14.png


1->2->3の順でクリックすれば見れます(3は見たいやつをクリック)

Billing Management Console 2017-06-02 09-12-47.png


コストエクスプローラーでまずは現状を把握することから始めましょう🐑


Trusted Advisor

「コスト最適化」、「パフォーマンス」、「セキュリティ」、「フォールトトレーランス」の観点からAWSが自動で精査し、推奨設定を通知してくれるサービス


Trusted Advisor Management Console 2017-06-02 09-24-22.png


  • 「コスト最適化」はダッシュボードで下記確認可能に
    • EC2 リザーブドインスタンスの最適化
    • 使用率の低いAmazon EC2 Instances
    • アイドル状態の Load Balancer
    • 関連付けられていない Elastic IP Address
    • アイドル状態の RDS
    • 期限が近づいているリザーブドインスタンス
    • Amazon Route 53 レイテンシーリソースレコードセット
    • 利用頻度の低いAmazon EBSボリューム
    • 利用頻度の低いAmazon Redshift Cluster

注意点

  • 無料で利用できるのはほんの一部の機能のみで、無料枠では残念ながらコスト最適化の項目が使いものになりません…
  • $100のアップグレードを行えば、項目が利用可能に(パフォーマンスチェックやセキュリティチェックも高機能に)

一括請求(ボリューム割引)

一括請求を使用した複数アカウントの料金の支払いでボリューム割引が適用可能


BasicDiagram.gif


VolumeDiscount.gif


データ転送量の合計やRI購入額などいろんな部分にボリューム割引がある。
個別のアカウント毎にはボリューム割引を受けられる量を使っていなくても、
一括請求を設定することで全アカウントで合算をもとにボリューム割引が受けられるようになる


S3

言わずと知れたストレージサービス


  • S3(標準)
  • S3(低頻度アクセス)
  • Glacier

違い(ざっくり)

S3(標準)->S3(低頻度アクセス)->Glacier
と右に行くほど
ストレージ価格が安くなり、リクエストや取り出し料金は逆に高くなります。


料金 - Amazon S3 | AWS 2017-06-02 13-37-59.png


  • 基本的にはS3(標準)
  • 巨大なアーカイブデータ(ログなど)はS3(低頻度アクセス)、Glacier

という運用が良さそうです。
リクエストと取り出しの料金帯が複雑なので省きます。ドキュメントを確認してください


余談

Amazon Glacierでクラウド破産しないために という記事があるので詳細は省きますが、
Glacierで100GBのファイルを復元しようとすると2万円、何かの間違いで120TBを一気に復元しようとすると2,521万円請求される計算になるらしい(旧価格ですが)


EC2

言わずと知れた仮想サーバー


リザーブドインスタンス


リザーブドインスタンスとは

  • 簡単に言うとインスタンス費用の先払いで割引が発生するサービス
  • 先払い期間は1年(平均40%割引)と3年(平均60%)の2種類
  • 最大75%OFF

  • 厳密に言うとリザーブドインスタンスの権利
  • インスタンスタイプのことではない
  • 購入したリザーブドインスタンスと同じインスタンスタイプがあれば、そのインスタンスタイプは自動でリザーブドインスタンスになる

他EC2のチェックポイント


  • 旧世代のインスタンスタイプのグレードアップ
    • 新しいほど安くて高性能(m3、m4などは数字が大きい方が新世代)
  • 開発環境/stagingの稼働時間見直し(夜間休日は止めるとか)
  • オーバースペックなインスタンスのグレードダウン検討
  • アプリケーションレベルでの転送量削減(画像・html・js・cssの圧縮、無駄なリクエストの削減など)

など


ありがとうございました