Hoppa till innehållet
Stackship-dokumentation English

Vektorlagringar (Qdrant)AdministratörerMaskinöversatt

Vad vektorlagringar behöver från installationen

Qdrant-operatorn, Qdrant-domänen, certifikatutfärdaren och lagringsklasserna som vektorlagringar är beroende av, och hur det märks när de saknas.

Vektorlagringar kommer från den valfria modulen Qdrant Databases (db-qdrant). Modulen kör inte Qdrant själv: den skriver en QdrantCluster-resurs (qdrantoperator.io/v1alpha1) i resursgruppens namnrymd, och Qdrant-operatorn gör om den till en StatefulSet med Qdrant-servrar. Lastbalanserarens Service och HTTPS-ingressen skapar modulen själv.

Qdrant-operatorn

Varje kluster som har vektorlagringar behöver:

Vad Var
Resursdefinitionen qdrantclusters.qdrantoperator.io I hela klustret
Deploymenten qdrant-operator Namnrymden qdrant-operator-system

Båda kommer från installatörens beroende Qdrant Operator: Helm-diagrammet oci://registry.stackship.se/charts/qdrant-operator, installerat som releasen qdrant-operator. Dess version låses av modulen Qdrant Databases (0.1.3 i dag). Så kontrollerar du ett kluster:

bash
kubectl get crd qdrantclusters.qdrantoperator.io
kubectl -n qdrant-operator-system get deployment qdrant-operator

Så märks en saknad eller trasig operator för användarna:

  • Utan resursdefinitionen avvisar klustret att en vektorlagring skapas.
  • Med resursdefinitionen men utan en fungerande operator stannar vektorlagringen i Creating och blir Failed fem minuter efter att den skapades. Dess statusmeddelande — i API:t och i stsh qdrant get — lyder The Qdrant operator has not started any pods for this cluster after 5 minutes.

Hur du lägger till modulen och dess beroende i en installation beskrivs i Installera en komponent.

Modulinställningar

Modulen läser de här från ConfigMap:en module-db-qdrant-config i stackship-system:

Inställning Sätts från Används till
Qdrant__DomainSuffix Qdrant Domain som efterfrågas vid installationen Plattformens värdnamn för HTTPS-ingressen. När den är tom avvisas HTTPS utan eget värdnamn
Qdrant__ClusterIssuer Certifikatutfärdaren som installationen använder för appar Certifikat för HTTPS-ingressen. När den är tom avvisas HTTPS
Qdrant__IngressClassName Installationens ingress-klass, traefik Klassen för HTTPS-ingressen
Storage__Standard Standard Storage Class Volymer för planerna nano och small
Storage__Premium Premium Storage Class Volymer för planerna medium och större

Lagringsklasserna skrivs in i planerna när modulen startar; en vektorlagring behåller den klass den skapades med.

DNS för HTTPS

En vektorlagrings värdnamn på plattformen är resursgruppens namnrymd utan prefixet rg-, följt av dess namn, under Qdrant-domänen: <boundary prefix>-<resource group>-<name>.<Qdrant domain>, förkortat med en hash när den första etiketten skulle bli längre än 63 tecken. Qdrant-domänen behöver därför en DNS-post med jokertecken som pekar mot klustrets ingress-kontroller, annars kan inga certifikat utfärdas för nya värdnamn.

Ingressen bär listan med tillåtna nätverk och en gräns på 64 MiB för anropskroppar som NGINX-ingress-annoteringar (nginx.ingress.kubernetes.io/whitelist-source-range och nginx.ingress.kubernetes.io/proxy-body-size). De gäller där ingress-kontrollern respekterar de annoteringarna.

Agent-kluster

På ett kluster som är anslutet som Agent-kluster kan en vektorlagrings API-nyckel inte läsas via plattformen, så portalen kan inte visa den. Se Agent-kluster.