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

Как лучше всего смонтировать внешний каталог в модуле, например:

  1. доступ к каталогу только для чтения
  2. все дерево каталогов доступно в модуле
  3. любое изменение содержимого каталога или создание новых файлов и каталогов в этом каталоге мгновенно отражается в модуле
  4. все реплики модуля отображаются в одном и том же дереве каталогов

Очевидно, что любое решение с ConfigMaps не удовлетворяет условиям 2 и 3.

1 Ответ

0 голосов
/ 07 сентября 2018

Используя configMap-s, можно выполнить все требования (1) - (4), кроме части (3) - изменения в содержимом существующих файлов (путем изменения их configMap-s) будут отражены в модулях (почти) мгновенно но новые файлы или каталоги не будут.

Следующий скрипт - см. здесь - реализует подход.

Обратите внимание:

  • (1) теперь по умолчанию, начиная с 1.9.6 - см. это для обсуждения.
  • Ключом для (2) является использование прогнозируемых объемов .
  • (4) - это готовая функция, как задокументировано здесь , за исключением случаев использования subPath.
  • Использование единой configMap для всех файлов может привести к тому, что "... ОШИБКА: ConfigMap" "недопустима: []: слишком длинная: должна содержать не более 1048576 символов".
  • Использование configMap для файла также имеет ограничение размера ~ 1 МБ для содержимого файла (это ограничение etcd).
...