Techfirm Cloud Architect Blog

テックファーム株式会社クラウドインフラグループのブログ

【AWS】Service Quotasの自動通知でリソース枯渇を防ぐ方法

はじめに

AWSを運用していると、「Service Quotas(サービス クォータ)」の管理に悩まされることがあります。
上限に余裕があると思っていても、急なデプロイで上限に達してしまい、結果としてそれが障害につながることもあり得ます。

従来、これらのクォータの一部はCloudWatchメトリクスとして監視可能でしたが、クォータごとにアラームを手動で作成・管理したりする必要があり手間がかかるものでした。

2025年10月アップデートで監視が簡単に

その状況が、2025年10月7日に発表された新機能「自動クォータ管理 (Automatic Quota Management)」(参考: AWS Weekly Update)によって劇的に改善されました。
この新機能の最大の特長は、設定の容易さです。

従来は、CloudWatchメトリクスを使ってクォータの使用率を監視し、アラームを個別に手動で作成・管理する必要がありました。しかし、自動クォータ管理を使えば、Service Quotasのコンソールから数クリックで「使用率が80%を超えたら通知する」といった設定を有効化できます。

なお、自動通知の対象となるクォータは一部に限られており、AWSマネジメントコンソール上でもその旨が明記されています。2025年10月時点では、1,942個のクォータが自動通知の対象となっているようです。

これにより、リソース枯渇による「予期せぬ障害」を未然に防ぐ体制を、より簡単に構築できるようになりました。

この記事では、この新機能「自動クォータ管理」を活用し、クォータの使用率がしきい値に近づいた際にSlackやメールに自動通知する方法を、具体的な設定手順とともに解説します。

なぜService Quotasの監視が重要なのか?

多くのリソース枯渇エラーは、「発生してから」気づくことになります。しかし、クォータに起因する障害は、一度発生すると影響範囲が広かったり、上限緩和申請に時間がかかったりするケースも少なくありません。

Service Quotasを、リソースの枯渇によるエラーやクォータの上限到達による障害などが発生する前に能動的に監視することで、以下のようなメリットが得られます。

  • 障害の未然防止
    • 80%などのしきい値で通知を受け取ることで、上限に達する前に対応(クリーンアップや上限緩和申請)が可能になります。
  • 迅速な原因特定
    • 「クォータが原因かも」と当たりをつけられるため、障害発生時のトラブルシューティングが迅速化します。
  • リソース使用状況の可視化
    • どのサービスのクォータが逼迫しているかを把握し、アーキテクチャの見直しやコスト最適化に役立てることができます。

今回発表されたService Quotasの新機能は、こうしたリスクを事前に察知し、運用の安定性を高めるうえで非常に有効な手段となります。

通知システムの全体像

今回の「自動クォータ管理」機能は、手動でのSNSトピック作成やCloudWatchアラーム設定を不要とし、AWS HealthAWS User Notificationsを連携させて通知を行います。従来の仕組みに比べ、ユーザーが構築するアーキテクチャは非常にシンプルです。

  1. Service Quotas (自動クォータ管理)
    • クォータ使用率を監視。しきい値に達したら、自動的にAWS Healthイベントとして通知を発行します。
  2. AWS User Notifications (通知の中継)
    • HealthイベントをAWS User Notificationsサービスが自動的にキャッチし、設定された通知先に中継します。
  3. 通知先
    • Eメール(User Notifications経由で最も簡単に設定可能)
    • Slack(AWS ChatbotとUser Notificationsを連携させて通知)

補足: この新機能では、ユーザーが明示的にAmazon SNSトピックを作成する必要はありません。Eメールやチャットへの通知は、AWS User Notificationsサービスが内部的に処理・中継するため、従来のCloudWatch + SNS構成よりも設定が大幅に簡素化されています。

設定方法について

Service Quotas の「自動管理設定」を有効化する

はじめに、アカウントのService Quotas管理画面で、新機能を有効にします。

  1. AWSマネジメントコンソールで「Service Quotas」に移動します。
  2. 左側のナビゲーションペインから「自動管理設定 (Automatic Management)」を選択します。
  3. 自動管理モード」で「次へ」ボタンをクリックします。
通知ハブの選択 (必須)

まず、通知を処理するリージョン(通知ハブ)を選択します。これは AWS User Notifications サービスの設定で、すべての通知はこのハブを経由します。

  • 通知ハブ
    • AWS User Notificationsが通知データを処理・保存するリージョンを選択します。(例: アジアパシフィック (東京)

補足: この設定を機能させるには、少なくとも 1 つのハブを選択する必要があります。

配信チャネルの選択 (オプション)

次に、Health-Service-Quotas イベントの通知先を選択します。 (しきい値 80%, 95% でAWS Health Dashboardに自動発行されるイベントが、ここで設定したチャネルに転送されます)

  • Eメール
    • Eメールアドレスを追加」をクリックし、通知を受け取りたいアドレスを入力します。
    • (注意: 登録後、Eメールに届く確認リンクのクリックが必要です)
  • チャットチャネル (Slack/Chime)
    • チャットチャネルを追加」をクリックします。
    • 連携済みの AWS Chatbot の設定(ワークスペースとチャネル)を選択します。
    • (もしChatbotを未設定の場合、ここでAWS Chatbotのコンソールに移動して先に設定を完了させる必要があります)
  • AWS コンソールモバイルアプリケーション

    • モバイルアプリにプッシュ通知を送る場合に選択します。
  • 設定が完了したら、「次へ」をクリックします。

例外の選択 (オプション)
  1. 次の画面では、特定のクォータを自動管理の対象から「除外」する設定が可能です。
    • 使用例
      • 開発環境などで、意図的に上限近くまで使っているクォータからの通知をミュートしたい場合。
    • 例外を追加」から、サービス名(例: Amazon EC2)とクォータ名を選択して追加します。
設定の確認と保存
  1. 最後に設定内容(通知ハブ、通知チャネル、例外)をすべて確認し、「送信」をクリックします。

これで、設定はすべて完了です!

この手順だけで、例えば「EC2のvCPU数」の使用率が80%に達すると、自動でHealthイベントが発行され、User Notificationsがそれをキャッチし、設定したEメールやSlackに通知が届くようになります。

この「自動クォータ管理」の素晴らしい点は、対象のクォータすべてを一括で監視できるようになることです。一度有効にするだけで、サポートされているすべてのクォータが自動的に監視対象となり、個別に設定を行う必要はありません。

通知のタイムラグに注意と今後の改善

自動クォータ管理は非常に便利な機能ですが、通知の即時性には注意が必要です。

リリース当初、一部の検証記事では、クォータが上限に達してから通知が届くまでに数時間~1日程度のタイムラグが発生したという報告がありました(参考1、[参考2] (https://dev.classmethod.jp/articles/automatic-quota-management-service-quotas/))。

しかし、その後に行われた検証では、通知が10分程度で届いたという報告もあり(参考3)、リリースから時間が経過し、即時性が改善されている可能性があります。

そのため、即時性が求められる重要なリソースについては、従来のCloudWatchアラームとの併用も検討すると安心です。公式情報の確認と、実際に試したうえでの挙動確認を継続することをおすすめします。

さいごに

Service Quotasの監視を自動化することは、運用中のリソース状況を安定的に把握し、予期せぬトラブルを未然に防ぐための有効な手段です。
この新機能は、CloudWatchアラームやSNS通知、AWS Chatbotなどを組み合わせる手間を大幅に削減し、リソースの使用状況を把握し、必要なタイミングでSlackやメールに通知を受け取る仕組みを数クリックで構築できます。

「まだ設定していなかった」という方は、この機会にぜひService Quotasの自動通知機能の導入を検討してみてはいかがでしょうか。