Managed Service for MongoDB API, gRPC: ClusterService.EnableSharding
Enables sharding for the cluster:
creates 3 mongoinfra (or 3 mongocfg and 2 mongos) hosts
that would support adding and using shards in the cluster.
gRPC request
rpc EnableSharding (EnableClusterShardingRequest) returns (operation.Operation)
EnableClusterShardingRequest
{
"cluster_id": "string",
"mongocfg": {
"resources": {
"resource_preset_id": "string",
"disk_size": "int64",
"disk_type_id": "string"
}
},
"mongos": {
"resources": {
"resource_preset_id": "string",
"disk_size": "int64",
"disk_type_id": "string"
}
},
"host_specs": [
{
"zone_id": "string",
"subnet_id": "string",
"assign_public_ip": "bool",
"type": "Type",
"shard_name": "string",
"hidden": "google.protobuf.BoolValue",
"secondary_delay_secs": "google.protobuf.Int64Value",
"priority": "google.protobuf.DoubleValue",
"tags": "map<string, string>"
}
],
"mongoinfra": {
"resources": {
"resource_preset_id": "string",
"disk_size": "int64",
"disk_type_id": "string"
}
}
}
Field |
Description |
cluster_id |
string Required field. ID of the MongoDB cluster to enable sharding for. |
mongocfg |
mongocfg specification for sharding. |
mongos |
mongos specification for sharding. |
host_specs[] |
Configurations for mongos and mongocfg hosts. |
mongoinfra |
mongos specification for sharding. |
MongoCfg
Field |
Description |
resources |
Required field. Resources for mongocfg hosts. |
Resources
Field |
Description |
resource_preset_id |
string ID of the preset for computational resources available to a host (CPU, memory etc.). |
disk_size |
int64 Volume of the storage available to a host, in bytes. |
disk_type_id |
string Type of the storage environment for the host.
|
Mongos
Field |
Description |
resources |
Required field. Resources for mongos hosts. |
HostSpec
Field |
Description |
zone_id |
string ID of the availability zone where the host resides. |
subnet_id |
string ID of the subnet that the host should belong to. This subnet should be a part |
assign_public_ip |
bool Whether the host should get a public IP address on creation. After a host has been created, this setting cannot be changed. To remove an assigned public IP, or to assign Possible values:
|
type |
enum Type Type of the host to be deployed.
|
shard_name |
string Name of the shard that the host belongs to. |
hidden |
Is host hidden in replSet |
secondary_delay_secs |
The number of seconds "behind" the primary that this replica set member should "lag" |
priority |
Priority of host for the election in replSet |
tags |
object (map<string, string>) Host tags |
MongoInfra
Field |
Description |
resources |
Required field. Resources for mongoinfra (mongos+mongocfg) hosts. |
operation.Operation
{
"id": "string",
"description": "string",
"created_at": "google.protobuf.Timestamp",
"created_by": "string",
"modified_at": "google.protobuf.Timestamp",
"done": "bool",
"metadata": {
"cluster_id": "string"
},
// Includes only one of the fields `error`, `response`
"error": "google.rpc.Status",
"response": "google.protobuf.Empty"
// end of the list of possible fields
}
An Operation resource. For more information, see Operation.
Field |
Description |
id |
string ID of the operation. |
description |
string Description of the operation. 0-256 characters long. |
created_at |
Creation timestamp. |
created_by |
string ID of the user or service account who initiated the operation. |
modified_at |
The time when the Operation resource was last modified. |
done |
bool If the value is |
metadata |
Service-specific metadata associated with the operation. |
error |
The error result of the operation in case of failure or cancellation. Includes only one of the fields The operation result. |
response |
The normal response of the operation in case of success. Includes only one of the fields The operation result. |
EnableClusterShardingMetadata
Field |
Description |
cluster_id |
string ID of the MongoDB cluster that sharding is being enabled for. |