クラウドサービスのすべてのAPI操作のレート制限を監視する場合は、クラウドサービスのすべてのAPIレート制限に対してグローバルアラートルールを作成できます。 このようにして、監視されるAPIレート制限の使用済みクォータまたは利用可能なクォータが指定されたしきい値に達した場合、アラート通知が関連するアラート連絡先に送信され、できるだけ早い機会にクォータを増やすように連絡先に通知します。
シナリオ
企業がクラウドサービスを管理するとき、企業は、クラウドサービスのAPIを自社のビジネスと統合して、自動リソース管理能力を改善することができる。 多数のAPI操作とAPI操作への頻繁なアクセスにより、APIスロットリングが頻繁に発生し、ビジネスの安定性に影響します。 この問題を解決するために、企業のO&Mチームは、クラウドサービスAPIのリアルタイムの使用状況とクォータを監視し、ビジネスの安定性を確保するために事前に計画を立てることができます。 ただし、API操作の数が多いため、API操作ごとにアラートルールを個別に設定することは困難です。 この場合、O&MチームはグローバルAPIレート制限モニタリング機能を使用できます。
Alibaba Cloudでは、コンソールで、またはAPI操作を呼び出すことにより、クラウドサービスのすべてのAPIレート制限に対してグローバルアラートルールを作成できます。
課金
APIレート制限のアラート機能は、CloudMonitorのアラート機能を統合します。 作成されたアラートルールに基づいて送信されるアラート通知は、CloudMonitorの通知クォータを消費します。 通知方法に基づいて、次の課金ルールが適用されます。
あなたが始める前に
アラート通知を受信するには、CloudMonitorコンソールでアラート送信先とアラート送信先グループを作成する必要があります。 詳細については、「アラート送信先またはアラート送信先グループの作成」をご参照ください。
APIレートでRAMユーザーを制限するアラートルールを作成する場合、AliyunQuotasFullAccessポリシーをRAMユーザーにアタッチし、CloudMonitorを使用してクォータ項目のアラートルールを作成および削除する権限をRAMユーザーに付与する必要があります。
RAMユーザーに次の権限を付与します。 詳細については、「カスタムポリシーの作成」および「RAM ユーザーへの権限付与」をご参照ください。
{ "Statement": [ { "Effect": "Allow", "Action": [ "cms:PutMetricRuleTargets", "cms:PutResourceMetricRules", "cms:DeleteMetricRules", "cms:DeleteMetricRuleTargets" ], "Resource": "*" } ], "Version": "1" }
コンソールでクラウドサービスのすべてのAPIレート制限に対するグローバルアラートルールを作成する
このトピックでは、Compute NestのすべてのAPIレート制限に対してグローバルアラートルールが作成されます。 アラート条件は、監視対象のAPIレート制限のクォータ使用率が80% に達した場合、警告レベルのアラート通知が、テキストメッセージと電子メールを使用して、指定されたアラート連絡先グループのアラート連絡先に送信されることです。
この操作は、ビジネス要件に基づいてQuota CenterコンソールまたはCloudMonitorコンソールで実行できます。
Quota Centerコンソールでのグローバルアラートルールの設定
Quota Centerコンソールの [APIレート制限付きの製品] ページで、[Elastic Compute] セクションの [Compute Nest] をクリックします。
表示されるページで、右上隅の [グローバルアラームルール] をクリックします。 [アラームルールの作成] ページで、Compute NestのすべてのAPIレート制限に対してグローバルアラートルールを作成します。
パラメーターの詳細については、「クォータ項目のアラートルールの作成」トピックの「APIレート制限のアラートルールを作成するためのパラメーター」をご参照ください。
作成したグローバルアラートルールを確認します。
左側のナビゲーションウィンドウから [アラームルール] をクリックします。 [アラームルール] ページで、[APIレート制限] タブをクリックします。 [APIレート制限] タブで、作成されたアラートルールを見つけます。
[アクション] 列の [モニタリングの詳細] をクリックします。 表示されるダイアログボックスで、監視対象の各API操作の監視の詳細を表示します。
CloudMonitorコンソールでグローバルアラートルールを設定する
CloudMonitorコンソールの [クラウドサービスモニタリング] ページで、ポインターを [コンピューティングネスト] セクションに移動し、[コンピューティングネスト] をクリックして [APIレートのクォータ] タブに移動します。
[APIレートのクォータ] タブで、右上隅の [グローバルアラームルール] をクリックします。 グローバルアラームルールパネルで、Compute NestのすべてのAPIレート制限に対してグローバルアラートルールを作成します。
パラメーターの詳細については、「クォータ項目のアラートルールの作成」トピックの「APIレート制限のアラートルールを作成するためのパラメーター」をご参照ください。
作成したグローバルアラートルールを確認します。
API操作を呼び出して、クラウドサービスのすべてのAPIレート制限に対するグローバルアラートルールを作成する
このトピックでは、Compute NestのすべてのAPIレート制限に対してグローバルアラートルールが作成されます。 アラート条件は、監視対象のAPIレート制限のクォータ使用率が80% に達した場合、警告レベルのアラート通知が、テキストメッセージと電子メールを使用して、指定されたアラート連絡先グループのアラート連絡先に送信されることです。
Compute NestのAPIレート制限がグローバルAPIレート制限モニタリング機能をサポートしているかどうかを確認します。
Quota CenterのListProductQuotas操作を呼び出し、
UsageMetric
応答パラメーターを確認します。UsageMetric
パラメーターの戻り値が空でない場合、Compute Nestはこの機能をサポートします。リクエストパラメーター:
ProductCode
パラメーターをcomputenest
に、QuotaCategory
パラメーターをFlowControl
に設定し、他のパラメーターにはデフォルト値を使用します。レスポンスパラメーター:
UsageMetric
レスポンスパラメーターは、CloudMonitorのAPIレート制限のモニタリング情報を表示します。MetricNamespace
パラメーターの戻り値はacs_quotas_flowcontrol
です。 次のサンプルレスポンスは、APIレート制限の返されるデータを示しています。{ "QuotaDescription": "GetServiceTemplateParameterConstraints", "Consumable": false, "ProductCode": "computenest", "UsageMetric": { "MetricName": "Usage", "MetricDimensions": { "productCode": "computenest", "metricKey": "GetServiceTemplateParameterConstraints/2021-06-01", "regionId": "ap-southeast-1", "label": "none" }, "MetricNamespace": "acs_quotas_flowcontrol" }, "Dimensions": { "apiName": "GetServiceTemplateParameterConstraints", "apiVersion": "2021-06-01", "regionId": "ap-southeast-1" }, "GlobalQuota": false, "Period": { "PeriodValue": 1, "PeriodUnit": "second" }, "Adjustable": true, "QuotaActionCode": "f_4w8uhd", "QuotaName": "GetServiceTemplateParameterConstraints", "QuotaArn": "acs:quotas:ap-southeast-1:14133977********:quota/computenest/f_4w8uhd", "TotalQuota": 50, "QuotaCategory": "FlowControl" }
説明metricKey
パラメーターを使用して、単一のAPIレート制限に対するアラートルールを作成できます。
CloudMonitorのDescribeMetricList操作を呼び出して、APIレート制限のモニタリングデータを照会します。 モニタリングデータに表示されるクォータ使用量の傾向は、アラートルールを作成するときの参照に使用できます。
リクエストパラメーター:
Namespace
パラメーターをacs_quotas_flowcontrol
に、MetricName
パラメーターをUsagePercentage
に、Dimensions
パラメーターを[{"productCode":"computenest"}]
に設定し、その他のパラメーターにはデフォルト値を使用します。説明Quota Centerの
MetricName
パラメーターの有効な値は、Quota
(クォータ値を監視) 、Usage
(使用済みクォータを監視) 、UsagePercentage
(使用済みクォータの割合を監視) 、AvailablePercentage
(残りのクォータの割合を監視) です。応答パラメーター:
Datapoints
応答パラメーターのValue
パラメーターを参照して、しきい値を指定できます。 次のコードは、サンプル応答を提供します。{ "RequestId": "2A7DB5BF-825C-51BB-AD91-D728857792F9", "Period": "60", "Datapoints": "[{\"timestamp\":1727337180000,\"productCode\":\"computenest\",\"metricKey\":\"GetServiceTemplateParameterConstraints/2021-05-21\",\"regionId\":\"cn-hangzhou\",\"label\":\"none\",\"userId\":\"14133977********\",\"Value\":2.0}]", "Code": "200", "Success": true }
CloudMonitorのPutResourceMetricRules操作を呼び出して、Compute NestのすべてのAPIレート制限に対するアラートルールを作成します。
リクエストパラメーター: 次の表に、必要なリクエストパラメーターの指定方法と例を示します。
パラメーター
説明
例
MetricName
メトリックの名前。 有効な値:
クォータ: クォータ値を監視します。
Usage: 使用済みクォータを監視します。
UsagePercentage: 使用済みクォータの割合を監視します。
AvailablePercentage: 残りのクォータの割合を監視します。
説明APIレート制限のグローバルアラートルールでは、
UsagePercentage
とAvailablePercentage
のみを使用できます。UsagePercentage
エスカレーション。Warn.Threshold
警告レベルでのアラートのしきい値。
80
EffectiveInterval
アラートルールが有効になる期間。
00:00-23:59 0800 dayofweek 1,2,3,4,5,6,7
RuleId
アラートルールの ID。
quota-computenest-ruleid-test
エスカレーション. Warn.ComparisonOperator
メトリック値と警告レベルのアラートのしきい値を比較するために使用される演算子。 有効な値:
GreaterThanOrEqualToThreshold: メトリック値がしきい値以上です。
GreaterThanThreshold: メトリック値がしきい値よりも大きい。
LessThanOrEqualToThreshold: メトリック値がしきい値以下です。
LessThanThreshold: メトリック値がしきい値未満です。
NotEqualToThreshold: メトリック値がしきい値と等しくありません。
GreaterThanYesterday: メトリック値は昨日のメトリック値よりも大きくなります。
LessThanYesterday: メトリック値は昨日のメトリック値よりも小さい。
GreaterThanLastWeek: メトリック値は、先週の同じ時間のメトリック値よりも大きい。
LessThanLastWeek: メトリック値は、先週の同時期のメトリック値よりも小さくなっています。
GreaterThanLastPeriod: メトリック値は、前の統計期間のメトリック値よりも大きい。
LessThanLastPeriod: メトリック値が前の統計期間のメトリック値よりも小さい。
GreaterThanOrEqualToThreshold
Resources
リソース情報。
説明次のサンプルコードは、単一のAPIレート制限に対してアラートルールを作成するときにResourcesパラメーターを指定する方法の例を示しています。
[{"productCode":"computenest","metricKey":"GetServiceTemplateParameterConstraints/2021-06-01"}]
[{"productCode":"computenest"}]
ContactGroups
アラート連絡先グループ。
CloudMonitor
名前空間
クラウドサービスの名前空間。
acs_quotas_flowcontrol
RuleName
アラートルールの名前です。
quota-computenest-rulename-test
エスカレーション。警告。タイムズ
警告レベルでのアラートの再試行回数。
3
エスカレーション。警告。統計
警告レベルでのアラートの統計方法。
Value
次のような応答が返された場合、アラートルールは正常に作成されます。
{ "Message": "", "RequestId": "BE4CAC0F-A134-55BA-909B-FF62568FE884", "FailedListResult": { "Target": [] }, "Code": "200", "Success": true }
CloudMonitorのDescribeMetricRuleList操作を呼び出し、アラートルールが
RuleName
またはRuleId
パラメーターから作成されているかどうかを確認します。
次に何をすべきか
クラウドサービスの単一のAPIレート制限に対してアラートルールを作成できます。 詳細については、「クォータ項目のアラートルールの作成」トピックの「APIレート制限のアラートルールの作成」をご参照ください。
アラート通知を受け取った後、アプリケーションを送信して関連するクォータを増やすことができます。 詳細については、「アプリケーションを送信してクォータを増やす」をご参照ください。
クォータ項目に対して作成されたアラートルールの詳細を表示できます。 詳細については、「クォータ項目用に作成されたアラートルールの表示とルールの詳細」をご参照ください。
クォータ項目に対して作成されたアラートルールに基づいて送信されたアラート通知を表示できます。 詳細については、「クォータ項目のアラートルールのアラート通知履歴の表示」をご参照ください。