自動スケール・ポリシーの更新
/paas/api/v1.1/instancemgmt/{identityDomainId}/services/JaaS/instances/{serviceId}/autoscaling/policies
Oracle Java Cloud Serviceインスタンスの既存の自動スケール・ポリシーのルールおよび条件の詳細を更新します。
サービス・インスタンスで自動スケールを有効にするには、少なくとも1つのルール(操作)を定義する必要があります。 両方のルール(操作)を更新する場合は、条件が相互に競合しないようにしてください。
Oracle Java Cloud Serviceの使用の自動スケールに関する項を参照してください。
リクエスト
- application/json
- identityDomainId
-
型:
string
必須:true
Oracle Java Cloud Serviceアカウントのアイデンティティ・ドメインID。- serviceId
型:string
必須:true
Oracle Java Cloud Serviceインスタンスの名前。
- X-ID-TENANT-NAME
-
型:
string
必須:true
Oracle Java Cloud Serviceアカウントのアイデンティティ・ドメインID。
- alarm
-
タイプ:
object
alarm必須:true
アラームをトリガーするルールの条件をグループ化します。 - coolDownPeriod
-
型:
integer
必須:true
スケーリング・アクティビティが完了してから、次のスケーリング・アクティビティを開始できるようになるまでの時間(分単位)。 有効な値は30-300の範囲の正の整数です。クール・ダウン期間後もアラームがまだアクティブな場合は、スケーリング・アクティビティが繰り返されます。 アラームがアクティブではなくなるか、最大または最小クラスタ・サイズに達するまで、このプロセスが継続されます。
- maxClusterSize
-
型:
integer
必須:true
サービス・インスタンスによってサポートされる最大クラスタ・サイズ。ScaleOut
ルールの場合にのみ必要であり、有効となります。 - minClusterSize
-
型:
integer
必須:true
サービス・インスタンスによってサポートされる最小クラスタ・サイズ。ScaleIn
ルールの場合にのみ必要であり、有効となります。 - operation
-
型:
string
必須:true
アラームがトリガーされたときに実行されるスケーリング操作。 現時点では、スケール・アウトおよびスケール・インのみがサポートされます。 少なくとも1つのスケーリング操作をポリシーに定義する必要があります。 有効な値:scaleOut
、scaleIn
object
- breachedOnInstance
-
型:
string
必須:true
アラーム・ルールがすべてのVMインスタンスまたはいずれかのVMインスタンスで違反となったときに、自動スケールが実行されるかどうか。 有効な値:ALL
、ANY
- comparisonOperator
-
型:
string
必須:true
指定したstatistic
値およびthreshold
値を比較するときに使用される算術操作。 有効な値:GreaterThanOrEqualToThreshold
(スケール・アウトの場合)、LessThanOrEqualToThreshold
(スケール・インの場合) - metricName
-
型:
string
必須:true
アラームに設定されているメトリックの名前。 現時点でサポートされる値はCPUUtilization
のみです。 - metricUnit
-
型:
string
必須:true
アラームに関連付けられているメトリックの測定単位。 有効な値:percent
- sampleCount
-
型:
integer
必須:true
特定のメトリックでデータが連続して比較される回数。 有効な値は1-24の範囲の正の整数です。 - sampleFrequency
-
型:
integer
必須:true
特定のメトリックでデータが比較される間隔(分単位)。 有効な値は5-60の範囲の正の整数です。 - statistic
-
型:
string
必須:true
アラームに関連付けられているメトリックに適用される統計。 有効な値:AVG
、MIN
、MAX
- threshold
-
型:
integer
必須:true
特定のstatistic
が比較される値。 有効な値は1-100の範囲の正の整数です。
レスポンス
- application/json
- description
-
型:
string
自動スケール・ポリシーの説明。 - message
-
型:
string
例:Rule is Active
- name
-
型:
string
自動スケール・ポリシーの名前。 デフォルト名はサービス・インスタンス名です。 - policies
-
タイプ:
array
policies自動スケール・ポリシーの詳細をグループ化します。 - startTime
-
型:
string
自動スケール・ポリシーが作成または更新された日時。 - status
-
型:
string
自動スケール・ポリシーの状態。 - version
-
型:
string
自動スケール・ポリシーのバージョン。
- alarm
-
タイプ:
object
alarmアラームをトリガーするルールの条件をグループ化します。 - coolDownPeriod
-
型:
integer
スケーリング・アクティビティが完了してから、次のスケーリング・アクティビティを開始できるようになるまでの時間(分単位)。 - maxClusterSize
-
型:
integer
スケール・アウトするときに、サービス・インスタンスによってサポートされる最大クラスタ・サイズ。 - minClusterSize
-
型:
integer
スケール・インするときに、サービス・インスタンスによってサポートされる最小クラスタ・サイズ。 - operation
-
型:
string
アラームがトリガーされたときに実行されるスケーリング操作。 例:scaleOut
、scaleIn
object
- breachedOnInstance
-
型:
string
アラーム・ルールがすべてのVMインスタンスまたはいずれかのVMインスタンスで違反となったときに、自動スケールが実行されるかどうか。 例:ALL
、ANY
。 - comparisonOperator
-
型:
string
指定したstatistic
値およびthreshold
値を比較するときに使用される算術操作。 例:GreaterThanOrEqualToThreshold
、LessThanOrEqualToThreshold
- metricName
-
型:
string
アラームに設定されているメトリックの名前。 たとえば、CPUUtilization
です - metricUnit
-
型:
string
アラームに関連付けられているメトリックの測定単位。 例:percent
- sampleCount
-
型:
integer
特定のメトリックでデータが連続して比較される回数。 - sampleFrequency
-
型:
integer
特定のメトリックでデータが比較される間隔(分単位)。 - statistic
-
型:
string
アラームに関連付けられているメトリックに適用される統計。 例:AVG
、MIN
、MAX
- threshold
-
型:
integer
特定のstatistic
が比較される値。
- detail
-
型:
string
エラーの詳細。 - errors
-
型:
string
エラーの詳細をグループ化します。 - source
-
型:
string
エラーの原因となったアラーム属性の名前。 例:threshold
- status
-
型:
string
操作のステータスの説明。 例:Bad Request
例
次の例では、cURLを使用してRESTリソースに対するPUTリクエストを発行することによってOracle Java Cloud Serviceインスタンスの自動スケール・ポリシーを更新する方法を示しています。
注意:
この例のコマンドでは、URL構造https://rest_server_url/resource-pathが使用されています。ここで、rest_server_urlはアイデンティティ・ドメインを問い合せるためのOracle Public CloudのRESTサーバーです。 Oracle Public Cloudに使用する適切なURL構造の詳細は、リクエストの送信を参照してください。
リソース・パスのサービス・タイプ../JaaS/..では大文字小文字が区別されます。
cURLコマンド
curl -i -X PUT -u username:userPassword1! -d @updatepolicy.json -H "Content-Type:application/json" -H "X-ID-TENANT-NAME:ExampleIdentityDomain" https://rest_server_url/paas/api/v1.1/instancemgmt/ExampleIdentityDomain/services/JaaS/instances/ExampleInstance/autoscaling/policies
リクエスト本文の例
次の例に、JSON形式のリクエスト本文のコンテンツを示します。
{ "name": "JCSPolicy", "description": "JCS1 Auto Scaling Policy", "policies": [ { "operation": "scaleOut", "alarm": { "metricName": "CPUUtilization", "metricUnit": "percent", "statistic": "AVG", "comparisonOperator": "GreaterThanOrEqualToThreshold", "threshold": 90, "sampleCount": 3, "sampleFrequency": 10, "breachedOnInstance": "ALL" }, "coolDownPeriod": 30, "maxClusterSize": 4 }, { "operation": "scaleIn", "alarm": { "metricName": "CPUUtilization", "metricUnit": "percent", "statistic": "AVG", "comparisonOperator": "LessThanOrEqualToThreshold", "threshold": 40, "sampleCount": 3, "sampleFrequency": "10", "breachedOnInstance": "ANY" }, "coolDownPeriod": 30, "minClusterSize": 2 } ] }
レスポンス・ヘッダーの例
次にレスポンス・ヘッダーの例を示します。
HTTP/1.1 202 Accepted Date: Thu, 19 May 2016 00:53:16 GMT Content-Length: 0 Content-Type: application/json
レスポンス本文の例
レスポンス本文の例を次に示します。
{ "name": "JCSPolicy", "description": "JCS1 Auto Scaling Policy", "policies": [ { "operation": "scaleOut", "alarm": { "metricName": "CPUUtilization", "metricUnit": "percent", "statistic": "AVG", "comparisonOperator": "GreaterThanOrEqualToThreshold", "threshold": "90", "sampleCount": "3", "sampleFrequency": "10", "breachedOnInstance": "ALL" }, "coolDownPeriod": "30", "maxClusterSize": "4" }, { "operation": "scaleIn", "alarm": { "metricName": "CPUUtilization", "metricUnit": "percent", "statistic": "AVG", "comparisonOperator": "LessThanOrEqualToThreshold", "threshold": "40", "sampleCount": "3", "sampleFrequency": "10", "breachedOnInstance": "ANY" }, "coolDownPeriod": "30", "minClusterSize": "2" } ], "version": 2, "status": "Active", "startTime": "2016-05-19T07:39:03.576+0000" }