Instructions for Instance Management Interfaces
Create an Instance
Interface description
This interface is used to create a DRDS instance.
- If desired to create a postpaid instance, the account cash balance + general voucher needs to be greater than 100. If desired to create a prepaid instance, the account cash amount needs to be greater than or equal to the instance fee.
- The interface used to create the instance is an asynchronous interface. You can query the instance status through the “Instance Details” interface.
Request structure
POST /v{version}/instance?clientToken={clientToken} HTTP/1.1
Host: drds.bj.baidubce.com
Authorization: authorization string
{
"billing":{
"paymentTiming": paymentTiming,
"reservation":{
"reservationLength": reservationLength,
"reservationTimeUnit": reservationTimeUnit
}
},
"memoryCapacityInGB": memoryCapacityInGB,
"volumeCapacityInGB": allocatedStorageInGB,
"sliceCount": sliceCount,
"readReplicaCount": readReplicaCount,
"proxyNodeCount": proxyCount,
subnets
{
"zoneName": zoneName,
"subnetId": subnetId
}],
"vpcId": vpcId
}
Request header field
There are no other special header fields except for the common header field.
Request parameters
Parameter Name | Type | Required? | Parameter Position | Description |
---|---|---|---|---|
version | String | Yes | URI parameter | API version number |
clientToken | String | Yes | Query parameters | Means the idempotent Token, which is an ASCII string with a length not exceeding 64 bits. |
billing | Billing | Yes | RequestBody parameter | Billing-related parameters |
memoryCapacityInGB | int | Yes | RequestBody parameter | Means the single node memory size, which is expressed in GB and whose optional value includes 8G\16G\32G\48G\64G\128G. |
volumeCapacityInGB | int | Yes | RequestBody parameter | Means the single node disk size, which is expressed in GB and whose optional value includes 100G\300G\500G\1000G\1500G. |
sliceCount | int | Yes | RequestBody parameter | Means the number of storage nodes (multiparts), whose optional value includes 2\4\8\16. |
readReplicaCount | int | Yes | RequestBody parameter | Means the number of read-only nodes in storage nodes (multiparts), whose optional value includes 0\1\2\3\4\5. |
proxyNodeCount | int | Yes | RequestBody parameter | Means the number of proxy nodes, whose optional value includes 2\4\8\16\32. |
subnets | List<SubnetMap> | No | RequestBody parameter | Means the subnetId of each availability zone in the vpc. If it is not the default vpc, you must specify a subnetId. You can query the subnet list by calling the query subnet interface. |
vpcId | string | No | RequestBody parameter | Means the vpc. If not provided, it is the default vpc. You can query the available vpc by calling the Query VPC List interface. |
SubnetMap
Parameter Name | Type | Description |
---|---|---|
zoneName | String | Specifies the zone information, which is null by default and is automatically selected by the system. You can query the availability zone list by calling the availability zone list interface. For the ZoneName, the availability zone is named according to the naming convention of "country-region-availability zone sequence", and uses lowercase letters. For example, Beijing availability zone A is "cn-bj-a". |
subnetId | String | If the subnet ID is null, the default subnet is used. |
Response header field
There are no other special header fields except for the common header field.
Response parameter
Parameter Name | Type | Description |
---|---|---|
instanceIds | List<String> | Instance ID |
Request example
POST https://drds.bj.baidubce.com/v1/instance?clientToken=be31b98c-5e41-4838-9830-9be700de5a20
Host: drds.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
{
"billing": {
"paymentTiming": "Postpaid",
"reservation": {
"reservationLength": 1,
}
},
"memoryCapacityInGB": 8,
"volumeCapacityInGB": 100,
"sliceCount": 1,
"readReplicaCount": 0,
"proxyNodeCount": 2,
"vpcId": "vpc-40252e60cmmc",
"subnets": [
{
"zoneName": "cn-bj-b",
"subnetId": "sbn-114ia2r9dhkk"
}],
}
Response example
HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
{
"instanceIds":["drds-bj-cxisuftlkquj"]
}
Query an Instance List
Interface description
This interface is used to obtain the DRDS instance list.
- You can only view the instance list of your account.
Request structure
GET /v{version}/instance HTTP/1.1
HOST: drds.bj.baidubce.com
Authorization: authorization string
Request header field
There are no other special header fields except for the common header field.
Request parameters
Parameter Name | Type | Required? | Parameter Position | Description |
---|---|---|---|---|
version | String | Yes | URI parameter | API version number |
Response header field
There are no other special header fields except for the common header field.
Response parameter
Parameter Name | Type | Description |
---|---|---|
instances | List<Instance> | DRDS instance list |
Instance
Parameter Name | Type | Description |
---|---|---|
instanceId | String | Instance ID |
instanceName | String | Instance name |
instanceStatus | String | Instance status |
zoneNames | List<String> | Availability zone |
instanceCreateTime | Datetime | Instance creation time |
region | String | Region |
Request example
GET https://drds.bj.baidubce.com/v1/instance
Host: drds.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
Response example
HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
{
"instances": [
{
"instanceId": "drdsde1upqup698",
"instanceName": "drds",
"instanceStatus": "Available",
"region": "bj",
"zoneNames": [
"cn-bj-a"
],
"engine": "mysql",
"engineVersion": "5.6",
"instanceCreateTime": "2019-09-21T10:25:41Z"
},
{
"instanceId": "drdsuc6qx3cpnh3",
"instanceName": "drds",
"instanceStatus": "Available",
"region": "bj",
"zoneNames": [
"cn-bj-b"
],
"engine": "mysql",
"engineVersion": "5.6",
"instanceCreateTime": "2019-09-21T10:24:29Z"
}
]
}
Query Instance Details
Interface description
This interface is used to query the details of the specified instance.
- You can only view details of the instance in your account.
Request structure
GET /v{version}/instance/{instanceId} HTTP/1.1
HOST: drds.bj.baidubce.com
Authorization: authorization string
Request header field
There are no other special header fields except for the common header field.
Request parameters
Parameter Name | Type | Required? | Parameter Position | Description | |
---|---|---|---|---|---|
version | String | Yes | URI parameter | API version number | |
instanceId | String | Yes | URI parameter | Instance ID |
Response header field
There are no other special header fields except for the common header field.
Response parameter
Parameter Name | Type | Description |
---|---|---|
instanceId | String | Instance ID |
instanceName | String | Instance name |
instanceStatus | String | Instance status |
region | String | Region |
zoneNames | List<String> | Availability zone |
totalMemoryInMB | int | Total memory size, unit: MB |
totalVolumeInGB | int | Total disk size, unit: GB |
usedVolumeInMB | long | Used disk size, unit: MB |
sliceCount | int | Number of storage nodes (multiparts) |
proxyNodeCount | int | Number of proxy nodes |
vpcId | String | vpc network ID |
instanceCreateTime | DateTime | Instance creation time |
publicAccessStatus | String | Public network access status |
endpoint | Endpoint | Database connection information |
sliceList | List<SliceModel> | Node information of each multipart |
proxyList | List<ProxyModel> | Proxy node information |
paymentTiming | String | Payment mode, including prepaid, and postpaid modes. |
subnets | List<Subnet> | Subnet information |
SliceModel
Parameter Name | Type | Description |
---|---|---|
sliceId | String | Multipart ID |
status | String | Multipart running status |
sliceInstances | List<SliceInstanceModel> | Node information under the multipart |
SliceInstanceModel
Parameter Name | Type | Description |
---|---|---|
role | String | Node type, including master, slave, and read-only. |
nodeId | String | Node ID |
status | String | Node status |
usedVolumeInMB | long | Used disk size, unit: MB |
Endpoint
Parameter Name | Type | Description |
---|---|---|
address | String | Database connection address (domain name) |
port | int | Database port |
vnetIp | String | IP for connecting to the database |
inetIp | String | IP for connecting to the database from the public network |
Public network access status
Parameter Name | Description |
---|---|
Closed | Public network permission not enabled |
Creating | Public network is enabling, and the status is Available after success |
Available | Public network permission is enabled |
Request example
GET https://drds.bj.baidubce.com/v1/instance/drdsuc6qx3cpnh3
Host: drds.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
Response example
HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
{
"instanceId": "drdsuc6qx3cpnh3",
"instanceName": "drds",
"instanceStatus": "Available",
"region": "bj",
"engine": "mysql",
"engineVersion": "5.6",
"endpoint": {
"vnetIp": "192.168.0.1",
"domain": "drds.drdsuc6qx3cpnh3.rds.bj.baidubce.com",
"port": "3306",
"inetIp": ""
},
"instanceCreateTime": "2019-09-21T10:25:41Z",
"instanceExpireTime": "2019-10-21T10:29:16Z",
"publicAccessStatus": "Closed",
"proxyNodeCount": 2,
"sliceCount": 1,
"totalMemoryInMB": 0,
"totalVolumeInGB": 0,
"usedVolumeInMB": 4129,
"paymentTiming": "prepaid",
"vpcId": "vpc-98p1717te3l",
"sliceList": [
{
"sliceId": "slice5h86w9mv8lh",
"status": "Available",
"sliceInstances": [
{
"role": "master",
"nodeId": "13e7c910-524f-4174-9d61-571d9d2a9a1f",
"status": "Available",
"usedVolumeInMB": "4129"
},
{
"role": "backup",
"nodeId": "368518d6-65e8-410c-aeb1-d8d3c0da87d0",
"status": "Available",
"usedVolumeInMB": "4129"
}
]
}
],
"proxyList": [
{
"proxyId": "proxyyp1jblxtwgi",
"proxyInstances": [
{
"nodeId": "3e0f6456-044f-4c0f-a95c-04ff43efff21",
"status": "Available"
},
{
"nodeId": "83cdf56e-d861-4b1f-8ce1-665cc7541bf9",
"status": "Available"
}
]
}
],
"zoneNames": [
"cn-bj-b"
],
"subnets": [
{
"name": "System Predefined Subnet B",
"subnetId": "sbn-8wxqz1wijqj3",
"zoneName": "cn-bj-b",
"cidr": "192.168.0.0/20"
}
]
}
Release an Instance
Interface description
This interface is used to release a single cloud database DRDS instance.
Request structure
DELETE /v{version}/instance/{instanceId} HTTP/1.1
HOST: drds.bj.baidubce.com
Authorization authorization string
Request header field
There are no other special header fields except for the common header field.
Request parameters
Parameter Name | Type | Required? | Parameter Position | Description |
---|---|---|---|---|
version | String | Yes | URI parameter | API version number |
instanceId | String | Yes | URI parameter | Instance ID |
Response header field
There are no other special header fields except for the common header field.
Response parameter
No special response parameter
Request example
DELETE https://drds.bj.baidubce.com/v1/instance/drdsuc6qx3cpnh3
Host: drds.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
Response example
HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json
Modify an Instance Name
Interface description
This interface is used to modify the DRDS instance name
Request structure
PUT /v{version}/instance/{instanceId}?modifyName HTTP/1.1
HOST: drds.bj.baidubce.com
Authorization: authorization string
{
"name":instanceName
}
Request header field
There are no other special header fields except for the common header field.
Request parameters
Parameter Name | Type | Required? | Parameter Position | Description |
---|---|---|---|---|
version | String | Yes | URI parameter | API version number |
instanceId | String | Yes | URI parameter | Instance ID |
name | String | Yes | RequestBody parameter | Means an instance name, which supports uppercase and lowercase letters, numbers, and special characters such as -_/. It must start with a letter and have a length of 1-64 characters. |
Response header field
There are no other special header fields except for the common header field.
Response parameter
No special response parameter
Request example
PUT https://drds.bj.baidubce.com/v1/instance/drdsuc6qx3cpnh3
Host: drds.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
{
"name": "instanceName"
}
Response example
HTTP/1.1 200 OK
x-bce-request-id 7869616F-7A68-6977-656E-406261696475
Content-Type application/json
Set Access to the Public Network
Interface description
This interface is used to set the public network access status of a DRDS instance.
Request structure
PUT /v{version}/instance/{instanceId}?modifyPublicAccess HTTP/1.1
HOST: drds.bj.baidubce.com
Authorization authorization string
{
"publiclyAccessible": publiclyAccessible
}
Request header field
There are no other special header fields except for the common header field.
Request parameters
Parameter Name | Type | Required? | Parameter Position | Description |
---|---|---|---|---|
version | String | Yes | URI parameter | API version number |
instanceId | String | Yes | URI parameter | Instance ID |
publiclyAccessible | String | Yes | RequestBody parameter | True: Enable public network access, false: Disable public network access |
Response header field
There are no other special header fields except for the common header field.
Response parameter
No special response parameter
Request example
PUT https://drds.bj.baidubce.com/v1/instance/drdsuc6qx3cpnh3?modifyPublicAccess
Host: drds.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
{
"publiclyAccessible": true
}
Response example
HTTP/1.1 200 OK
x-bce-request-id: 7869616F-7A68-6977-656E-406261696475
Content-Type: application/json