Create Cluster
Zilliz Cloud provides various cluster deployment options to accommodate the distinct business needs.
-
Free: provides a starting point for learning and personal projects with limitations on storage, vCU consumption, and the number of collections.
-
Serverless: provides a shared environment that automatically scales to match your workload - no need to provision resources. This option delivers excellent cost efficiency and elasticity for unpredictable or spiky traffic.
-
Dedicated: provides isolated, reserved environments for production workloads that demand consistent and predictable performance. This option is ideal for sustained high-throughput and latency-sensitive applications.
For a detailed explanation of each deployment option, see Zilliz Cloud Pricing.
This topic describes how to create a cluster.
Prerequisites
Ensure:
-
Registration with Zilliz Cloud. Refer to Register with Zilliz Cloud for instructions.
-
Ownership of the organization or project where the cluster is to be established. For details on roles and permissions, see Access Control.
Create a Free cluster
Each organization can only have 1 free cluster. For additional clusters, opt for the Serverless or Dedicated.
- Cloud Console
- cURL
The following demo shows how to create a Free cluster.
While the cluster is being created, you need to save the cluster credentials (user and password) which will be shown only once.
When the cluster status turns into "Running", the cluster is created successfully. You can then copy the cluster endpoint and token and use them to connect to the cluster.
Your request should resemble the following example, where {API_KEY} is your API key used for authentication.
The following POST request takes a request body and creates a free cluster named cluster-free in the project with ID proj-xxxxxxxxxxxxxxxxxxxxx.
curl --request POST \
--url "https://api.cloud.zilliz.com/v2/clusters/createFree" \
--header "Authorization: Bearer ${API_KEY}" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data-raw '{
"clusterName": "cluster-free",
"projectId": "proj-xxxxxxxxxxxxxxxxxxxxxx",
"regionId": "gcp-us-west1"
}'
# {
# "code": 0,
# "data": {
# "clusterId": "inxx-xxxxxxxxxxxxxxx",
# "username": "db_xxxxxxxx",
# "password": "*************",
# "prompt": "successfully submitted, cluster is being created. You can access data about the creation progress and status of your cluster by DescribeCluster API. Once the cluster status is RUNNING, you may access your vector database using the SDK with the admin account and the initial password you specified."
# }
# }
In the command above,
-
{API_KEY}: The credential used to authenticate API requests. Replace the value with your own. -
clusterName: The name of the cluster to create. -
projectId: The ID of the project in which you want to create a cluster. To list project IDs, call the List Projects operation. -
regionId: The ID of the cloud region where you want to create a cluster. Currently, free clusters can be created only on GCP. To obtain available cloud region IDs, call the List Cloud Regions operation.
For further details, see Create Free Cluster.
Create a Serverless cluster
- Cloud Console
- cURL
The following demo shows how to create a Serverless cluster.
While the cluster is being created, you need to save the cluster credentials (user and password) which will be shown only once.
When the cluster status turns into "Running", the cluster is created successfully. You can then copy the cluster endpoint and token and use them to connect to the cluster.
Your request should resemble the following example, where {API_KEY} is your API key used for authentication.
The following POST request takes a request body and creates a serverless cluster named cluster-severless in the project with ID proj-xxxxxxxxxxxxxxxxxxxxx.
curl --request POST \
--url "https://api.cloud.zilliz.com/v2/clusters/createServerless" \
--header "Authorization: Bearer ${API_KEY}" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data-raw '{
"clusterName": "cluster-serverless",
"projectId": "proj-xxxxxxxxxxxxxxxxxxxxxxx",
"regionId": "gcp-us-west1"
}'
# {
# "code": 0,
# "data": {
# "clusterId": "inxx-xxxxxxxxxxxxxxx",
# "username": "db_xxxxxxxx",
# "password": "***********",
# "prompt": "successfully submitted, cluster is being created. You can access data about the creation progress and status of your cluster by DescribeCluster API. Once the cluster status is RUNNING, you may access your vector database using the SDK with the admin account and the initial password you specified."
# }
# }
In the command above,
-
{API_KEY}: The credential used to authenticate API requests. Replace the value with your own. -
clusterName: The name of the cluster to create. -
projectId: The ID of the project in which you want to create a cluster. To list project IDs, call the List Projects operation. -
regionId: The ID of the cloud region where you want to create a cluster. Currently, free clusters can be created only on GCP. To obtain available cloud region IDs, call the List Cloud Regions operation.
For further details, see Create Serverless Cluster.
Create a Dedicated cluster
- Cloud Console
- cURL
The following demo shows how to create a Dedicated cluster.
You need to configure the following information of the Dedicated cluster.
-
Cluster Name: Assign a unique identifier for your cluster.
-
Cluster Settings:
-
Cluster Type: Select a cluster type that aligns with your cluster's performance requirements. For more information, refer to Select the Right Cluster Type. To select a Tiered-storage cluster, your cluster must have at least 8 query CUs.
-
Query CU: Select the number of query CUs of the cluster.
-
-
(Optional) Backup Policy: Decide the backup frequency for the cluster to create. Once enabled, Zilliz Cloud will create a backup immediately after the cluster is created. Subsequent backups will follow the specified schedule.
While the cluster is being created, you need to save the cluster credentials (user and password) which will be shown only once.
When the cluster status turns into "Running", the cluster is created successfully. You can then copy the cluster endpoint and token and use them to connect to the cluster.
Your request should resemble the following example, where {API_KEY} is your API key used for authentication.
The following POST request takes a request body and creates a dedicated Performance-optimized cluster named cluster-02 with one query CU.
curl --request POST \
--url "https://api.cloud.zilliz.com/v2/clusters/createDedicated" \
--header "Authorization: Bearer ${API_KEY}" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data-raw '{
"clusterName": "Cluster-02",
"projectId": "proj-xxxxxxxxxxxxxxxxxxxxxx",
"regionId": "aws-us-west-2",
"plan": "Standard",
"cuType": "Performance-optimized",
"cuSize": 1
}'
# {
# "code": 0,
# "data": {
# "clusterId": "inxx-xxxxxxxxxxxxxxx",
# "username": "db_admin",
# "password": "****************",
# "prompt": "successfully submitted, cluster is being created. You can access data about the creation progress and status of your cluster by DescribeCluster API. Once the cluster status is RUNNING, you may access your vector database using the SDK with the admin account and the initial password you specified."
# }
# }
In the command above,
-
{API_KEY}: The credential used to authenticate API requests. Replace the value with your own. -
clusterName: The name of the cluster to create. -
projectId: The ID of the project in which you want to create a cluster. To list project IDs, call the List Projects operation. -
regionId: The ID of the cloud region where you want to create a cluster. To obtain available cloud region IDs, call the List Cloud Regions operation. -
cuType: The type of the cluster. Valid values: Performance-optimized, Capacity-optimized, and Tiered-storage. -
cuSize: The number of query CUs used for the cluster. Value range: 1 to 256.
For further details, see Create Dedicated Cluster.