The Qdrant operator consists of the following components:
- Operator Deployment with 3 replicas (leader elections are performed using Kubernetes Leases).
- ConfigMap with operator parameters.
- Role => RoleBinding => ServiceAccount with necessary permissions.
The required Kubernetes version is 1.26 or higher.
The operator creates the following resources:
- StatefulSet with database replicas.
- ConfigMap with additional database settings.
- Two services,
qdrant
(for client connections) andqdrant-headless
(for peer-to-peer connections). - Secrets (optional)
qdrant-apikey
,qdrant-read-apikey
andqdrant-auth-config
if authentication is enabled. - Secret (optional)
qdrant-server-cert
if TLS encryption is enabled and the certificate is generated by the operator. - PodDisruptionBudget (optional) if the number of database replicas is greater than 1.
Additionally, the operator manages (creation, deletion, parameter modification) Qdrant collections using the corresponding certificates and API keys if required.