- Custom PostgreSQL 15.2 image with pgvector 0.8.0 extension - Updated pg-cluster-hermes.yaml: custom image, sharedPreloadLibraries, maintenance_work_mem - RAG schema: documents table with vector(768) embeddings + HNSW index - RAG init job: ConfigMap + Job to apply schema to agent_memory db - Embedding service: FastAPI with nomic-embed-text-v1.5 - OpenAI-compatible /v1/embeddings endpoint - Deployment (1 replica, 2Gi-4Gi memory) + Service manifests - Updated kustomization.yaml to include new resources
65 lines
1.4 KiB
YAML
65 lines
1.4 KiB
YAML
apiVersion: postgresql.cnpg.io/v1
|
|
kind: Cluster
|
|
metadata:
|
|
name: hermes-pgdb
|
|
namespace: customer1
|
|
|
|
spec:
|
|
instances: 1
|
|
# Custom image with pgvector extension
|
|
imageName: "gcr.io/devops-lab-cluster/postgres-pgvector:15.2-0.8.0"
|
|
storage:
|
|
size: 20Gi
|
|
|
|
# pgvector extension configuration
|
|
sharedPreloadLibraries:
|
|
- pgvector
|
|
|
|
postgresql:
|
|
parameters:
|
|
# pgvector HNSW index memory settings
|
|
maintenance_work_mem: "256MB"
|
|
|
|
managed:
|
|
roles:
|
|
- name: hermes
|
|
ensure: present
|
|
login: true
|
|
passwordSecret:
|
|
name: hermes-db-credentials
|
|
- name: trading
|
|
ensure: present
|
|
login: true
|
|
passwordSecret:
|
|
name: trading-db-credentials
|
|
- name: memory
|
|
ensure: present
|
|
login: true
|
|
passwordSecret:
|
|
name: memory-db-credentials
|
|
|
|
bootstrap:
|
|
initdb:
|
|
database: hermes_memory
|
|
owner: hermes
|
|
secret:
|
|
name: hermes-db-credentials
|
|
|
|
serviceAccountTemplate:
|
|
metadata:
|
|
name: cnpg-backup-sa
|
|
annotations:
|
|
iam.gke.io/gcp-service-account: cnpg-backup-sa@devops-lab-cluster.iam.gserviceaccount.com
|
|
|
|
backup:
|
|
barmanObjectStore:
|
|
destinationPath: "gs://customer1_db_backup/hermes-backups/"
|
|
googleCredentials:
|
|
gkeEnvironment: true
|
|
wal:
|
|
compression: gzip
|
|
data:
|
|
compression: gzip
|
|
jobs: 2
|
|
retentionPolicy: "30d"
|
|
target: primary
|