Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

You can update an auto-scaling policy using the CLI tool, REST API or the management console (UI) as shown below:

 

Localtabgroup
Localtab
activetrue
titleCLI

Update an auto-scaling policy via the CLI

Overview
CLI command
update-autoscaling-policy
DescriptionUpdate an auto-scaling policy.
Command format
Code Block
update-autoscaling-policy -p <JSON_FILE_PATH>
Info

The path to the JSON file that defines the auto-scaling policy needs to be defined as the <JSON_FILE_PATH> value.

Parameter definition
Short optionLong optionDescriptionRequiredExample value
-p--resource-pathFolder path where the JSON file that defines the auto-scaling policy is stored.Yes

<PRIVATE_PAAS_SAMPLES>/common/samples/autoscaling-policies/autoscaling-policy-1.json

Example

Update the auto-scaling policy defined in the <PRIVATE_PAAS_SAMPLES>/common/samples/autoscaling-policies/autoscaling-policy-1.json file.

Code Block
update-autoscaling-policy -p <PRIVATE_PAAS_SAMPLES>/common/samples/autoscaling-policies/autoscaling-policy-1.json
Sample output
Code Block
Autoscaling policy updated successfully: [autoscale-policy] autoscaling-policy-1
Localtab
titleREST API

Update an auto-scaling policy via the REST API

Overview
DescriptionUpdate a specific auto-scaling policy.
URL/autoscalingPolicies
HTTP MethodPUT
Request/Response Formatapplication/json
Command format
Code Block
curl -X POST -H "Content-Type: application/json" -d @'<JSON_PAYLOAD>' -k -v -u <USERNAME>:<PASSWORD> https://<PRIVATE_PAAS_HOST>:<PRIVATE_PAAS_HTTPS_PORT>/api/autoscalingPolicies
curl -X PUT -H "Content-Type: application/json" -d @'<JSON_PAYLOAD>' -k -v -u USERNAME>:<PASSWORD> https://<PRIVATE_PAAS_HOST>:<PRIVATE_PAAS_HTTPS_PORT>/api/autoscalingPolicies
Info
  • The path to the JSON file that defines the auto-scaling policy that needs to be defined as the <JSON_PAYLOAD> value.
  • By default, <USERNAME>:<PASSWORD> is admin:admin.
  • By default, <PRIVATE_PAAS_HOST> is localhost. However, if you are using a public IP, the respective IP address or domain needs to be specified.
  • By default, <PRIVATE_PAAS_HTTPS_PORT> has been set to 9443. However, if the port offset has been incremented by n, the default port value needs to be incremented by n.
Example

Update the auto-scaling policy defined in the <PRIVATE_PAAS_SAMPLES>/common/samples/autoscaling-policies/autoscaling-policy-1.json file.

Code Block
cd <PRIVATE_PAAS_SAMPLES>/common/samples

curl -X PUT -H "Content-Type: application/json" -d @'autoscaling-policies/autoscaling-policy-1.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
Sample output
Code Block
> PUT /api/autoscalingPolicies HTTP/1.1
> Host: localhost:9443
> Authorization: Basic YWRtaW46YWRtaW4=
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type: application/json
> Content-Length: 257
> 
< HTTP/1.1 200 OK
< Date: Mon, 05 Oct 2015 09:51:36 GMT
< Content-Type: application/json
< Transfer-Encoding: chunked
< Server: WSO2 Carbon Server
< 
{"status":"success","message":"Autoscaling policy updated successfully: [autoscale-policy] autoscaling-policy-1"}

You will come across the following HTTP status codes while updating an auto-scaling policy:

HTTP status code

200, 404, 500

See the descriptions of the HTTP status codes here.

Localtab
titleManagement console

Update an auto-scaling policy via the management console

 

...

 

Panel
titleSample auto-scaling policy JSON
Note

The auto-scaling policy ID (id) can not be changed in the updating process.

Code Block
{
  "id": "autoscaling-policy-1",
  "loadThresholds": {
    "requestsInFlight": {
      "threshold": 20
    },
    "memoryConsumption": {
      "threshold": 80
    },
    "loadAverage": {
      "threshold": 120
    }
  }
}