Creating an Instance¶
Function¶
This API can be used to create an instance.
Constraints¶
This API supports GaussDB(for Cassandra) instances.
URI¶
POST https://{Endpoint}/v3/{project_id}/instances
Parameter  | Mandatory  | Type  | Description  | 
|---|---|---|---|
project_id  | Yes  | String  | Project ID of a tenant in a region. To obtain this value, see Obtaining a Project ID.  | 
Request Parameters¶
Parameter  | Mandatory  | Type  | Description  | 
|---|---|---|---|
X-Auth-Token  | Yes  | String  | User token  | 
Parameter  | Mandatory  | Type  | Description  | 
|---|---|---|---|
name  | Yes  | String  | Instance name, which can be the same as an existing instance name. The name must start with a letter and can include 4 to 64 characters. It is case-sensitive and can contain only letters, digits, hyphens (-), and underscores (_).  | 
datastore  | Yes  | Datastore object  | Database information  | 
region  | Yes  | String  | Region ID. The value cannot be empty. For value details, see Regions and Endpoints.  | 
availability_zone  | Yes  | String  | AZ ID. For details about the value, see az_status returned in Querying Instance Specifications. If an instance can be created across three AZs, separate multiple AZ IDs by commas (,).  | 
vpc_id  | Yes  | String  | VPC ID. You can obtain the value with either of the following methods: 
  | 
subnet_id  | Yes  | String  | Subnet ID. You can obtain the subnet ID with either of the following methods: 
  | 
security_group_id  | Yes  | String  | Security group ID. You can obtain the security group ID with either of the following methods: 
  | 
password  | Yes  | String  | Database password. The password can include 8 to 32 characters and contain uppercase letters, lowercase letters, digits, and the following special characters:  Enter a strong password against security risks such as brute force cracking.  | 
mode  | Yes  | String  | Instance type. The value can be: 
  | 
flavor  | Yes  | Array of Flavor objects  | Instance specifications. For details about the specifications, see parameter values under flavor in Querying Instance Specifications.  | 
configuration_id  | No  | String  | Parameter template ID  | 
backup_strategy  | No  | BackupStrategy object  | Advanced backup policy  | 
enterprise_project_id  | No  | String  | Enterprise project ID. 
  | 
ssl_option  | No  | String  | Whether SSL is enabled. The value can be: 
  | 
Parameter  | Mandatory  | Type  | Description  | 
|---|---|---|---|
type  | Yes  | String  | Database type. 
  | 
version  | Yes  | String  | Database version. The value can be: 
  | 
storage_engine  | Yes  | String  | Storage engine. The value can be: 
  | 
Parameter  | Mandatory  | Type  | Description  | 
|---|---|---|---|
num  | Yes  | String  | Number of nodes. 
  | 
size  | Yes  | String  | Storage space. It must be an integer, in GB.  | 
storage  | Yes  | String  | Disk type. If you set this parameter to ULTRAHIGH, SSD disks are used.  | 
spec_code  | Yes  | String  | Resource specification code. For the code, see the value of response parameter spec_code in Querying Instance Specifications.  | 
Parameter  | Mandatory  | Type  | Description  | 
|---|---|---|---|
start_time  | Yes  | String  | Backup time window. Automated backup will be triggered during the backup time window. The value cannot be empty. It must be the UTC time in the hh:mm-HH:MM format. 
  | 
keep_days  | No  | String  | Backup retention days. The value ranges from 0 to 35. 
  | 
Response Parameters¶
Status code: 202
Parameter  | Type  | Description  | 
|---|---|---|
id  | String  | Instance ID  | 
name  | String  | Instance name. This parameter is the same as the corresponding request parameter.  | 
datastore  | Datastore object  | Database information. This parameter is the same as the corresponding request parameter.  | 
created  | String  | Creation time, which is in the yyyy-mm-dd hh:mm:ss format.  | 
status  | String  | Instance status. The value is creating.  | 
region  | String  | Region ID. This parameter is the same as the corresponding request parameter.  | 
availability_zone  | String  | AZ ID. This parameter is the same as the corresponding request parameter.  | 
vpc_id  | String  | VPC ID. This parameter is the same as the corresponding request parameter.  | 
subnet_id  | String  | Subnet ID. This parameter is the same as the corresponding request parameter.  | 
security_group_id  | String  | Security group ID. This parameter is the same as the corresponding request parameter.  | 
mode  | String  | Instance type. This parameter is the same as the corresponding request parameter.  | 
flavor  | Array of Flavor objects  | Instance specifications. This parameter is the same as the corresponding request parameter.  | 
backup_strategy  | BackupStrategy object  | Advanced backup policy. This parameter is the same as the corresponding request parameter.  | 
ssl_option  | String  | Whether SSL is enabled. This parameter has the same effect as the corresponding request parameter.  | 
job_id  | String  | ID of the job for creating an instance  | 
Parameter  | Type  | Description  | 
|---|---|---|
type  | String  | Database type. 
  | 
version  | String  | Database version. The value can be: 
  | 
storage_engine  | String  | Storage engine. The value can be: 
  | 
Parameter  | Type  | Description  | 
|---|---|---|
num  | String  | Number of nodes. 
  | 
size  | String  | Storage space. It must be an integer, in GB.  | 
storage  | String  | Disk type. If you set this parameter to ULTRAHIGH, SSD disks are used.  | 
spec_code  | String  | Resource specification code. For the code, see the value of response parameter spec_code in Querying Instance Specifications.  | 
Parameter  | Type  | Description  | 
|---|---|---|
start_time  | String  | Backup time window. Automated backup will be triggered during the backup time window. The value cannot be empty. It must be the UTC time in the hh:mm-HH:MM format. 
  | 
keep_days  | String  | Backup retention days. The value ranges from 0 to 35. 
  | 
Example Requests¶
URI example
POST https://{Endpoint}/v3/375d8d8fad1f43039e23d3b6c0f60a19/instancesCreating a pay-per-use 3-node GaussDB(for Cassandra) instance with 16 vCPUs and 64 GB of memory
Note
Values of region and availability_zone in the request body are only examples. Set them based on service requirements.
{ "name" : "test-cassandra-01", "datastore" : { "type" : "cassandra", "version" : "3.11", "storage_engine" : "rocksDB" }, "region" : "aaa", "availability_zone" : "bbb", "vpc_id" : "674e9b42-cd8d-4d25-a2e6-5abcc565b961", "subnet_id" : "f1df08c5-71d1-406a-aff0-de435a51007", "security_group_id" : "7aa51dbf-5b63-40db-9724-dad3c4828b58", "password" : "******", "mode" : "Cluster", "flavor" : [ { "num" : 3, "storage" : "ULTRAHIGH", "size" : 500, "spec_code" : "geminidb.cassandra.4xlarge.4" } ], "backup_strategy" : { "start_time" : "08:15-09:15", "keep_days" : 8 }, "ssl_option" : 1 }
Example Responses¶
Status code: 202
Accepted
{
  "id" : "39b6a1a278844ac48119d86512e0000bin06",
  "name" : "test-cassandra-01",
  "datastore" : {
    "type" : "cassandra",
    "version" : "3.11",
    "storage_engine" : "rocksDB"
  },
  "created" : "2019-10-28 14:10:54",
  "status" : "creating",
  "region" : "aaa",
  "availability_zone" : "bbb,ccc,ddd",
  "vpc_id" : "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
  "subnet_id" : "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
  "security_group_id" : "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
  "mode" : "Cluster",
  "flavor" : [ {
    "num" : 3,
    "size" : 500,
    "storage" : "ULTRAHIGH",
    "spec_code" : "geminidb.cassandra.4xlarge.4"
  } ],
  "backup_strategy" : {
    "start_time" : "08:15-09:15",
    "keep_days" : "8"
  },
  "ssl_option" : "1",
  "job_id" : "c010abd0-48cf-4fa8-8cbc-090f093eaa2f"
}
Status Codes¶
For details, see Status Codes.
Error Codes¶
For details, see Error Codes.