アマゾン ウェブ サービス (AWS) のサービスのほとんどすべてには、ある時点で特定の AWS リージョンに起動できるリソースの数に対する制限が設けられています。AWS では、すべてのお客様に高い可用性と信頼性を備えた堅牢なサービスを提供し、新しいお客様の請求のリスクを最小限にするため、サービスに制限を設定しています。制限に対するサービス使用率を追跡することは、使用されなくなったリソースを特定することや、事前にサービス制限の引き上げリクエストをする必要を把握することに役立ちます。

お客様は AWS Trusted Advisor のサービス制限チェック機能を使用して、アプリケーションの構築とスケールに伴う、特定のサービス制限に対する使用率をモニタリングできます。Trusted Advisor は AWS 環境の最適化によるコストの節約、パフォーマンスの増強、セキュリティの向上に役立つオンラインリソースです。

さらに AWS では、お客様が制限に対するサービス使用率を追跡し、使用率が制限の 80% を超えたときには自動的に E メール通知を受け取ることのできるソリューションも用意しています。AWS Limit Monitor では、Trusted Advisor のサービス制限チェック機能が活用され、さらに Amazon DynamoDB と AWS CloudFormation のチェックも追加されています。簡単にデプロイできるこのソリューションによって、お客様は使用率を監査し、リソースについて情報に基づいた決定を下すことができます。


AWS クラウドでインフラストラクチャを運用する場合、アカウント内に起動されたリソースの数を動的に把握しておく必要があります。サービス使用率のモニタリングによって、使用されなくなったリソースを特定できます。このことを念頭に置きつつ、以下の AWS ベストプラクティスについて検討してください。

  • アカウントのサービス使用率を最小化するため、必要な AWS リソースのみを起動します。アカウント内のリソース数を最低限にすることで、意図しないサービス制限の超過を避けられます。
  • 使用率を制限しきい値以下にしておくため、リソース使用率を定期的に監査し、使用されていないリソースを終了します。
  • 制限値に対するサービス使用率のモニタリングを自動化します。制限の到達前に通知を送る自動アクションのほうが、手動プロセスより信頼できます。
  • サービス制限の引き上げ方法について理解しておきます。サービス制限の一部は AWS で履歴を作成すると自動的に引き上げられますが、AWS のほとんどのサービスでは、制限の引き上げを手動でリクエストする必要があります。

AWS には、制限に対するサービス使用率を自動的にチェックし、使用率がサービス制限に近づくと E メール通知を送信するソリューションが用意されています。下の図は AWS Limit Monitor のアーキテクチャを示しています。ソリューションの実装ガイドと付属の AWS CloudFormation テンプレートを使用すれば、数分でデプロイできます。

  1. このソリューションでは、AWS Lambda によって Amazon DynamoDB、AWS CloudFormation のサービス使用率と制限が自動的にチェックされます。プレミアムサポート利用時には、Trusted Advisor に含まれるすべてのサービス制限もチェックされます。
  2. その後、AWS Lambda によってサービス制限に対する実際の使用率が計算されます。
  3. 実際の使用率が設定されたサービス制限の 80% を超えていた場合、AWS Lambda によって Amazon Simple Notification Service (Amazon SNS) トピックにメッセージが発行され、セットアップ時に指定した E メールアドレスに送信されます。
ソリューションをデプロイする
実装ガイド

以下の内容を実行します。

AWS CloudFormation を使用して AWS Limit Monitor をデプロイする。サービス制限に対する AWS リソースの使用率を事前に追跡しておき、制限に近づいたときには E メール通知を送るために必要なコンポーネントが、CloudFormation テンプレートによって自動的に起動され、設定されます。

サービス制限が近づいたときにE メール通知が自動的に届く。使用率がサービス制限の 80% を超えると、AWS Limit Monitor によってメッセージが Amazon Simple Notification Service トピックに発行され、指定した E メールアドレスに送信されます。

開始する前に以下の準備が必要です。

AWS アカウント: リソースのプロビジョンを開始するには AWS アカウントが必要です。AWS にサインアップする

プレミアムサポート: Trusted Advisor に含まれるサービス制限に対する使用率をモニタリングする場合、AWS Support API にアクセスするために、各アカウントにビジネスまたはエンタープライズレベルの AWS サポートプランが必要です。プレミアムサポートプランを利用していない場合でも、このソリューションによって Amazon DynamoDB と AWS CloudFormation の使用率をモニタリングできます。

スキルレベル: このソリューションは、AWS クラウドでのアーキテクチャ設計に関する実経験がある IT インフラストラクチャおよびネットワーキングのプロフェッショナルを対象としています。

Q: サービス制限に対する使用率の追跡が必要なのはなぜですか?

AWS のサービス制限に対する使用率を追跡することで、設定された制限が近づいたかどうかがわかり、制限を超過する前に事前にサービス制限の引き上げをリクエストできます。

Q: AWS Limit Monitor で複数アカウントの制限をチェックできますか?

AWS Limit Monitor を単一のアカウントにデプロイし、追加アカウントのそれぞれに適切なアクセス権限を設定することで、セットアップ中に指定した追加アカウントについても制限のモニタリングを自動的に実行できます。 

Q: AWS Limit Monitor を利用するにはプレミアムサポートが必要ですか?

Trusted Advisor に含まれるサービス制限に対する使用率をモニタリングする場合は、各アカウントにビジネスまたはエンタープライズレベルの AWS サポートプランが必要です。プレミアムサポートプランを利用していない場合でも、このソリューションによって Amazon DynamoDB と AWS CloudFormation の使用率をモニタリングできます。

Q: AWS Limit Monitor はどの AWS リージョンにもデプロイできますか?

AWS Limit Monitor の CloudFormation テンプレートは、AWS Lambda が利用できる AWS リージョンにのみデプロイできます。ただし、デプロイされた Lambda 関数では、どの AWS リージョンでも、指定された任意のアカウント内の制限をモニタリングできます。

AWS の利用を開始するためにさらにリソースが必要ですか。AWS クラウドの開始方法にアクセスして、AWS を開始するためのチュートリアル、プロジェクト、ビデオをご確認ください。

ご意見をお寄せください