Общий постоянный том Kubernetes между несколькими узлами

В настоящее время я занимаюсь настройкой модулей Kubernetes для проекта на GCP.

Проблема - мне нужно установить постоянный общий том, который будет использоваться несколькими узлами. Мне нужно, чтобы все узлы могли читать с тома, и только один узел должен иметь возможность писать на том. Так что мне нужен совет, как лучше всего этого добиться?

Я проверил документацию Kubernetes и знаю, что GCEPersistentDisks не поддерживает ReadWriteMany, но в любом случае этот режим доступа, я думаю, будет излишним. Что касается ReadOnlyMany, я понимаю, что узлы могут читать из PV, но я не понимаю, как и что на самом деле может изменить PV в этом случае. В настоящее время я лучше всего настраиваю NFS с постоянным диском GCE.

Также решение должно работать в облаке или локально. Любые советы будут оценены :)


person Svetoslav Petrov    schedule 12.06.2019    source источник


Ответы (2)


Согласно официальной документации:

Привязка PVC к PV - это взаимно-однозначное сопоставление.

Том может быть смонтирован только с использованием одного режима доступа за раз, даже если он поддерживает несколько. Например, GCEPersistentDisk может быть смонтирован как ReadWriteOnce одним узлом или ReadOnlyMany несколькими узлами, но не одновременно.

Поэтому я боюсь, что это будет невозможно сделать так, как вы описали.

Однако вы можете попробовать очередь задач

Пожалуйста, дайте мне знать, помогло ли это.

person Wytrzymały Wiktor    schedule 04.07.2019

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

Теперь создайте два развертывания. Один из них описывает модуль с записывающим приложением, и вы гарантируете, что у вас есть одна реплика. Другое развертывание описывает приложение для чтения, и вы можете масштабировать его до любого размера.

person Hiran Chaudhuri    schedule 04.12.2020