Итак, как правильно смонтировать том postgresql с помощью Aws EBS
Вы на правильном пути ...
Ошибка, которую вы получаете, заключается в том, что вы хотите использовать корневую папку подключенного тома /
в качестве postgresql. Data dir и postgresql жалуются, что не рекомендуется делать это, поскольку он не пустой и содержит уже некоторые данные внутри (а именно lost+found
каталог).
Гораздо лучше найти каталог данных в отдельной пустой подпапке (например, /postgres
) и дать postgresql чистый лист при создании своей файловой структуры. Вы не получили то же самое на мини-кубе, так как вы, скорее всего, смонтировали папку хоста, в которой ничего не было (было пусто) и не вызывали такую жалобу.
Для этого вам понадобится изначально пустая subPath вашего тома (например, пустая подпапка /postgres
на вашем PV), смонтированная в соответствующую точку монтирования (/var/lib/posgresql/data
) в вашем модуле. Обратите внимание, что вы можете называть subPath и конечную папку точки монтирования одним и тем же именем, здесь они отличаются, как в примере, где папка test-db-volume/postgres
будет монтироваться на модуле в папку /var/lib/postgresql/data
:
...
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: test-db-volume
subPath: postgres
...