Creating an Instance¶
Function¶
This API can be used to create an instance.
Constraints¶
This API supports GeminiDB 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 flavors 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.
|
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.
|
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/instances
Creating a pay-per-use 3-node GeminiDB 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.