Как стать автором
Обновить

Комментарии 2

хм, и как бороться с таким?

Есть несколько способов:

1) Использовать PodTolerationRestriction admission controller. Для этого нужно поправить манифест KubeAPI и добавить флаг --enable-admission-plugins. Дальше для нужного неймспейса присваиваем annotations, которые подскажут admission controller из какого неймспейса нельзя будет зашедулить Pods на Master Node.

scheduler.alpha.kubernetes.io/tolerationsWhitelist: '[{"operator": "Exists", "effect": "NoExecute", "tolerationSeconds": 300, "key": "node.kubernetes.io/not-ready"},{"operator": "Exists", "effect": "NoExecute", "tolerationSeconds": 300, "key": "node.kubernetes.io/unreachable"}]'

2) Запретить использование hostPath. Тут как вариант можно использовать всякие Policy engine, типа Kyverno или OPA Gatekeeper

3) Использовать prevention, например AppArmor. Можно запретить чтение определенных файлов или исполнение определенных процессов.

4) Не запускать контейнер из под рута. Файл ca.key доступен только root пользователю

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории