gcloud-lab/apps/base/customer1/hermes-db/pg-cluster-hermes.yaml
Hermes Agent 4df7450461 feat(customer1): add pgvector RAG knowledge base with embedding service
- 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
2026-05-24 20:31:59 +00:00

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