кусочек документации
https://kubernetes.io/docs/concepts/configuration/configmap/#mounted-configmaps-are-updated-automatically
вот есть ConfigMap
в нем data
- я правильно понимаю что за то чтобы эту data сериализовать в файлы отвечает kubelet?
- а куда именно они копирует содержимое ConfigMap на диск ноды? или в памяти держит?
- и как именно обеспечивается проброс этих файлов внутрь контейнера для CRI? получается есть какой то способ у CRI делать динамические volumes? или что?
- и последний вопрос, кто нибудь помнит с какой версии стратегия апдейта configmap сменилась с cache на watch ? и ведет ли watch к уменьшению времени появления новых данных внутри контейнера?
никто не подскажет по configmap ?
kubelet созадет пути /var/lib/kubelet/pods/3d85bf1a-3b4b-4817-88af-4e34c432d5eb/volume-subpaths/entrypoint-sh/openstack-nova-compute/[file|dir] и дльше маунтит их как файлы/директории при запуске пода.
а как быть с тем что внутри пода это выглядит как набор симлинков? эти симлинки тоже kubelet создает? при watch конфигов? drwxr-sr-x 2 root clickhou 4096 Apr 6 08:11 ..2022_04_06_08_11_43.115740770 lrwxrwxrwx 1 root root 31 Apr 6 08:11 ..data -> ..2022_04_06_08_11_43.115740770 lrwxrwxrwx 1 root root 34 Apr 6 08:11 01-clickhouse-01-listen.xml -> ..data/01-clickhouse-01-listen.xml lrwxrwxrwx 1 root root 34 Apr 6 08:11 01-clickhouse-02-logger.xml -> ..data/01-clickhouse-02-logger.xml lrwxrwxrwx 1 root root 37 Apr 6 08:11 01-clickhouse-03-query_log.xml -> ..data/01-clickhouse-03-query_log.xml lrwxrwxrwx 1 root root 36 Apr 6 08:11 01-clickhouse-04-part_log.xml -> ..data/01-clickhouse-04-part_log.xml lrwxrwxrwx 1 root root 21 Apr 6 08:11 ch-backup.yaml -> ..data/ch-backup.yaml lrwxrwxrwx 1 root root 40 Apr 6 08:11 chop-generated-remote_servers.xml -> ..data/chop-generated-remote_servers.xml lrwxrwxrwx 1 root root 18 Apr 6 08:11 dhparam.pem -> ..data/dhparam.pem lrwxrwxrwx 1 root root 15 Apr 6 08:11 node.crt -> ..data/node.crt lrwxrwxrwx 1 root root 15 Apr 6 08:11 node.csr -> ..data/node.csr lrwxrwxrwx 1 root root 15 Apr 6 08:11 node.key -> ..data/node.key lrwxrwxrwx 1 root root 30 Apr 6 08:11 partition_size_drop.xml -> ..data/partition_size_drop.xml lrwxrwxrwx 1 root root 19 Apr 6 08:11 settings.xml -> ..data/settings.xml lrwxrwxrwx 1 root root 18 Apr 6 08:11 storage.xml -> ..data/storage.xml
2022_04_06_08_11_43.115740770 время монтирования нового конфигмапа. далее симлинк меняется для атомарности обновления. все просто. чего тут непонятного может быть то ?
тут же вопрос кто именно это делает.
Кто ? CRI монтирует в контейнер новый каталог. кублет меняет симлинк. а тебе зачем знать кто это делает ?
Теперь чисто из спортивного интереса.
ну как то непонятно, симлинки делаются kubelet'ом? ну да, перемонтировать в другое место без рестарта нельзя ну вроде чуть лучше стало понятно и где сами файлы лежат
файлы лежат же на хосте. В cri это все волумами подключается, реализация волумов у cri через mount -o bind. Вроде как-то так
чтобы точно проверить глянь на хосте findmnt и потом глянь crictl inspect на контейнере нужном
Обсуждают сегодня