Creating an Instance
Function
- This API can be used to create an instance.
- The API can be used to create an instance when you restore data using a specific backup.
- The API can also be used to create an instance when you restore data of a specific instance to a specified point in time.
Constraints
This API supports the following instances:
- GeminiDB Cassandra
- GeminiDB Mongo
- GeminiDB Influx
- GeminiDB Redis
- GeminiDB HBase
- GeminiDB DynamoDB-Compatible
This API supports both yearly/monthly and pay-per-use instances.
Only GeminiDB Cassandra and GeminiDB Influx allow you to restore data of a specified time point from a specified cluster instance to a new one.
Authorization Information
Each account has permissions to call all APIs, but IAM users must have the required permissions specifically assigned.
- If you are using role/policy-based authorization, see the required permissions in Permissions and Supported Actions.
- If you are using identity policy-based authorization, the following identity policy-based permissions are required.
Action
Access Level
Resource Type (*: required)
Condition Key
Alias
Dependencies
gaussdbfornosql:instance:create
Write
-
- gaussdbfornosql:VpcId
- gaussdbfornosql:Subnet
nosql:instance:create
-
URI
POST /v3/{project_id}/instances
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
project_id |
Yes |
String |
Definition Project ID of a tenant in a region. To obtain this value, see Obtaining a Project ID. Constraints N/A Range N/A Default Value N/A |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
X-Auth-Token |
Yes |
String |
Definition User token You can obtain the token by calling the IAM API by following Obtaining a User Token Through Password Authentication. Constraints N/A Range N/A Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
name |
Yes |
String |
Definition Instance name, which can be the same as an existing instance name Constraints The name can be 4 to 64 bytes in length and must start with a letter. Names are case-sensitive and can contain only letters, digits, hyphens (-), and underscores (_). Values: N/A Default Value N/A |
|
datastore |
Yes |
Datastore object |
Definition Database information Constraints N/A Range N/A Default Value N/A |
|
region |
Yes |
String |
Definition Region ID Constraints The value cannot be empty. For details, see Regions and Endpoints. Range N/A Default Value N/A |
|
availability_zone |
Yes |
String |
Definition AZ ID Constraints N/A Range See az_status returned in Querying Instance Specifications. Three AZs can be created. You need to separate AZ IDs using commas (,). Default Value N/A |
|
vpc_id |
Yes |
String |
Definition VPC ID Constraints N/A Range To obtain this value, use either of the following methods:
Default Value N/A |
|
subnet_id |
Yes |
String |
Definition Subnet ID Constraints N/A Range To obtain this value, use either of the following methods:
Default Value N/A |
|
security_group_id |
Yes |
String |
Definition Security group ID Constraints N/A Range To obtain this value, use either of the following methods:
Default Value N/A |
|
password |
Yes |
String |
Definition Database password Constraints N/A Range The password can contain 8 to 32 characters, including uppercase letters, lowercase letters, digits, and special characters ~!@#%^*-_=+? The password of a GeminiDB Redis instance can contain at least two types of the following characters: uppercase letters, lowercase letters, digits, and special characters ~!@#$%^&*()-_=+? Enter a strong password against security risks such as brute force cracking. Default Value N/A |
|
mode |
Yes |
String |
Definition Instance type Constraints N/A Range
Default Value N/A |
|
product_type |
No |
String |
Definition Product type Constraints This parameter is mandatory when you create a GeminiDB Redis cluster instance with cloud native storage. Range
Default Value N/A
NOTE:
This parameter is only available for GeminiDB Redis instances with cloud native storage. |
|
flavor |
Yes |
Array of Flavor objects |
Definition Instance specifications Constraints For details about the specifications, see parameter values under flavors in Querying Instance Specifications. Range N/A Default Value N/A |
|
configuration_id |
No |
String |
Definition Parameter template ID Constraints N/A Range N/A Default Value N/A |
|
backup_strategy |
No |
BackupStrategy object |
Definition Advanced backup policy Constraints N/A Range N/A Default Value N/A |
|
enterprise_project_id |
No |
String |
Definition Enterprise project ID Constraints
Range N/A Default Value N/A |
|
ssl_option |
No |
String |
Definition Whether SSL is enabled Constraints N/A Range
Default Value If this parameter is not transferred, SSL is disabled by default. |
|
charge_info |
No |
ChargeInfo object |
Definition Billing information Constraints N/A Range Yearly/Monthly and Pay-per-use Default Value Pay-per-use |
|
dedicated_resource_id |
No |
String |
Definition Dedicated resource ID Constraints This parameter is available only after a dedicated resource pool is enabled. Range N/A Default Value N/A |
|
restore_info |
No |
RestoreInfo object |
Definition Backup information Constraints You can restore data from a specific backup or instance to a specific point in time during the backup retention period. Only GeminiDB Cassandra and GeminiDB Influx allow you to restore data from a specific cluster instance to a specific point in time. Range N/A Default Value N/A |
|
port |
No |
String |
Definition Database port Constraints Currently, only GeminiDB Redis instances support user-defined ports. If you do not specify a port number, port 6379 is used by default when you create a GeminiDB Redis instance. If you want to use this instance for dual-active DR, set the port to 8635. Range The value ranges from 1024 to 65535. The disabled ports are 2180, 2887, 3887, 6377, 6378, 6380, 8018, 8079, 8091, 8479, 8484, 8999, 9864, 9866, 9867, 12017, 12333 and 50069. Default Value 6379 |
|
availability_zone_detail |
No |
object |
Definition Multi-AZ details of primary/standby instances Constraints Currently, only GeminiDB Redis instances are supported. The system ignores this parameter if single-AZ deployment is selected. For details, see Table 9. Range N/A Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
type |
Yes |
String |
Definition Database type Constraints
Range
Default Value N/A |
|
version |
Yes |
String |
Definition Database version Constraints
Range N/A Default Value N/A |
|
storage_engine |
Yes |
String |
Definition Storage engine Constraints N/A Range
Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
num |
Yes |
String |
Definition Node quantity Constraints N/A Range
Default Value N/A |
|
size |
Yes |
String |
Definition Disk size, which must be an integer, in GB Constraints For GeminiDB Cassandra, GeminiDB Mongo, and GeminiDB Influx instances, the minimum storage space is 100 GB, and the maximum limit depends on instance specifications. The maximum and minimum storage space of a GeminiDB Redis instance depends on node quantity and specifications of the instance. Range
Default Value N/A |
|
storage |
Yes |
String |
Definition Disk type Constraints N/A Range ULTRAHIGH: SSD Default Value N/A |
|
spec_code |
Yes |
String |
Definition Resource specification code Constraints N/A Range For the code, see the value of response parameter spec_code in Querying Instance Specifications. Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
start_time |
Yes |
String |
Definition Backup time window. Automated backups will be created during the backup time window. Constraints The value cannot be empty. It must be a valid value in the hh:mm-HH:MM format. The current time is specified in UTC.
Range N/A Default Value 00:00–01:00 |
|
keep_days |
No |
String |
Definition Backup retention days Constraints N/A Range 0–35
Default Value 7 |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
charge_mode |
Yes |
String |
Definition Billing mode Constraints N/A Range
Default Value N/A |
|
period_type |
No |
String |
Definition Subscription type Constraints This parameter is valid and mandatory only when charge_mode is set to prePaid. Range
Default Value N/A
NOTE:
This parameter is valid and mandatory only when charge_mode is set to prePaid. |
|
period_num |
No |
String |
Definition Subscription period Constraints This parameter is valid and mandatory only when charge_mode is set to prePaid. Range
Default Value N/A |
|
is_auto_renew |
No |
String |
Definition Whether automatic renewal is enabled for yearly/monthly instances. The renewal period is the same as the original period, and the order will be automatically paid during the renewal. Constraints N/A Range
Default Value false |
|
is_auto_pay |
No |
String |
Definition Whether the order will be automatically paid after yearly/monthly instances are created. This parameter does not affect the payment mode of automatic renewal. Constraints N/A Range
Default Value false |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
backup_id |
No |
String |
Definition Full backup file ID. Constraints This parameter cannot be left blank when you create an instance to restore data using a specific backup. Range N/A Default Value N/A |
|
source_instance_id |
No |
String |
Definition ID of the specified instance for data restoration Constraints This parameter cannot be left blank when you restore data at a specific point in time from a specific instance to a new instance. Range N/A Default Value N/A |
|
restore_time |
No |
Long |
Definition Time point that backup data is restored to Constraints This parameter cannot be left blank when you restore data at a specific point in time from a specific instance to a new instance. Range The value is a 13-digit number (in milliseconds, UTC time). You can query the value by referring to Querying the Time Window When a Backup Can Be Restored. Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
primary_availability_zone |
Yes |
String |
Definition Primary AZ, which must be a single AZ and different from the standby AZ Constraints N/A Range N/A Default Value N/A |
|
secondary_availability_zone |
Yes |
String |
Definition Standby AZ, which must be a single AZ and be different from the primary AZ Constraints N/A Range N/A Default Value N/A |
Response Parameters
Status code: 202
|
Parameter |
Type |
Description |
|---|---|---|
|
id |
String |
Definition Instance ID Range N/A |
|
name |
String |
Definition Instance name, which is the same as the request parameter Range N/A |
|
datastore |
Datastore object |
Definition Database information, which is the same as the request parameter Range N/A |
|
created |
String |
Definition Creation time, which is in the yyyy-mm-dd hh:mm:ss format Range N/A |
|
status |
String |
Definition Instance status Range creating |
|
region |
String |
Definition Region ID, which is the same as the request parameter Range N/A |
|
availability_zone |
String |
Definition AZ ID, which is the same as the request parameter Range N/A |
|
vpc_id |
String |
Definition VPC ID, which is the same as the request parameter Range N/A |
|
subnet_id |
String |
Definition Subnet ID, which is the same as the request parameter Range N/A |
|
security_group_id |
String |
Definition Security group ID, which is the same as the request parameter Range N/A |
|
mode |
String |
Definition Instance type, which is the same as the request parameter Range N/A |
|
flavor |
Array of Flavor objects |
Definition Instance flavor, which is the same as the request parameter Range N/A |
|
backup_strategy |
BackupStrategy object |
Definition Advanced backup policy, which is the same as the request parameter Range N/A |
|
enterprise_project_id |
String |
Definition Enterprise project ID. 0 indicates the default enterprise project. Range N/A |
|
ssl_option |
String |
Definition Whether SSL is enabled. This parameter functions the same as the request parameter. Range N/A |
|
job_id |
String |
Definition ID of the workflow for creating an instance. This parameter is returned only when a pay-per-use instance is created. Range N/A |
|
order_id |
String |
Definition ID of an order for creating an instance. This parameter is returned only for a yearly/monthly instance. Range N/A |
|
charge_info |
ChargeInfo object |
Definition Billing mode, which can be yearly/monthly or pay-per-use (default). The value is the same as that of the request parameter. Range N/A |
|
dedicated_resource_id |
String |
Definition Dedicated resource ID. This field is returned only for instances created on dedicated resources. Range N/A |
|
Parameter |
Type |
Description |
|---|---|---|
|
type |
String |
Definition Database type Range
|
|
version |
String |
Definition Database version Range
|
|
storage_engine |
String |
Definition Storage engine Range
|
|
Parameter |
Type |
Description |
|---|---|---|
|
num |
String |
Definition Node quantity Range
|
|
size |
String |
Definition Disk size, which must be an integer, in GB For GeminiDB Cassandra, GeminiDB Mongo, and GeminiDB Influx instances, the minimum storage space is 100 GB, and the maximum limit depends on instance specifications. The maximum and minimum storage space of a GeminiDB Redis instance depends on node quantity and specifications of the instance. Range
|
|
storage |
String |
Definition Disk type Range ULTRAHIGH: SSD |
|
spec_code |
String |
Definition Resource specification code. For the code, see the value of response parameter spec_code in Querying Instance Specifications. Range N/A |
|
Parameter |
Type |
Description |
|---|---|---|
|
start_time |
String |
Definition Backup time window. Automated backups will be created during the backup time window. Range The value cannot be empty. It must be a valid value in the hh:mm-HH:MM format. The current time is specified in UTC.
|
|
keep_days |
String |
Definition Backup retention days Range 0–35
|
|
Parameter |
Type |
Description |
|---|---|---|
|
charge_mode |
String |
Definition Billing mode Range
|
|
period_type |
String |
Definition Subscription type Range
NOTE:
This parameter is valid and mandatory only when charge_mode is set to prePaid. |
|
period_num |
String |
Definition Subscription period. This parameter is valid and mandatory only when charge_mode is set to prePaid. Range
|
|
is_auto_renew |
String |
Definition Whether automatic renewal is enabled for yearly/monthly instances. The renewal period is the same as the original period, and the order will be automatically paid during the renewal. Range
|
|
is_auto_pay |
String |
Definition Whether the order will be automatically paid after yearly/monthly instances are created. This parameter does not affect the payment mode of automatic renewal. Range
|
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
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 } - Creating a yearly/monthly 3-node GeminiDB Cassandra instance with 16 vCPUs and 64 GB of memory
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, "charge_info" : { "charge_mode" : "prePaid", "period_type" : "year", "period_num" : 3, "is_auto_renew" : true, "is_auto_pay" : true } } - Creating a pay-per-use 3-node GeminiDB Cassandra instance with 16 vCPUs and 64 GB of memory based on data restored using a specific backup
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, "restore_info" : { "backup_id" : "2f4ddb93b9014b0893d81d2e472f30fe" } } - Creating a yearly/monthly 3-node GeminiDB Cassandra instance with 16 vCPUs and 64 GB of memory based on the data of a specified instance at a specified point in time
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, "charge_info" : { "charge_mode" : "prePaid", "period_type" : "year", "period_num" : 3, "is_auto_renew" : true, "is_auto_pay" : true }, "restore_info" : { "restore_time" : 1607731200000, "source_instance_id" : "054e292c9880d4992f02c0196d3ein12" } }
Example Responses
Status code: 202
Accepted
Creating a pay-per-use instance:
{
"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"
}
Creating a yearly/monthly instance:
{
"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"
},
"enterprise_project_id" : "0",
"ssl_option" : "1",
"charge_info" : {
"charge_mode" : "prePaid",
"period_type" : "year",
"period_num" : 3,
"is_auto_renew" : true,
"is_auto_pay" : true
}
}
Status Codes
For details, see Status Codes.
Error Codes
For details, see Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot