Hoppa till innehållet
Stackship-dokumentation English

Vektorlagringar (Qdrant)AnvändareMaskinöversatt

Anslut till en vektorlagring

Hitta en vektorlagrings slutpunkter och API-nyckel, och anslut till den från en arbetslast, utanför klustret eller med Qdrants instrumentpanel.

Kräver: qdrantcluster/read, qdrantcluster/readSecrets

En klient behöver två saker: en slutpunkt och API-nyckeln. För att visa slutpunkterna krävs qdrantcluster/read; för att visa API-nyckeln krävs dessutom qdrantcluster/readSecrets, som Owner, Contributor och Databases Operator har.

Hitta slutpunkterna

Öppna Vektorlagring i sidomenyn och välj vektorlagringen. På dess Översikt har kortet Anslutningsdetaljer raden Slutpunkter med knappen Visa anslutningsinfo. Varje gång du visar dem registreras det i vektorlagringens aktivitetslogg.

Slutpunkt Form Nås från
REST http://qdrant-<name>.<namespace>:6333 Inne i Kubernetes-klustret
gRPC qdrant-<name>.<namespace>:6334 Inne i Kubernetes-klustret
REST (extern) http://<address>:6333 Utifrån, via lastbalanseraren, när den är på och har en adress
gRPC (extern) <address>:6334 Samma
Instrumentpanel https://<hostname>/dashboard Utifrån, via HTTPS-ingressen, när den är på

<namespace> är Kubernetes-namnrymden för vektorlagringens resursgrupp; portalen visar de fullständiga namnen. Via HTTPS-ingressen finns själva REST-API:t på https://<hostname>; gRPC betjänas inte där. Värdnamnet finns också under Konfiguration → Nätverk & säkerhet.

Inne i klustret går anslutningen över vanlig HTTP och gRPC, utan TLS.

Hämta API-nyckeln

I samma kort har API-nyckel knapparna Visa API-nyckel, Dölj API-nyckel och Kopiera API-nyckel. Att visa den registreras i aktivitetsloggen. När API-nyckelautentisering är av står det API-nyckelautentisering är inaktiverad i kortet.

Med CLI:t läser du den via API:t:

bash
stsh api GET /boundaries/<boundary-id>/resourcegroups/<resource-group>/resources/qdrantclusters/<name>/apikey

Obs

För en vektorlagring som ligger på ett kluster som är anslutet till plattformen som Agent-kluster kan nyckeln inte visas: Visa API-nyckel slutar med Error Fetching API Key.

Klienter skickar nyckeln i headern api-key, eller som Authorization: Bearer <key>; Qdrants klientbibliotek tar den som ett alternativ api_key eller apiKey.

Anslut från en arbetslast

Appar, funktioner och containerinstanser i samma boundary och på samma kluster når de interna slutpunkterna: boundaryns nätverksregler låter dess resursgrupper tala med varandra — se Nätverksregler. Arbetslaster i andra boundaries når inte de interna slutpunkterna.

Viktigt

Arbetslaster i andra boundaries når HTTPS-slutpunkten: deras nätverksregler tillåter utgående HTTPS till alla adresser, och ingress-kontrollern når varje boundary. Medan HTTPS-ingressen är på, vilket skapa-guiden gör till standard, är API-nyckeln det enda som håller dem ute. Se Mellan boundaries.

Håll API-nyckeln utanför konfigurationen:

  1. Lägg nyckeln i ett valv som en hemlighet — se Lägg till en hemlighet.
  2. Referera hemligheten från arbetslasten, till exempel som QDRANT_API_KEY — se Hemligheter i appar och funktioner eller Hemligheter i containerinstanser.
  3. Lägg REST-slutpunkten i en vanlig inställning, till exempel miljövariabeln QDRANT_URL.

En app läser sina hemligheter från /secrets/env.json; en funktion får dem som miljövariabler med prefixet STSH_, till exempel STSH_QDRANT_API_KEY. I en Python-app:

python
import json
import os

from qdrant_client import QdrantClient

secrets = json.load(open("/secrets/env.json"))
client = QdrantClient(url=os.environ["QDRANT_URL"], api_key=secrets["QDRANT_API_KEY"])

När du har roterat nyckeln skriver du in det nya värdet i hemligheten och startar om arbetslasten: den läser sina hemligheter bara när den startar.

Anslut utanför klustret

Använd HTTPS-slutpunkten när du kan. Lastbalanseraren har ingen TLS, så API-nyckeln går över nätet i klartext vid varje anrop; använd den för klienter som behöver gRPC, och begränsa den med Tillåtna CIDR-block — se Nätverk och API-nyckeln.

bash
curl -H "api-key: $QDRANT_API_KEY" https://<hostname>/collections

Öppna instrumentpanelen

Qdrant har en webbaserad instrumentpanel där du kan bläddra bland samlingar och köra frågor. När HTTPS-ingressen är på visar Visa anslutningsinfo den som Instrumentpanel. Instrumentpanelen använder samma API och behöver därför också API-nyckeln. Den erbjuds inte via lastbalanseraren, som skulle skicka nyckeln utan TLS.