ブログ

AWS運用時の料金算出とコスト削減について

AWSにシステムを構築し運用する場合には、システムの設計、運用・監視の検討以外にも、利用料金について正しく見積り、把握する事が必要となります。AWSのようなクラウドサービスでは従量制料金が適用されており、サービス毎に計算方法が異なりますが、基本的には利用した分だけの課金となります。各サービスの料金計算方法、正しい事前見積りにより適切な料金で高性能、高可用のサービスを利用することが可能となります。

AWS料金計算の考え方

AWSの料金体系は使用した分のみ支払う従量制料金が基本となります。AWSでは多岐に渡るサービスがありますが、サービス毎に計算方式が違い、リージョン毎に単価も異なるので利用するサービスの料金計算方式を正しく把握することが適切な利用料金に繋がります。また、AWS料金の支払いはクレジットカード決済かつ米ドル決済が標準となっている為、利用時には注意が必要となります。

料金計算の例としてAWSを代表するサービスであるEC2の計算方式を1ヶ月常時稼働した場合を基に記載致します。

  • EC2(オンデマンドインスタンス、OS:WINDOWS、インスタンスサイズ:m5.large)
    • 0.216USD/時間 * 24時間 * 30日 = 155.52USD
  • EBS(100GB[汎用SSD])
    • 0.12USD/GB * 100GB * 1ヶ月 = 12.0USD
  • 通信量(100GB/月 インターネットデータ転送送信 [アウト])
    • 0.114USD/GB * (100GB - 1GB) = 11.286USD※
  • 月額合計
    • 155.52USD + 12.0USD + 11.286USD = 178.806USD

※インターネットアウト データ通信量について最初の1GBは無料

AWS運用における稼働料金の事前見積の実施について

AWS運用では利用料金が毎月変動する為、システム運用コスト管理の観点からシステム導入前にあらかじめ月額利用料の試算を実施しておくことをおすすめします。ただし、AWSではサービス毎に料金体系が異なり、計算方式についても公式サイトの各サービス紹介ページに記載がされている為、複数サービスを採用したシステム構成ですと試算にかなりの工数が掛かることが予想されます。AWSでは、各サービスの料金を試算するために、AWS Pricing Calculator(AWS料金見積りツール)という機能が提供されています。すべてのサービスが対応している訳ではありませんが、主要なサービスを本ツールを活用して試算するだけでも正確な事前見積りの作成が可能となります。

AWS運用における稼働料金の削減方法

従来のオンプレミス環境下では、インフラリソースの試算に運用時の最大消費リソースを考慮する必要がありましたが、AWSではサーバー、サービスのスケールアウト・イン、リソース拡張・縮小、冗長化も必要に応じて変更する事が可能です。この利点を活用することにより、AWS料金を削減する事も可能となります。EC2を活用したシステムを例に上げると、営業日のAM9:00〜PM7:00の間のみ使用するシステムの場合、利用時のみEC2を稼働し未使用時はEC2を停止しておけばEC2の利用料を1日14時間分削減出来ます。また、EC2のディスクEBSについてですが、EBSについてはオンラインでの拡張が可能であるため(縮小は不可)、余剰のディスク容量を最小限にし必要に応じて都度拡張を実施することで、稼働料金を最小限にすることが可能となります。

上記以外にもEC2にはリザーブドインスタンス(RI)というサービスがあり、EC2利用料を前払いすることにより、オンデマンドインスタンスと比べて大幅な割引が受けられます。前払いには3年、1年の期間の選択と、全額前払い、一部前払い、前払いなしの3種類の支払いオプションがあり3年・全額前払いを選択した場合に最大の割引率が適用されます。またリザーブドインスタンスでは特定のインスタンスサイズを指定しますので、安定稼働するインスタンスさいずが固定可能なシステムにて適用がしやすくなります。

AWS運用における高額料金請求の回避

AWS運用時では、意図しない、または利用を把握していない高額な請求がされるケースがあります。事前に利用料を試算せず利用料が高額となった等のケースもありますが、主にはAWSアカウント乗っ取りなどのセキュリティ事故が原因となることが多いです。ルートユーザーの適切な管理や多段階認証の導入、IAMの適正な権限付与・配布などアカウント・ユーザー関連のセキュリティ運用、セキュリティサービスを使用した意図しないサービス稼働の検知など、事前に適正なセキュリティ運用設計を実施する事が高額料金請求の回避にも繋がります。

また、AWSの監視運用サービスであるCloudwatchにて請求金額を閾値としたアラート通知機能が利用できますので、予想される月次の請求金額でアラート通知の設定を有効にしておくことも有効な手段となります。

EC2を用いたファイルサーバー構成での料金算出例

オンプレミスからVPN経由でアクセスするWindowsファイルサーバー構成(稼働時間:AM8:00〜PM18:00)を例にAWSの月額利用料を算出してみます。

○構成図

○利用料

  • EC2(オンデマンドインスタンス、OS:WINDOWS、インスタンスサイズ:C5.large)
    • 0.199USD/時間 * 10時間 * 30日 = 59.7USD
  • EBS(500GB[汎用SSD])
    • 0.12USD/GB * 500GB * 1ヶ月 = 60.0USD
  • 通信量(100GB/月 VPNデータ転送送信 [アウト])
    • 0.114USD/GB * (100GB - 1GB) = 11.286USD※
  • VPN(サイト間VPN)
    • 0.048USD * 24時間 * 30日 = 34.56USD
  • スナップショット(100GB/月)
    • 0.05USD * 100GB * 1ヶ月 = 5.0USD
  • 月額合計
    • 59.7USD + 60.0USD + 11.286USD + 34.56USD + 5.0USD = 170.564USD

※VPNデータ通信量について最初の1GBは無料

AWS運用時の料金算出とコスト削減について まとめ

AWSはシステムの設計、運用・監視等の構築だけでなく、利用料金について正しく算出し、様々なサービスと比較する事がコスト削減につながります。AWSのサービスだからといって、同じ料金ではないことを理解して、皆さんの会社に合ったサービスを選びましょう。

元記事発行日: 2020年07月31日、最終更新日: 2020年11月18日

Related Articles