Päiväkirjan hakemistoDockup / kenttämuistio
Note / self-host-qdrant

Qdrantin itseisännöinti vuonna 2026: tallennus, API-avaimet ja varmuuskopiot

Käytännönläheinen Qdrantin itseisännöintiopas, joka kattaa Dockerin, portit, pysyvän datan, TLS:n, tietoturvan, varmuuskopiot ja tuotantokäyttöä estävät ongelmat. Vaihe vaiheelta.

Qdrantin itseisännöinti muuttuu kiinnostavaksi ensimmäisen uudelleenasennuksen yhteydessä, ei ensimmäisen docker run -komennon jälkeen. Jos tallennusoikeudet eivät toimi tai client käyttää porttia 6334, vaikka reititettynä on vain 6333, Docker voi silti ilmoittaa prosessin olevan täysin terve. Alla kuvattu käyttöönotto perustuu havaittavaan toimintaan: luodaan kokoelma tarkoitetulla vektorikoolla, lisätään payload-sisältöä sisältäviä pisteitä, suoritetaan suodatettu nearest-neighbor-kysely ja palautetaan kokoelman snapshot.

Qdrantin käyttötarkoitus on selkeä: vektoritietokanta embedding- ja retrieval-järjestelmille. Tämä kertoo, minkä on oltava julkista, minkä pitäisi pysyä yksityisenä ja mitä varmuuskopion on pystyttävä palauttamaan.

Kartoita Qdrant ennen Dockerin käsittelyä

Älä anna Qdrant-imagen määrittää tuotantoarkkitehtuuria vahingossa. Image tarjoaa prosessin portissa 6333, mutta tallennus, reititys ja ulkoiset vaatimukset tarvitsevat edelleen harkitut elinkaarimallit. Paikallinen runtime-vaatimus on, että vektoridimensioille, payloadeille ja indekseille on riittävästi RAM-muistia ja levytilaa. Dokumentoi odotettu kapasiteetti, omistajuus ja vikatilanne sen sijaan, että jättäisit ne imagen oletusten varaan.

Käyttöönotto on valmis perusteellisempaan testaukseen, kun sillä voidaan luoda kokoelma tarkoitetulla vektorikoolla, lisätä payload-sisältöä sisältäviä pisteitä, suorittaa suodatettu nearest-neighbor-kysely ja palauttaa kokoelman snapshot. Seuraa tapahtumaketjua lokeista ja tarkkaile vektoridimensioita, HNSW-rakennusta, payload-indeksejä, kokoelman replikoita sekä memory-mapped-datan ja käytettävissä olevan RAM-muistin välistä eroa. Näiden havaintojen avulla selviää, eristääkö nykyinen topologia oikean komponentin.

Reititä Qdrant ilman virheellisiä HTTPS-oletuksia

Valitse lopullinen Qdrant-hostname ennen kuin käyttäjät tallentavat callback-osoitteita tai client-asetuksia. Pidä REST julkisena vain silloin, kun clientit sitä aidosti tarvitsevat, ja pidä gRPC yksityisenä. Alustan reitin tulee päättää TLS-yhteys kerran ja kohdistaa liikenne yksityiseen porttiin 6333.

Suorita hyväksyntätestin tapahtumaketju ulkoisesti. Jos client ei koskaan tavoita Qdrantia, käytä SSL-validoinnin tarkistuslistaa DNS- ja sertifikaattitarkistuksiin. Jos pyyntö saavuttaa Qdrantin, mutta tallennusoikeudet eivät toimi tai client käyttää porttia 6334, vaikka reititettynä on vain 6333, lopeta proxy-uudelleenohjausten muuttaminen ja tarkasta sovelluskohtainen rajapinta.

Muuta paikallinen komento tarkasteltavaksi palveluksi

Käytä komentoa, joka tuo kaikki tärkeät valinnat näkyviin. Tämä perustaso sitoo Qdrantin hostin loopback-osoitteeseen, lisää tunnetut datamountit ja määrittää ensimmäisen vaaditun asetuksen. Varmista paikallinen vaatimus ennen julkaisemista: vektoridimensioille, payloadeille ja indekseille on oltava riittävästi RAM-muistia ja levytilaa.

docker run -d \
  --name qdrant \
  --restart unless-stopped \
  -p 127.0.0.1:6333:6333 \
  -v qdrant-data:/qdrant/storage \
  -e QDRANT__SERVICE__API_KEY=replace-with-a-long-random-value \
  qdrant/qdrant:latest

Korvaa kelluvat tagit testatulla versiolla tai digestillä. Tarkasta käynnistyksen jälkeen docker logs --tail 200 qdrant ja varmista, että prosessi kuuntelee porttia 6333. Suorita sen jälkeen Qdrantin hyväksyntätoiminto. Juuriportin vastaus ei voi todistaa, että koko käyttötapaus toimii: luo kokoelma tarkoitetulla vektorikoolla, lisää payload-sisältöä sisältäviä pisteitä, suorita suodatettu nearest-neighbor-kysely ja palauta kokoelman snapshot.

Päivitä Qdrant arvailematta

Kapasiteettitestien tulee kattaa vektoridimensiot, HNSW-rakennus, payload-indeksit, kokoelman replikat sekä memory-mapped-datan ja käytettävissä olevan RAM-muistin välinen ero. Pelkkää /-osoitteeseen toistuvaa pyyntöä ei pidä käyttää testinä. Suorita skenaario ”luo kokoelma tarkoitetulla vektorikoolla, lisää payload-sisältöä sisältäviä pisteitä, suorita suodatettu nearest-neighbor-kysely ja palauta kokoelman snapshot” realistisella samanaikaisuudella ja kirjaa latenssi, virheprosentti sekä tallennustilan kasvu.

Päivityksen suunnittelussa on huomioitava seuraava riski: kokoelmien snapshotit, tallennusmuodon yhteensopivuus ja client-kirjaston toiminta on testattava ennen palvelinversion vaihtamista. Testaa uusi julkaisu edustavalla syötteellä, suorita sitten hyväksyntätestin tapahtumaketju uudelleen ja vertaa tulosta. Jos tallennusoikeudet eivät toimi tai client käyttää porttia 6334, vaikka reititettynä on vain 6333, tallenna epäonnistuva tapahtumaketju ja tarkasta ensimmäinen siihen liittyvä rajapinta sen sijaan, että olettaisit ingresseen olevan vastuussa.

Muuta Qdrantin smoke test release-tarkistukseksi

Qdrantin release candidate ansaitsee liikenteen suorittamalla ennalta määritetyn skenaarion: luo kokoelma tarkoitetulla vektorikoolla, lisää payload-sisältöä sisältäviä pisteitä, suorita suodatettu nearest-neighbor-kysely ja palauta kokoelman snapshot. Tallenna kyseisen skenaarion imagen digest, tehokas ei-salainen konfiguraatio, julkinen origin ja aikaleimat. Testidatan tulee olla helposti hävitettävää, mutta riittävän realistista kulkemaan saman polun kuin käyttäjien data.

Suorita testi runtime-ympäristön vaihtamisen jälkeen ja rakenna palvelu uudelleen Qdrantin snapshotien ja pysyvän tallennushakemiston perusteella. Palautus onnistuu, kun snapshot luo kokoelman uudelleen samalla pisteiden määrällä, vektorikonfiguraatiolla ja edustavilla kyselytuloksilla. Vertaa vektoridimensioiden, HNSW-rakennuksen, payload-indeksien, kokoelman replikoiden sekä memory-mapped-datan ja käytettävissä olevan RAM-muistin välisen eron resurssimittauksia edelliseen julkaisuun ja selvitä merkittävät poikkeamat ennen julkaisua.

Suorita lopuksi tämä hallittu vikatilanne: lähetä vaaratonta syötettä lähelle tämän rajapinnan yhteydessä olevaa resurssi- tai formaattirajaa: tallennusoikeudet eivät toimi tai client käyttää porttia 6334, vaikka reititettynä on vain 6333. Varmista, että Qdrant selittää vian, ei vahingoita olemassa olevaa tilaa ja jatkaa toimintaansa, kun validi tila palautuu. Tallenna redaktoitu lokikatkelma ja palautumiseen kulunut aika. Yhdessä nämä tarkistukset kattavat toiminnan, kestävyyden ja operoitavuuden eivätkä pelkästään prosessin käynnissäoloa.

Varmista, että Qdrant kestää korvaamisen

Qdrantin tapauksessa uudelleenkäyttöönoton turvallisuus perustuu Qdrantin snapshotien ja pysyvän tallennushakemiston säilyttämiseen. Liitä /qdrant/storage ennen bootstrap-vaihetta, kirjoita vaaratonta esimerkkidataa ja korvaa kontti varmistaaksesi, että polku on todella pysyvä. Testaa polku korvaamalla kontti, kun vaaratonta esimerkkidataa on olemassa. Näin paljastuvat mountit, jotka osoittavat yhden hakemistotason liian ylös tai alas.

Testaa seuraavaksi disaster recovery tyhjällä hostilla. Käytä tarvittaessa sovelluksen kannalta yhtenäistä tietokantavientiä ja varmista, että snapshot luo kokoelman uudelleen samalla pisteiden määrällä, vektorikonfiguraatiolla ja edustavilla kyselytuloksilla. Palautustestatun tietokantavarmuuskopion opas tarjoaa vahvemman tavoitteen kuin pelkkä sen tarkistaminen, että arkistotiedosto luotiin.

Tunnistetiedot, roolit ja julkiset rajapinnat

Qdrantin arvokas rajapinta ei välttämättä ole aloitussivu. Suurin virhe on julkaista autentikoimaton API internetiin. Estä tämä tarkoituksella: anna ingestion-palveluille rajattu API-käyttöoikeus ja pidä koko hallinnollinen API yksityisellä reitillä.

Käsittele QDRANT__SERVICE__API_KEY-asetusta sen Qdrant-roolin mukaisesti: pidä arkaluontoiset arvot poissa Gitistä, dokumentoi kierrätyksen vaikutukset äläkä koskaan käytä julkista esimerkkiarvoa tuotannossa. Käytä etuoikeudetonta container-käyttäjää, jos image tukee sitä, äläkä liitä mukaan asiaankuulumattomia tunnistetietoja. Aseta ingressessä rate- tai kokorajoitukset, jos epäluotettu työ voi kuluttaa vektoridimensioita, HNSW-rakennusta, payload-indeksejä, kokoelman replikoita sekä memory-mapped-datan ja käytettävissä olevan RAM-muistin välistä kapasiteettia.

Siirrä toistettava infrastruktuurityö Dockupille

Dockup voi hallita korvattavia alustakomponentteja: reitittää liikenteen porttiin 6333, myöntää domainin ja sertifikaatin, injektoida secretit, liittää pysyvän tallennustilan ja yhdistää Qdrantin hallittuihin tai yksityisesti liitettyihin palveluihin. Tämä voidaan tehdä Dockup-infrastruktuurissa tai liittämässäsi palvelimessa.

Qdrantin hyväksyntätyö pysyy eksplisiittisenä. One-click-käyttöönoton jälkeen pidä REST julkisena vain silloin, kun clientit sitä aidosti tarvitsevat, pidä gRPC yksityisenä, varmista paikallinen vaatimus — vektoridimensioille, payloadeille ja indekseille on oltava riittävästi RAM-muistia ja levytilaa — ja suorita tämä skenaario: luo kokoelma tarkoitetulla vektorikoolla, lisää payload-sisältöä sisältäviä pisteitä, suorita suodatettu nearest-neighbor-kysely ja palauta kokoelman snapshot. Tämä jako on tarkoituksellinen: Dockup poistaa toistuvan infrastruktuurin alustamisen ilman, että se teeskentelee sovellusroolien, palveluntarjoajan tunnistetietojen tai palautuskäytännön valikoituvan automaattisesti.

Usein kysytyt kysymykset

Mitä Qdrant tarvitsee tuotantokäyttöön?

Reititä Qdrant-kontti portissa 6333 yhden HTTPS-originin kautta. Paikallinen runtime-vaatimus on, että vektoridimensioille, payloadeille ja indekseille on riittävästi RAM-muistia ja levytilaa. Älä pidä Qdrantia valmiina, ennen kuin voit luoda kokoelman tarkoitetulla vektorikoolla, lisätä payload-sisältöä sisältäviä pisteitä, suorittaa suodatetun nearest-neighbor-kyselyn ja palauttaa kokoelman snapshotin.

Mitkä Qdrantin tiedot kuuluvat varmuuskopioon?

Säilytä /qdrant/storage ja sisällytä Qdrantin snapshotit sekä pysyvä tallennushakemisto samaan palautusmanifestiin. Qdrantin puhdas palautus onnistuu vain, kun snapshot luo kokoelman uudelleen samalla pisteiden määrällä, vektorikonfiguraatiolla ja edustavilla kyselytuloksilla.

Tarvitseeko Qdrant HTTPS-yhteyden reverse proxyn takana?

Käytä HTTPS:ää julkisessa Qdrant-originissa ja pidä portti 6333 sisäisessä reitissä. Käytä Qdrant-asetusta oikein: pidä REST julkisena vain silloin, kun clientit sitä aidosti tarvitsevat, ja pidä gRPC yksityisenä. Qdrantin tapauksessa HTTPS suojaa tunnistetiedot tai käyttäjäsisällön siirron aikana ja pitää originista riippuvan client-käyttäytymisen yhdenmukaisena.

Miten Qdrantin päivitys pitäisi testata?

Palauta nykyinen Qdrant-tila eristettyyn käyttöönottoon, ota ehdokasversio käyttöön ja suorita sen hyväksyntätestin tapahtumaketju uudelleen. Kiinnitä erityistä huomiota siihen, että kokoelmien snapshotit, tallennusmuodon yhteensopivuus ja client-kirjaston toiminta on testattava ennen palvelinversion vaihtamista. Säilytä edellinen Qdrant-image, kunnes sen datamigraation ja rollbackin rajat on ymmärretty.