Монтировать PVC в cronjob и statefulset

У меня есть две службы, к которым я хотел бы получить доступ к PersistentVolumeClaim.

Один из них — это StatefulSet, который считывает данные с тома (и предоставляет контент конечным пользователям), другой — это Kubernetes CronJob, который периодически обновляет содержимое данных, полученных с помощью PVC.

Прямо сейчас я сталкиваюсь с проблемой, что мой PVC поддерживается PV (не NFS, Ceph или подобным), и одна служба захватывает том, из-за чего другая не запускается.

Как я могу сделать так, чтобы обе эти службы имели доступ к тому?

И есть ли способ добавить CronJob в мой StatefulSet так же, как я добавляю больше контейнеров?


person Darrien    schedule 06.11.2018    source источник


Ответы (1)


Вы проверили accessModes своих pv и pvc?

Если вы хотите, чтобы более одного модуля могли монтировать том, вам нужно использовать ReadOnlyMany или ReadWriteMany.

Документы Persistent Volume

Что касается вашего второго вопроса, нет, нет способа «добавить CronJob в [a] StatefulSet». Это отдельные и разные объекты API.

person switchboard.op    schedule 06.11.2018
comment
Спасибо друг! В этом случае мне просто нужно сделать так, чтобы мой CronJob работал в том же модуле, что и мой StatefulSet, верно? - person Darrien; 07.11.2018
comment
Обновление - в итоге я просто взломал его и удалил свой CronJob. Затем добавьте его в качестве контейнера в мой StatefulSet, чтобы теперь он работал как интервал. Мой PV имеет только режимы доступа ReadWriteOnce. Yay бета-функции. Спасибо за помощь друг :) - person Darrien; 08.11.2018