Déploiement local de différentes bases de données vectorielles à l'aide de Minikube.
Pour installer Minikube, vérifiez les documents
La configuration que j'utilise est la suivante:
Obtenez le statut
minikube statusDémarrer le cluster
minikube startCluster d'arrêt
minikube stopObtenez des informations sur les nœuds de votre cluster
kubectl get nodes -o widedocs
minikube tunnelCréez un fichier .env pour stocker vos variables. Vous en aurez besoin d'un par base de données, exécutez ce qui suit pour le créer automatiquement
Générer un fichier pgvector .env
cat > pgvector/.env << EOF
# PgVector
POSTGRES_DB=dbname
POSTGRES_USER=postgres
POSTGRES_PASSWORD=password
EOFLes scripts de déploiement créeront un secret par dB référencé par le fichier Deployment.yml
Important!!
Avant d'exécuter n'importe quel script de déploiement, vérifiez vos fichiers .env , si vous souhaitez en utiliser un différent, passez-le simplement au script, il utilisera .env (rappelez-vous que chaque base de données a son propre fichier Env)
bash deploy_dbs.sh --env " .env_prod "ou
bash deploy_dbs.sh -e " .env_prod " Pour déployer PGVector, utilisez - pgVector Flag
bash deploy_dbs.sh --pgvectordb_flag: --pgvector
bash deploy_dbs.sh --db_flag1 --db_flag2Pour obtenir l'IP externe
kubectl get servicesSi vous ne le voyez pas, courez:
minikube tunnelVérifiez si la base de données accepte les connexions
pg_isready -d ${POSTGRES_DB} -h ${EXTERNAL_IP} -p 5432 -U ${POSTGRES_USER}Ouvrez un document de connexion
psql -d ${POSTGRES_DB} -h ${EXTERNAL_IP} -p 5432 -U ${POSTGRES_USER} kubectl delete service pgvector &&
kubectl delete deployment pgvector &&
kubectl delete pv pgvector-pv &&
kubectl delete pvc pgvector-pvc &&
kubectl delete secret pgvector-secrets