見出し画像

『Amazon Web Services コスト最適化入門』 読書メモ

この記事は先日開催された技術書典9で購入した、『Amazon Web Services コスト最適化入門』の読書メモになります。

AWSのコストという題材だけで200ページ書ききった大ボリュームの一冊です。

EC2

オンデマンドの利用料金は次の要素で決まる。
・実行時間
・インスタンスタイプ
・OS
・リージョン

インスタンスタイプ

インスタンスタイプは基本的に旧世代よりも新世代の方が性能が高く安い

ECU
・Elastic Compute Units
・Amazon独自のCPU性能単位。
・EC2インスタンスの整数処理能力を相対的に測定した指標。
・ECUによって異なるインスタンスタイプのCPU性能の比較が容易にできる。
Nitroシステム
・EC2インスタンスの基盤となるプラットフォーム
・AWS独自に開発したハードウェアにオフロードすることで、パフォーマンス向上、セキュリティ強化、コスト削減
・新世代インスタンスタイプは基本Nitroシステム
追加能力
・d(disk):NVMeベースのSSDの追加付与
・e(extended memory):拡張メモリー
・n(network):最大100Gbpsネットワーク帯域幅
・a(amd):AMD EPYCプロセッサを搭載
・s(small):少量のCPUとメモリー
・g(graviton2):ArmベースのGraviton2プロセッサを搭載

AWS Instance Scheduler

・オンデマンドインスタンスは使用しない時は停止するのが鉄則。
・ユースケースとしては開発環境など。
・複数のAWSサービスを組み合わせたもの。
・CloudFormationから作成可能。
・かかるコストはLambdaやDynamoDBを合わせて10USD/月未満。
・リソースにスケジュールと期間をタグ付けするが、設定によってはうまく動作しなくなることがあるので定期的に設定を確認する必要がある。

リザーブドインスタンス

リザーブドインスタンスのデメリット
・開発者サポートプランの料金が「29USDと、次の計算結果のうち大きい方または月額AWS使用料の3%」にRIの購入金額が含まれる。
・RIが余った場合マーケットプレイスに出品できるが、米国の銀行口座を保有する必要があったり、RIの残期間等に制約がある。

コンバーティブルRIのインスタンプタイプ変更(柔軟性)の話が結構複雑。

でも解説わかりやすい。

リザーブドインスタンスの損益分岐点

スタンダードRI(1年)
・全額前払い:237日(一年間の65%)以上。
・一部前払いもほぼ割引率が変わらないのでお得。

コンバーティブルRI(1年)
・割引率が低い分、元が取れるまで時間がかかる。
・一年後の先は見越せないがコストを抑えたい場合に使用を検討する。

スタンダードRI(3年)
・1年3ヶ月以上で元が取れる。
・3年間の累積支払額はオンデマンドの半分以下(56%)お得

コンバーティブルRI(3年)
・一年半で元が取れる。
・3年間の累積支払額はオンデマンドよりも47%お得。

インスタンスタイプやOS、リージョンによって割引率が異なるため、元が取れる時期も異なるので注意が必要。(特にWindowsなどの有償OSは割引率が低め)

AWS Cost Explorerを活用したリザーブドインスタンスの運用

AWS Cost Explorerでできること
・RIの利用率とカバレッジ率を可視化。
・レポートとして出力が可能。
・AWS Budgetsで監視し、しきい値を下回ったらメールなどに通知することができる。
・リザーブドインスタンスの有効期限のアラート送信。
・指定した直近の期間を元に、リザーブドインスタンスの推奨事項(RIのサイズや個数)を推薦してくれる。

Savings Plans

・2019年11月に出たばかりの新料金体系モデル。
・時間あたりの金額をコミットすることでRIとオン剤割引率を適用。
・RIより柔軟性に富んでいる。
・FargateやLambdaにも適応可能に。

Lambda

・CloudWatch Logsへのデータ取り込みが結構高額だったのは意識してなかった。
・場合によってはLambda自体のコストよりも高くなるらしい。

AWS Pricing Calculator

最近自分でAWSの見積もりをする際にも使用しましたがとても便利でした。

特にLambdaやDynamoDBがサクッと計算結果を出してくれて助かりました。

AWS コストの可視化・分析・予算 管理

最近取得したばかりのAWS SysOps アドミニストレーターでまさにやった範囲でとっつきやすく、実際に操作しているコンソール画面の画像が多めで説明もわかりやすかったです。

・Cost Explorer
・AWS Cost and Usage Report(AWS のコストと使用状況レポート)

もっと書きたいことはありますが、これ以上書くと内容コピペしただけみたいになっちゃいそうなのでこの辺で一区切りにします。

所感

ほぼ全てのサービスでいくつかのシナリオを用いて説明されていたり、どれぐらい使えばお得になるかの判断基準も書かれているためとても理解しやすかったです。

またAWSのメインサービスということもありEC2だけで60ページ近く使っており、その中でも特にリザーブドインスタンスの話が充実していて勉強になりました。

コストを削減するために必要な設計の話なども出てきたのも面白かったです。
・Design For Failure
・ステートレス(状態を持たない)
・中断に強いアーキテクチャ

個人的にはリリースしたあともどのようにコストを管理・監視・最適化していくかみたいな視点で語られている点が多く、コストに関する運用というものにあまり馴染みがなかったので学びが多かったです。

この記事が気に入ったらサポートをしてみませんか?