👁 Иногда в проде что-то идёт не так: Pod живой, но приложение внутри ведёт себя странно. Проблема — контейнер не содержит инструментов для дебага. Добавлять их в Dockerfile — не по-девопсовски. Вот тут и помогают ephemeral containers.
Ephemeral контейнеры — это временные контейнеры, которые можно «впрыснуть» в работающий Pod для диагностики. Они не участвуют в основном процессе Pod'а и не перезапускаются.
📝 Пример — добавляем контейнер с bash и net-tools:
kubectl debug -it pod/my-pod \ --image=busybox \ --target=app-container \ --share-processes \ -- bash
📌Важно:
--targetуказывает, в какой контейнер ты хочешь попасть по PID namespace--share-processesпозволяет видеть процессы основного контейнера- Ephemeral контейнер не влияет на работу Pod'а и удаляется после завершения
🔎 Используй для:
- анализа сетевых проблем (
netstat,dig,curl) - изучения переменных окружения, монтированных томов
- быстрого запуска
strace,ps,topбез пересборки образа
❗️ Ephemeral containers — удобный способ проникнуть внутрь проблемного Pod'а без даунтайма и пересборки. Незаменимый инструмент в арсенале SRE/DevOps-инженера.
tags: #k8s #troubleshooting #полезно
❤️ @recura_tech



