При развертывании рабочей нагрузки, имеющей VOLUME
в файле Dockerfile, этот том не может быть сопоставлен с постоянным томом (PV / PVC) в Kubernetes.
Фактически, если к этой рабочей нагрузке не присоединен том Kubernetes, контейнер демона докеров временно создаст том докера при запуске контейнера (драйвер, введите: local
). Kubernetes об этом не узнает. См .: являются ли VOLUME в Dockerfile постоянными в kubernetes. Этот том докера будет уничтожен при удалении или повторном развертывании модуля.
Безусловно, хорошая практика - использовать том kubernetes, даже временные тома ( или общие эфемерные тома ... все еще в альфа в 1.19)
Q: Как составить список модулей / контейнеров, использующих такие локальные тома?
Это действительно важно, поскольку перезапуск рабочей нагрузки / развертывания / набора с отслеживанием состояния приведет к сбою (потере эфемерного тома).
Pod
(например, из-за перепланирования) не должен влиять на рабочую нагрузку. Если ваша рабочая нагрузка предполагает, что данные не будут потеряны, вам следует использовать ресурсы, о которых знает Kubernetes (PVC
иPV
). Есть ли какая-то конкретная причина, по которой вам нужно знать, какиеPods
имеют тома, не известные Kubernetes. Что бы это изменило? - person Dawid Kruk   schedule 01.12.2020