Implementación local de diferentes bases de datos vectoriales utilizando Minikube.
Para instalar minikube, verifique los documentos
La configuración que estoy usando es la siguiente:
Obtener el estado
minikube statusIniciar clúster
minikube startDetener el clúster
minikube stopObtenga información sobre los nodos en su clúster
kubectl get nodes -o widedocumento
minikube tunnelCree un archivo .env para almacenar sus variables. Necesitará uno por base de datos, ejecute lo siguiente para crearlo automáticamente
Generar el archivo PGVector .env
cat > pgvector/.env << EOF
# PgVector
POSTGRES_DB=dbname
POSTGRES_USER=postgres
POSTGRES_PASSWORD=password
EOFLos scripts de implementación crearán un secreto por DB referenciado por el archivo de implementación.yml
¡¡Importante!!
Antes de ejecutar cualquier script de implementación, verifique sus archivos .env , si desea usar uno diferente, simplemente pasarlo al script, de forma predeterminada usará .env (recuerde que cada DB tiene su propio archivo env)
bash deploy_dbs.sh --env " .env_prod "o
bash deploy_dbs.sh -e " .env_prod " Para implementar PGVector, use -Pgvector Flag
bash deploy_dbs.sh --pgvectorDB_FLAG: - -PGVECTOR
bash deploy_dbs.sh --db_flag1 --db_flag2Para obtener la IP externa
kubectl get servicesSi no lo ves, corre:
minikube tunnelCompruebe si el DB acepta conexiones
pg_isready -d ${POSTGRES_DB} -h ${EXTERNAL_IP} -p 5432 -U ${POSTGRES_USER}Abrir un Conexión Documentos
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