sql >> Base de Datos >  >> RDS >> PostgreSQL

kubernetes timescaledb statefulset:Cambios perdidos en la recreación del pod

El problema era que había una declaración de VOLUMEN para /var/lib/postgresql/data en postgres:9.6 Dockerfile que provocó un montaje adicional en el contenedor. Ese montaje fue efímero cuando teníamos el montaje de volumen en /var/lib/postgresql . Pero no pudimos montar el volumen de AKS en /var/lib/postgresql/data porque el volumen venía con lost+found subdirectorio y Postgres espera un directorio vacío para almacenar archivos DB.

La solución fue montar el volumen en /var/lib/postgresql/data y dígale a Postgres que use un subdirectorio debajo de /var/lib/postgresql/data para almacenar archivos con PGDATA var. env.

A continuación se muestran las partes relevantes de la corrección en la configuración del conjunto de estado de k8s

env:
- name: PGDATA
  value: "/var/lib/postgresql/data/dbfiles"        
...
volumeMounts:
- mountPath: /var/lib/postgresql/data
  name: timescaledata