монтирование каталога для стручков в kubernetes - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть приложение, которое обращается к паре файлов из каталога. Я прошел через объемы kubernetes и постоянные объемы и требования объема. это многоузловой кластер kubernetes. у нас есть какое-либо прямое решение, которое может быть использовано без внешнего хранилища, такого как сервер nfs и т. д.?

У меня есть виртуальный сервер, с которого я выполняю свои команды kubernetes. Я новичок в kubernetes, поэтому, пожалуйста, помогите мне с этим.

Также я смотрел на локальный постоянный том. Есть ли ссылка, которую я могу пройти для примера. Я смотрю на местных https://kubernetes.io/docs/concepts/storage/volumes/#local

Но пример не объясняет, что ниже находится под nodeAffinity:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: example-pv
spec:
  capacity:
    storage: 100Gi
  # volumeMode field requires BlockVolume Alpha feature gate to be enabled.
  volumeMode: Filesystem
  accessModes:
  - ReadWriteOnce
  persistentVolumeReclaimPolicy: Delete
  storageClassName: local-storage
  local:
    path: /mnt/disks/ssd1
  nodeAffinity:
    required:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - example-node

1 Ответ

0 голосов
/ 25 апреля 2018

Это зависит от вашего варианта использования: если файлы, которыми вы хотите поделиться в кластере, имеют размер более нескольких мегабайт, вам понадобится какой-то оператор хранилища. Локальное хранилище, вероятно, не то, что вы ищете.


Для небольших файлов (конфиги, ключи, сценарии инициализации)

Если файлы небольшие, такие как файлы конфигурации или ssh-ключи или аналогичные, вы можете использовать конфигурационную карту kubernetes (или секретную). Это позволит вам настроить несколько файлов или каталогов с несколькими файлами. Оформление документации


Для больших файлов (общие данные, графика, двоичные файлы)

Если вы хотите поделиться несколькими сотнями мегабайт или гигабайт файлов, вам нужен поставщик хранилища для вашего кластера.

Если вы используете облачного провайдера, такого как Google, AWS или Azure, это должно быть просто, вам нужно создать постоянный диск с вашим облачным провайдером и скопировать необходимые данные на диск. Как только это будет сделано, просто следуйте руководству для соответствующих поставщиков облачных услуг:

(@ justcompile отметил, что AWS не поддерживает несколько монтируемых только для чтения подключений к экземплярам, ​​мне не удалось найти аналогичную информацию для Azure)

Если, однако, вы используете свой собственный кластер kubernetes на «baremetal», вам придется настроить либо NFS-сервер, либо Ceph cluster и, вероятно, использовать что-то вроде rook сверху.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...