feat: Memory Phase 3 — LLM ingest, observability, migrations #49
@@ -1,8 +1,6 @@
|
|||||||
---
|
# Dedicated CNPG Postgres for Poimen Memory (GitOps, wave 2).
|
||||||
# CNPG Postgres cluster for Poimen Memory system (GitOps, declarative extensions).
|
# Matches homelab/k8s/infra/databases/memory-db.yaml — single source of truth.
|
||||||
# 2 instances, pgvector 0.7.0 via spec.extensions (not manual CREATE EXTENSION).
|
# CNPG generates secret `memory-db-app` + service `memory-db-rw` in ns poimen.
|
||||||
# Storage: 10Gi longhorn, consistent with temporal-db.yaml.
|
|
||||||
# No manual psql needed — all via git/ArgoCD.
|
|
||||||
apiVersion: postgresql.cnpg.io/v1
|
apiVersion: postgresql.cnpg.io/v1
|
||||||
kind: Cluster
|
kind: Cluster
|
||||||
metadata:
|
metadata:
|
||||||
@@ -13,20 +11,6 @@ metadata:
|
|||||||
spec:
|
spec:
|
||||||
instances: 2
|
instances: 2
|
||||||
imageName: ghcr.io/cloudnative-pg/postgresql:16.2
|
imageName: ghcr.io/cloudnative-pg/postgresql:16.2
|
||||||
enableSuperuserAccess: false
|
|
||||||
storage:
|
|
||||||
size: 10Gi
|
|
||||||
storageClass: longhorn
|
|
||||||
resources:
|
|
||||||
requests: { memory: "512Mi", cpu: "250m" }
|
|
||||||
limits: { memory: "2Gi", cpu: "1" }
|
|
||||||
affinity:
|
|
||||||
podAntiAffinityType: preferred
|
|
||||||
topologyKey: kubernetes.io/hostname
|
|
||||||
tolerations:
|
|
||||||
- key: node-role.kubernetes.io/control-plane
|
|
||||||
operator: Exists
|
|
||||||
effect: NoSchedule
|
|
||||||
bootstrap:
|
bootstrap:
|
||||||
initdb:
|
initdb:
|
||||||
database: memory
|
database: memory
|
||||||
@@ -34,25 +18,19 @@ spec:
|
|||||||
encoding: UTF8
|
encoding: UTF8
|
||||||
localeCollate: C
|
localeCollate: C
|
||||||
localeCType: C
|
localeCType: C
|
||||||
monitoring:
|
postInitApplicationSQL:
|
||||||
enabled: true
|
- "CREATE EXTENSION vector;"
|
||||||
podMonitorTemplate:
|
enableSuperuserAccess: false
|
||||||
spec:
|
resources:
|
||||||
interval: 30s
|
requests: { memory: "512Mi", cpu: "250m" }
|
||||||
scrapeTimeout: 10s
|
limits: { memory: "2Gi", cpu: "1" }
|
||||||
---
|
storage:
|
||||||
# Database resource with pgvector extension (declarative, git-managed).
|
size: 20Gi
|
||||||
# CNPG 1.30.0+ supports this via spec.extensions on the Database CRD.
|
storageClass: longhorn
|
||||||
# Ensures pgvector is installed and available for HNSW indexing.
|
affinity:
|
||||||
apiVersion: postgresql.cnpg.io/v1
|
podAntiAffinityType: preferred
|
||||||
kind: Database
|
topologyKey: kubernetes.io/hostname
|
||||||
metadata:
|
tolerations:
|
||||||
name: memory
|
- key: node-role.kubernetes.io/control-plane
|
||||||
namespace: poimen
|
operator: Exists
|
||||||
spec:
|
effect: NoSchedule
|
||||||
cluster:
|
|
||||||
name: memory-db
|
|
||||||
owner: app
|
|
||||||
extensions:
|
|
||||||
- name: vector
|
|
||||||
ensure: present
|
|
||||||
|
|||||||
Reference in New Issue
Block a user