Qdrant (qdrant)
Base vectorielle pour les plongements des chaînes de recherche. Nœud unique ou distribué avec consensus Raft et collections partitionnées.
Généré depuis catalog/services/qdrant.yaml : ne pas modifier à la main.
Résumé
| Version | 1.14.1 |
| Usage | installer et configurer, configurer et connecter |
| Couche | fonctionnelle (catalogue IA) |
| Catégorie | Plateformes de données |
| Méthodes d'installation | binary, podman |
| Connexion externe | qdrant |
| Réservé au bac à sable | non |
Licence
| Identifiant SPDX | Apache-2.0 |
| Politique de licence | licence socle (MIT ou Apache-2.0) |
| Exception de licence | - |
| Composant de la plateforme | qdrant |
Paquets et artefacts
Un paquet que publie le projet du service (son image, son archive binaire, son paquet Python ou système) porte la licence du service ; un paquet tiers porte la licence écrite sur sa ligne, lue dans les métadonnées officielles du projet amont.
| Type | Paquet | Version | Licence | Détails |
|---|---|---|---|---|
| image de conteneur | docker.io/qdrant/qdrant | v1.14.1 | Apache-2.0 | clé d'image qdrant, utilisée par node, condensé sha256:419d72603f5346ee22ffc4606bdb7beb52fcb63077766fab678e6622ba247366 |
| archive binaire | qdrant-x86_64-unknown-linux-gnu.tar.gz | 1.14.1 | Apache-2.0 | https://github.com/qdrant/qdrant/releases/download/v1.14.1/qdrant-x86_64-unknown-linux-gnu.tar.gz, x86_64 |
Les images sont épinglées par étiquette dans le descripteur, et par condensé (digest) quand le descripteur en déclare un (le bundle hors ligne refuse alors une image téléchargée qui ne le porte pas) ; le condensé est enregistré dans le miroir du Manager à l'import du bundle hors ligne, et chaque téléchargement ou chargement est vérifié par rapport à lui.
Systèmes et architectures pris en charge
| Méthode | Systèmes d'exploitation | Architectures |
|---|---|---|
binary | famille RHEL (dnf), famille Debian (apt), Arch Linux (pacman) | x86_64 (architecture des artefacts du descripteur) |
podman | famille RHEL (dnf), famille Debian (apt), Arch Linux (pacman) | x86_64, aarch64 (non restreintes par le descripteur) |
Systèmes hôtes certifiés : RHEL 8/9/10, Rocky Linux 8/9/10, AlmaLinux 8/9/10, Oracle Linux 8/9, CentOS Stream 9/10, Ubuntu 22.04/24.04, Debian 12, Arch Linux (rolling). Le contrôle préalable des hôtes accepte ces systèmes (une autre version d'une famille connue donne un avertissement, une version en fin de vie est refusée) et les architectures x86_64 et aarch64.
Prérequis
Hôte
- au moins 2048 Mo de mémoire (bloquant,
memory).
Programmes que les commandes et les contrôles du service lancent sur l'hôte, hors des racines gérées : les ajouter à allowed_commands de l'agent (voir Sécurité de l'agent Navin), sinon l'agent les refuse avec command_not_allowed : /usr/bin/curl.
Réseau et ports
| Composant | Nom du port | Port | Ouvert dans le pare-feu de l'hôte |
|---|---|---|---|
node | http | 6333/tcp | oui |
node | grpc | 6334/tcp | oui |
node | p2p | 6335/tcp | oui |
Services et connexions nécessaires
Ce service n'a aucune dépendance.
Méthodes et modes d'installation
| Méthode | Défaut | Ce que la méthode utilise |
|---|---|---|
binary | oui | les archives binaires du descripteur, décompressées dans le répertoire du service |
podman | - | les images de conteneur du descripteur, exécutées par Podman sous systemd |
Composants
| Composant | Type | Méthodes d'installation | Ports |
|---|---|---|---|
Nœud Qdrant (node) | maître | binary, podman | 6333/tcp, 6334/tcp, 6335/tcp |
Nœud unique (standalone) (par défaut)
Un seul nœud Qdrant.
Ce que le mode déploie :
| Composant | Placement |
|---|---|
node | min 1, max 1 |
Distribué (distributed)
Nœuds reliés par Raft, amorcés depuis le premier nœud ; un nombre impair garde le quorum.
Ce que le mode déploie :
| Composant | Placement |
|---|---|
node | min 3, nombre impair, recommandé 3 |
Installer ce service
L'assistant d'installation du Navin Manager planifie, valide et exécute l'installation ; il faut la permission services:install sur le cluster.
-
Ouvrez l'assistant. Dans Clusters, choisissez l'action de ligne Installer des services du cluster cible. L'assistant s'ouvre sur sa première étape, Service.
-
Choisissez le service. À l'étape Service, sélectionnez Qdrant. La carte affiche la licence
Apache-2.0. Choisissez la Méthode parmibinary,podman(par défautbinary). Pour enregistrer à la place un serviceqdrantexistant de votre organisation, activez Utiliser un service externe existant. -
Choisissez les hôtes et le mode. À l'étape Hôtes, cochez les hôtes, puis choisissez le Mode :
standalone(par défaut),distributed. Chaque mode déploie les composants listés dans Méthodes et modes d'installation. -
Liaisons. Ce service n'a aucune dépendance : l'étape Liaisons n'a rien à lier.
-
Configurez. À l'étape Configuration, relisez les paramètres (voir Paramètres de configuration). Les mots de passe laissés vides avec une valeur générée par défaut sont générés et scellés par le Manager.
-
Relisez et installez. À l'étape Installation, le Manager valide le plan et affiche l'ordre d'installation ; quand il indique « Le plan est valide. Prêt pour l'installation. », choisissez Installer. Un mode hautement disponible n'est installé que si ses contrôles HA réussissent.
-
Vérifiez. L'opération se termine quand les contrôles de santé de chaque instance réussissent (voir Contrôles de santé) ; le service apparaît alors en marche dans Services.
Connecter un service existant
| Schémas | https, http |
| Port par défaut | 6333 |
| Authentification | facultative |
| Contrôle de santé | /healthz |
| Méthode d'authentification | Champs | Description |
|---|---|---|
api_key | api_key | Clé d'administration (service.api_key) ou en lecture seule (service.read_only_api_key), envoyée dans l'en-tête api-key. |
jwt | token | Jeton d'accès granulaire (JWT de service.jwt_rbac) signé avec la clé d'administration. |
none | - | Sans clé d'API, Qdrant est ouvert à quiconque l'atteint : développement seulement. |
Documentation officielle : https://qdrant.tech/documentation/security/
Haute disponibilité
| Cluster | natif (native) |
| Haute disponibilité | natif (native) |
| Bascule | natif (native) |
| Réplication | natif (native) |
| Quorum | Raft (raft) |
| Découverte | statique (static) |
| Point d'entrée | n'importe quel nœud (any-node) |
| Documentation officielle | https://qdrant.tech/documentation/distributed_deployment/ |
| Paramètre TLS entre pairs | tls_enabled |
| Commande d'état du cluster | cluster_info |
Topologie par mode
| Modes | Niveau le plus haut du catalogue | Répartition | Composant du quorum | Domaines de panne | Description |
|---|---|---|---|---|---|
standalone | autonome (standalone) | unique (single) | - | 1 | Un nœud Qdrant. |
distributed | cluster (cluster) | actif-actif (active-active) | node | 3 | Nœuds reliés par Raft depuis le premier nœud ; collections créées avec un facteur de réplication de 2. |
Remarques
- Qdrant OSS demande une configuration explicite de la réplication et du rééquilibrage des shards : ce n'est pas la haute disponibilité gérée de Qdrant Cloud. Le catalogue fixe un facteur de réplication par défaut de 2 pour les nouvelles collections ; déplacer les shards après un changement de nœud est une action d'exploitation.
Paramètres de configuration
Réseau
| Paramètre | Type | Défaut | Valeurs permises | Obligatoire | Secret | Redémarrage | Description |
|---|---|---|---|---|---|---|---|
Port HTTP (http_port) | port | 6333 | - | non | non | non | Port de l'API REST et de /metrics. |
Port gRPC (grpc_port) | port | 6334 | - | non | non | non | Port de l'API gRPC. |
Port des pairs (p2p_port) | port | 6335 | - | non | non | non | Port du trafic interne entre nœuds (mode distribué). |
Stockage
| Paramètre | Type | Défaut | Valeurs permises | Obligatoire | Secret | Redémarrage | Description |
|---|---|---|---|---|---|---|---|
Charge utile sur disque (on_disk_payload) | bool | true | - | non | non | non | Garder les charges utiles sur disque pour économiser la mémoire. |
Partitions par collection (default_shard_number) | int | 1 | min 1, max 64 | non | non | non | Nombre de partitions par défaut des nouvelles collections, une par nœud. (recommandé len(topology.node)) |
Sécurité
| Paramètre | Type | Défaut | Valeurs permises | Obligatoire | Secret | Redémarrage | Description |
|---|---|---|---|---|---|---|---|
TLS (tls_enabled) | bool | false | - | non | non | non | Servir les API et le trafic entre pairs en TLS avec le certificat de l'autorité de la console. |
Clé d'API (api_key) | password | généré | - | non | oui | non | Clé exigée par chaque appel d'API. |
Points d'accès
| Point d'accès | Schéma | Composant | Port | Chemin | Paramètre TLS | Paramètres de liaison | Secrets de liaison | Commande de provisionnement |
|---|---|---|---|---|---|---|---|---|
http | http | node | 6333 (http_port) | - | tls_enabled | - | api_key | - |
grpc | grpc | node | 6334 (grpc_port) | - | tls_enabled | - | api_key | - |
Commandes
| Commande | Composant | Cible | Description |
|---|---|---|---|
État du cluster (cluster_info) | node | tous les hôtes | Vérifie l'état Raft et les pairs vus par chaque nœud. |
Contrôles de santé
Vivacité (par instance)
| Composant | Contrôle | Détails |
|---|---|---|
node | HTTP {{ 'https' if config.tls_enabled else 'http' }}://{{ host.fqdn }}:{{ config.http_port }}/healthz | Attendu 200 ; 60 tentatives |
Disponibilité (contrôle du service)
| Contrôle | Détails |
|---|---|
HTTP {{ 'https' if config.tls_enabled else 'http' }}://{{ host.fqdn }}:{{ config.http_port }}/readyz | Attendu 200 |
Contrôles préalables
| Contrôle | Type | Signification | Sévérité | Composants |
|---|---|---|---|---|
memory | memory_mb {"min": 2048} | au moins 2048 Mo de mémoire | bloquant | tous les composants |
http_port_free | port_free {"param": "http_port"} | port 6333 libre sur l'hôte | bloquant | tous les composants |
Désinstallation
Chemins supprimés quand les données sont purgées : {{ paths.data }}, {{ paths.log }}.
Liens rapides
- Interface web :
{{ 'https' if config.tls_enabled else 'http' }}://{{ host.fqdn }}:{{ config.http_port }}/dashboard
Documentation amont
- Site : https://qdrant.tech
- Sources : https://github.com/qdrant/qdrant
- Haute disponibilité : https://qdrant.tech/documentation/distributed_deployment/
- Authentification : https://qdrant.tech/documentation/security/