NFS монтируется на узлах Ubuntu в Kubernetes
Если я запускаю Kubernetes на кластере машин Ubuntu, как NFS работает внутри Kubernetes, когда он монтируется на каждом из узлов Ubuntu?
Мой пример использования баз данных и RabbitMQ - использовать хранилище, доступное на узлах, на которых работают модули.
Монтировать ли NFS как обычный том при развертывании, или я должен использовать NFS напрямую с постоянного тома и таким образом не монтировать NFS на узлах Ubuntu? Как NFS работает, чтобы различать запущенные экземпляры, разделены ли требования к объему на основе пакетов / контейнеров?
1 ответ
Для вас, чтобы использовать NFS
с Kubernetes вы должны создать PV
а затем использовать его через PVC
,
Ваш PV
ы решат, какие NFS
узел они поддерживаются. Так как именно здесь вы упомянете адрес сервера. Посмотрите на пример ниже.
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv0003
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Recycle
storageClassName: slow
nfs:
path: /tmp
server: 172.17.0.2
Теперь, если вы хотите, чтобы некоторые модули использовали хранилище из определенных PV
Вы можете добавить поле в PVC
называется volumeName
который в основном спрашивает PVC
быть связанным с этим PV
,
Обычно люди настраивают выделенные узлы для хранения, поскольку они не хотят терять данные. Хранение данных на узлах может быть рискованным. Так как, если узел выходит из строя, вы теряете все свои данные на этом узле, если только это не выполняется где-либо.
Узнайте больше о постоянных томах здесь.