Primeiros passos
Esta seção descreve como criar uma instância de cluster chamando APIs.
O período de validade de um token obtido do IAM é de 24 horas. Se você quiser usar um token para autenticação, armazene-o em cache para evitar chamadas frequentes de API do IAM.
APIs envolvidas
Se você usar um token para autenticação, deverá obter o token do usuário e adicionar X-Auth-Token ao cabeçalho da mensagem de solicitação da API de serviço ao fazer uma chamada de API.
- API para obtenção de tokens do IAM
- Criação de uma instância de banco de dados DDS usando uma API aberta
Procedimento
- Obtenha o token seguindo as instruções na seção Autenticação.
- Envie POST https://DDS endpoint/v3/{project_id}/instances.
- Adicione X-Auth-Token ao cabeçalho da solicitação.
- Especifique os seguintes parâmetros no corpo da solicitação:
Os valores de region e availability_zone são usados como exemplos.
Para obter detalhes sobre a API usada para criar instâncias de banco de dados, consulte Criação de uma instância de banco de dados.
{ "name": "test-cluster", //DB instance name "datastore": { "type": "DDS-Community", // Database type and version "version": "3.4", //Database version "storage_engine": "wiredTiger" //Storage engine }, "region": "aaa", //Region name "availability_zone": "bbb", //AZ name "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", //VPC ID "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", //Subnet ID "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", //Security group ID "password": "******", //Administrator password "disk_encryption_id": "d4825f1b-5e47-4ff7-8ca9-0960da1770b1", //Key ID for encrypting disks "mode": "Sharding", //Sharded-cluster instance type "flavor": [ { "type":"mongos", //mongos node "num": 2, //Quantity "spec_code": "dds.mongodb.c6.medium.4.mongos" //Node resource code }, { "type":"shard", //shard node "num": 2, //Quantity "storage": "ULTRAHIGH", //Disk type "size": 20, //Disk size "spec_code": "dds.mongodb.c6.medium.4.shard" //Node resource code }, { "type":"config", //config node "num": 1, //Quantity "storage": "ULTRAHIGH", //Disk type "size": 20, //Disk size "spec_code": "dds.mongodb.c6.large.2.config" //Node resource type } ], "backup_strategy": { "start_time": "23:00-00:00", //Backup period "keep_days": "8" //Retention days of backup files }, "ssl_option":"1" }
Se as seguintes informações forem exibidas, a solicitação será bem-sucedida:
{ "id": "46125c43ca4d424a9f5c97354223c4e0in02", "name": "test-cluster", "datastore": { "type": "DDS-Community", "version": "3.4", "storage_engine": "wiredTiger" }, "created": "2019-01-14 08:50:27", "status": "creating", "region": "aaa", "availability_zone": "bbb", "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", "disk_encryption_id": "d4825f1b-5e47-4ff7-8ca9-0960da1770b1", "mode": "Sharding", "flavor": [ { "type": "mongos", "num": 2, "spec_code": "dds.mongodb.c6.medium.4.mongos" }, { "type": "shard", "num": 2, "size": 20, "spec_code": "dds.mongodb.c6.medium.4.shard" }, { "type": "config", "num": 1, "size": 20, "spec_code": "dds.mongodb.c6.large.2.config" } ], "backup_strategy": { "start_time": "23:00-00:00", "keep_days": "8" }, "enterprise_project_id": "", "ssl_option":"1", "job_id": "c0c606b6-470a-48c7-97a2-6c7f146014d4" }
Se a solicitação falhar, um código de erro e informações de erro serão retornados. Para obter detalhes, consulte a seção Código de erro.