Skip to Content
We are live but in Staging πŸŽ‰
API ReferenceClusters & Backup (Preview)

Clusters & Backup (Preview) β€” API Reference

Package: dodil.vbase.v1 Β· Service: VBaseService

Preview β€” not generally available yet. The RPCs on this page are documented for completeness, but dedicated clusters and backup/restore are not yet released for general use. For production today, use serverless databases. Field shapes and behavior may change before GA.

Two preview surfaces are covered here: dedicated clusters (a Milvus deployment provisioned for a single organization, rather than a serverless database on shared infrastructure) and backup/restore (point-in-time backup jobs and scheduled policies for a database).

Dedicated clusters (Preview)

Preview β€” not generally available yet.

RPCHTTP
CreateClusterPOST /v1/vbase/clusters
GetClusterGET /v1/vbase/{or}/clusters/{cluster_id}
ScaleClusterPOST /v1/vbase/clusters/{cluster_id}/scale
DeleteClusterDELETE /v1/vbase/clusters/{cluster_id}
GetClusterInProgressTasks/v1/vbase/clusters/{cluster_id}/task/in-progress

Like serverless databases, cluster creation is asynchronous β€” CreateCluster returns a CREATING service, and you poll GetCluster (or GetClusterInProgressTasks) until it is RUNNING. GetServiceAccess then returns the endpoint, exactly as for a database.

rpc CreateCluster(CreateClusterRequest) returns (CreateClusterResponse); rpc GetCluster(GetClusterRequest) returns (GetClusterResponse); rpc ScaleCluster(ScaleClusterRequest) returns (common.MsgResp); rpc DeleteCluster(DeleteClusterRequest) returns (common.MsgResp); rpc GetClusterInProgressTasks(GetClusterInProgressTasksRequest) returns (GetClusterInProgressTasksResponse); message CreateClusterRequest { string organization_id = 1; string name = 2; ClusterResourceConfig resource_config = 4; map<string, string> labels = 5; } message ClusterResourceConfig { optional string version = 8; int32 compute_units = 5; optional bool enable_auto_scaling = 6; optional int32 max_compute_units = 7; optional bool enable_replicas = 11; optional int32 replicas = 12; } message ScaleClusterRequest { string cluster_id = 1; ClusterResourceConfig resource_config = 2; }

GetClusterResponse returns the cluster’s ServiceInfo plus a ClusterConfiguration (resources, backup config, and other settings). GetClusterInProgressTasks returns ServiceTask entries with a progress value and task_type (DEPLOYMENT, SCALING, VERSION_UPGRADE, RESTART, DELETION) so you can track long-running operations.

Backup & restore (Preview)

Preview β€” not generally available yet.

Backup jobs capture one or more collections from a database; policies run backups on a cron schedule with a retention count. Both are tracked as async jobs.

RPCHTTP
CreateBackupPOST /v1/vbase/{service_id}/backup
ListBackupsGET /v1/vbase/{service_id}/backup
ListBackupByOrgPOST /v1/vbase/backup/org/{organization_id}
RestoreBackupPOST /v1/vbase/{service_id}/backup/restore
DeleteBackupDELETE /v1/vbase/{service_id}/backup/{backup_name}
CreateBackupPolicyPOST /v1/vbase/{service_id}/backup/policy
UpdateBackupPolicyPOST /v1/vbase/{service_id}/backup/policy/{policy_id}
DeleteBackupPolicyDELETE /v1/vbase/{service_id}/backup/policy/{policy_id}
message CreateBackupRequest { string service_id = 1; string organization_id = 2; string db_name = 3; repeated string collection_names = 4; optional string backup_name = 5; } message RestoreBackupRequest { string service_id = 1; string organization_id = 2; string backup_name = 3; string db_name = 4; repeated string collection_names = 5; } message CreateBackupPolicyRequest { string service_id = 1; string organization_id = 2; string schedule_cron = 3; // cron expression int32 retention_count = 4; // number of backups to retain }

CreateBackup, RestoreBackup, and the policy RPCs return a BackupJob or BackupPolicy plus a MsgResp. A BackupJob carries job_id, status, the target db_name / collection_names, and timestamps; a BackupPolicy carries policy_id, schedule_cron, retention_count, and is_active.


See also