createAutoScalingGroup

Prev Next

Overview

Create Auto Scaling Group

Description

Create a new Auto Scaling Group by designating a name, which functions as an identifier, and other properties.
Once the request for creation has been completed, Auto Scaling Group is ready to be operated under other calls.
However, it is not guaranteed for created server instances under the group to be added to a service although the request for creation is completed.

Request Parameters

Parameter Required Type Restrictions Description
autoScalingGroupName No String Min : 1, Max : 255 Name of Auto Scaling Group
It acts as an identifier. Once it has been set, it will not be changed.
launchConfigurationName Yes String Min : 1, Max : 255 The name of the launch configuration.
Contains information about the server used when a new server instance belongs to the corresponding auto-scaling group
desiredCapacity No Integer Min : 0, Max : 30 Desired capacity
The number of server instances to be operated under the group
minSize Yes Integer Min : 0, Max : 30 The maximum size of Auto Scaling Group
Min: 0, Max: 30
maxSize Yes Integer Min : 0, Max : 30 The minimum size of Auto Scaling Group
defaultCooldown No Integer Min : 0, Max : 2147483647 Default cooldown period
The default value is 300 seconds if you do not set.
loadBalancerNameList No List Min : 3, Max : 30(Redundant) Load balancer name list
The name list of load balancer to be registered when a server under this group is created and added to a service
healthCheckGracePeriod Conditional Integer Min : 0, Max : 2147483647 Grace period of a health check
The period for a health check to be pending after a server instance is added to a service
It is necessary if the value of healthCheckTypeCode is LOADB.
healthCheckTypeCode No String Min : 1, Max : 5 Health check type code
Currently, available code types are SVR and LOADB.
zoneNoList Yes String Redundant Zone number list
The zone number list that server instances of this group exist
ex) zone code: 2, zone name: KR-1 / zone code: 3, zone name: KR-2

Response Data type

  • AutoScalingGroupList Type
AutoScalingGroupList extends CommonResponse
private Integer totalRows;
private List autoScalingGroupList = new ArrayList();
AutoScalingGroup extends BaseObject
private String autoScalingGroupName;
private String launchConfigurationName;
private Integer desiredCapacity;
private Integer minSize;
private Integer maxSize;
private Integer defaultCooldown;
private List loadBalancerInstanceSummaryList;
private Integer healthCheckGracePeriod;
private CommonCode healthCheckType;
private Date createDate;
private List inAutoScalingGroupServerInstanceList;
private List suspendedProcessList;
private List zoneList;
LoadBalancerInstanceSummary extends BaseObject
private String loadBalancerInstanceNo;
private String loadBalancerName;
InAutoScalingGroupServerInstance extends BaseObject
private CommonCode healthStatus;
private CommonCode lifecycleState;
private LaunchConfiguration launchConfiguration;
private String serverInstanceNo;
private String serverInstanceName;
SuspendedProcess
private CommonCode process;
private String suspensionReason;
Zone
private String zoneNo;
private String zoneName;
private String zoneCode;
private String zoneDescription;
private String regionNo;
private long totalMemorySize;
private long totalUsedMemorySize;
private long totalUsePossibleMemorySize;
CommonCode
private String codeKind;
private String detailCategorizeCode;
private String code;
private String codeName;
private Integer codeOrder;
private String javaConstantCode;
LaunchConfiguration
private String launchConfigurationName;
private String serverImageProductCode;
private String serverProductCode;
private String memberServerImageNo;
private String loginKeyName;
private Date createDate;
private String userData;
private List accessControlGroupList;
AccessControlGroup extends BaseObject
private String accessControlGroupConfigurationNo;
private String accessControlGroupName;
private String accessControlGroupDescription;
private boolean isDefault;
private Date createDate;

Examples

Request

ncloud autoscaling createAutoScalingGroup --autoScalingGroupName test-autoscaling-group --launchConfigurationName test-autoscailg-launch --minSize 0 --maxSize 1 --zoneNoList 2

Response

{
  "createAutoScalingGroupResponse": {
    "requestId": "08c6d98c-1b6e-4c52-9099-4d32555b34aa",
    "returnCode": "0",
    "returnMessage": "success",
    "totalRows": 1,
    "autoScalingGroupList": [
      {
        "autoScalingGroupName": "test-autoscaling-group",
        "launchConfigurationName": "test-autoscailg-launch",
        "desiredCapacity": 0,
        "minSize": 0,
        "maxSize": 1,
        "defaultCooldown": 300,
        "loadBalancerInstanceSummaryList": [],
        "healthCheckGracePeriod": 300,
        "healthCheckType": {
          "code": "SVR",
          "codeName": "Server"
        },
        "createDate": "2018-04-05T20:43:57+0900",
        "inAutoScalingGroupServerInstanceList": [],
        "suspendedProcessList": [],
        "zoneList": [
          {
            "zoneNo": "2",
            "zoneName": "KR-1",
            "zoneCode": "KR-1",
            "zoneDescription": "KR-1 zone",
            "regionNo" : "1"
          }
        ]
      }
    ]
  }
}
<?xml version="1.0" encoding="UTF-8" ?>
<createAutoScalingGroupResponse>
  <requestId>08c6d98c-1b6e-4c52-9099-4d32555b34aa</requestId>
  <returnCode>0</returnCode>
  <returnMessage>success</returnMessage>
  <totalRows>1</totalRows>
  <autoScalingGroupList>
    <autoScalingGroupName>test-autoscaling-group</autoScalingGroupName>
    <launchConfigurationName>test-autoscailg-launch</launchConfigurationName>
    <desiredCapacity>0</desiredCapacity>
    <minSize>0</minSize>
    <maxSize>1</maxSize>
    <defaultCooldown>300</defaultCooldown>
    <loadBalancerInstanceSummaryList/>
    <healthCheckGracePeriod>300</healthCheckGracePeriod>
    <healthCheckType>
      <code>SVR</code>
      <codeName>Server</codeName>
    </healthCheckType>
    <createDate>2018-04-05T20:43:57+0900</createDate>
    <inAutoScalingGroupServerInstanceList/>
    <suspendedProcessList/>
    <zoneList>
      <zoneNo>2</zoneNo>
      <zoneName>KR-1</zoneName>
      <zoneCode>KR-1</zoneCode>
      <zoneDescription>KR-1 zone</zoneDescription>
      <regionNo>1</regionNo>
    </zoneList>
  </autoScalingGroupList>
</createAutoScalingGroupResponse>