機械翻訳について

自動スケール・ポリシーの作成

post

/paas/api/v1.1/instancemgmt/{identityDomainId}/services/JaaS/instances/{serviceId}/autoscaling/policies

このエンドポイントはOracle Public Cloudでのみ使用できます。

Oracle Java Cloud Serviceインスタンスに自動スケール・ポリシーを作成して有効にします。

ポリシーは、サービス・インスタンスを自動的にスケーリングするタイミングのルールおよび条件を定義します。 現時点では、2つルール(操作)のみがサポートされます: クラスタでのスケール・アウトおよびスケール・イン。 最大クラスタ・サイズおよび最小クラスタ・サイズを定義できます。

仮想マシン(VM)のメトリックの特定の条件が満たされると、ルールによってアラームがトリガーされます。 現時点でサポートされているメトリックはCPU使用率のみです。

サービス・インスタンスで自動スケールを有効にするには、少なくとも1つのルール(操作)を定義する必要があります。 両方のルール(操作)を定義する場合は、条件が相互に競合しないようにしてください。

Oracle Java Cloud Serviceの使用自動スケールに関する項を参照してください。

自動スケールを有効にする場合は、次のことを考慮してください。

  • オンデマンドでのスケーリングと同様に、スケーリング操作が実行される前に、サービス・インスタンスのバックアップが自動的に開始されます。 自動スケール・ポリシーを有効にする前に、それに対応できるようにOracle Cloudストレージを計画してください。
  • Oracle Exadataデータベースに関連付けられているサービス・インスタンスでは、自動スケールはサポートされません。

リクエスト

サポートされているメディア・タイプ
  • 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。
本文パラメータ
リクエスト本文では、サービス・インスタンスの自動スケール・ポリシーの詳細を定義します。
ルート・スキーマ: autoscalingpolicy-request
ネストされたスキーマ: policies
型: array
自動スケール・ポリシーの詳細をグループ化します。
ネストされたスキーマ: policies-request
ネストされたスキーマ: alarm
タイプ: object
アラームをトリガーするルールの条件をグループ化します。

レスポンス

サポートされているメディア・タイプ
  • application/json
202 Response
Accepted.
本文
自動スケール・ポリシーを作成、更新または表示する場合、レスポンス本文には自動スケール・ポリシーの詳細が含まれています。
ルート・スキーマ: autoscalingpolicy-response
自動スケール・ポリシーを作成、更新または表示する場合、レスポンス本文には自動スケール・ポリシーの詳細が含まれています。
ネストされたスキーマ: policies
型: array
自動スケール・ポリシーの詳細をグループ化します。
ネストされたスキーマ: policy-details
ネストされたスキーマ: alarm
タイプ: object
アラームをトリガーするルールの条件をグループ化します。
400 Response
検証でエラーが発生しました。 1つ以上のソースからのエラーのレスポンスを参照してください。 修正して再試行してください。
本文
ルート・スキーマ: validationfailed-response

次の例では、cURLを使用してRESTリソースに対するPOSTリクエストを発行することによって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 POST -u username:userPassword1! -d @addpolicy.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": 80,
            "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
    }
    ]
} 

この例では:

  • "CPUUtilization"の"AVG"が"ALL"のVMインスタンスで"10"分間隔で"3"回連続して"80" "percent"以上であった("GreaterThanOrEqualToThreshold")場合、最大"maxClusterSize"="4"まで自動的にスケール・アウトし、クールダウンのために"30"分間待機します

  • "CPUUtilization"の"AVG"が"ANY"のVMインスタンスで"10"分間隔で"3"回連続して"40" "percent"以下であった("LessThanOrEqualToThreshold")場合、"minClusterSize"="2"に自動的にスケール・インし、クールダウンのために"30"分間待機します

レスポンス・ヘッダーの例

次にレスポンス・ヘッダーの例を示します。

HTTP/1.1 202 Accepted
Date: Thu, 19 May 2016 00:53:16 GMT
Content-Length: 0
Content-Type: application/json

レスポンス本文の例

JSON形式で返されるレスポンスの例を次に示します。

{
    "name": "JCSPolicy",
    "description": "JCS1 Auto Scaling Policy",
    "policies": [
    {
        "operation": "scaleOut",
        "alarm": {
            "metricName": "CPUUtilization",
            "metricUnit": "percent",
            "statistic": "AVG",
            "comparisonOperator": "GreaterThanOrEqualToThreshold",
            "threshold": "80",
            "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": 1,
    "status": "Active",
    "startTime": "2016-05-19T07:28:54.422+0000"
}

レスポンス本文の例(検証でエラーが発生した)

ポリシーに検証エラーがあった場合にJSON形式で返されたレスポンスの例を次に示します。

{
    "status": "Bad Request",
    "errors": [
    {
        "detail": "[statistic] is invalid, valid values are [AVG,MIN,MAX].",
        "source": "statistic"
    },
    {
        "detail": "[threshold] is invalid, it should be positive integer in the range of [1-100].",
        "source": "threshold"
    }
    ]
}