Skip to main content

Requirements

  • Three VMs with Docker installed
  • Docker installed
  • Open ports 6333 and 6335 on the VMs
    • 6333: Port for external communication with qdrant nodes.
    • 6335: Port for internal communication between qdrant nodes. Don’t expose to public.

Installation

QDRANT__SERVICE__API_KEY is a required environment variable

You can generate a random 32-byte hex string using the following command:
Copy and paste the generated string to replace #REPLACE_ME# in the docker-compose.yml file.

[First VM] Create the docker-compose.yml file for first VM

  • replace commmand with --uri option to current VM address

[Second VM] Create the docker-compose.yml file for second VM

  • replace commmand with --bootstrap option to first VM address and --uri option to current VM address

[Third VM] Create the docker-compose.yml file for third VM

  • replace commmand with --bootstrap option to first VM address and --uri option to current VM address

Check the cluster status

Login one of VMs and run the following command to check the cluster status.
After you run the above command, you should see the following example output:

Add Load Balancer

  • After deploying the qdrant cluster, you can add a load balancer to distribute the requests to the qdrant nodes.
  • Load balancer should be configured to distribute the requests to the qdrant nodes on port 6333.
  • 6335 only for internal communication, no need to expose it to the public.

References