Когда мы используем kubectl describe pods <pod_name>
выводится большой объем информации, включая узел, на котором работает сервер, и различную информацию о модуле, включая идентификаторы контейнеров и изображения.
Если мы подключимся по ssh к узлу, мы сможем ковыряться /sys/fs/cgroup/memory/kubepods
и найдите такие каталоги, как /sys/fs/cgroup/memory/kubepods/pod6cbf8d09-2a76-11e9-9f3e-42010a80003b
, в которых есть подкаталоги, похожие на хэши. Если мы рассмотрим процессы, перечисленные в cgroup.procs
псевдофайл внутри этих подкаталогов, мы можем сделать вывод, что эти подкаталоги соответствуют контейнерам Docker, запущенным Kubernetes.
К сожалению, человек должен вручную исследовать cgroup.procs
file, чтобы определить, какому контейнеру соответствует каждый каталог.
Есть ли способ получить имена пути к подкаталогу в /sys/fs/cgroup/memory/kubepods
который соответствует конкретному контейнеру внутри модуля?
Я бы не предлагал переименовывать подкаталоги контейнеров как хэши контейнеров. Если вы переименуете эти подкаталоги, это может привести к поломке файловой системы.
Кроме того, / sys содержит информацию и конфигурации, предоставляемые ядром. Изменение любой информации или конфигураций в этом каталоге может привести к непреднамеренному поведению внутри узла.