Проблемът беше, че имаше декларация VOLUME за /var/lib/postgresql/data
в postgres:9.6
Dockerfile, който причини допълнително монтиране на контейнера. Това монтиране беше краткотрайно, когато имахме монтирането на тома в /var/lib/postgresql
. Но не успяхме да монтираме AKS том към /var/lib/postgresql/data
защото томът дойде с lost+found
поддиректория и Postgres очаква празна директория за съхраняване на DB файлове.
Поправката беше да се монтира том в /var/lib/postgresql/data
и кажете на Postgres да използва поддиректория под /var/lib/postgresql/data
за съхраняване на файлове с PGDATA
env var.
По-долу са съответните части от корекцията в k8s statefulset конфигурация
env:
- name: PGDATA
value: "/var/lib/postgresql/data/dbfiles"
...
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: timescaledata