← До фільтрів та технологій

← До списку лабораторних по Kubernetes

Kubernetes Лабораторна 31: Тимчасові контейнері для відладки

Технологія: Kubernetes

Номер лабораторної: 31 · Рівень: middle

Тема: Ephemeral контейнері для дебагу

Повний опис / сценарій лабораторної:

Мета: навчитися підключати тимчасовий контейнер до вже працюючого pod для дебагу.



Крок 1. Створити deployment з простим додатком.

Команда: kubectl create deployment debug-demo --image=nginx

Пояснення: це цільовий pod для відладки.



Крок 2. Перевірити pod deployment.

Команда: kubectl get pods -l app=debug-demo

Пояснення: переконайся що pod running.



Крок 3. Увімкнути можливість ephemeral контейнерів якщо потрібно.

Пояснення: у сучасних версіях kubernetes ця функція зазвичай вже доступна.



Крок 4. Додати ephemeral контейнер до pod.

Команда: kubectl debug -it <імя-pod> --image=busybox --target=debug-demo -- sh

Пояснення: створюється тимчасовий контейнер у тому ж pod для дебагу мережі або файлової системи.



Крок 5. Перевірити бачення процесів у pod.

Команда всередині ephemeral контейнера: ps aux

Пояснення: подивись які процеси запущені у поді.



Крок 6. Перевірити мережеві зєднання.

Команди: netstat -tn; wget -qO- http://localhost

Пояснення: перевіряєш доступність сервісу зсередини пода.



Крок 7. Вийти з ephemeral контейнера.

Команда: exit

Пояснення: тимчасовий контейнер буде видалено коли завершиться сесія.



Крок 8. Перевірити опис pod.

Команда: kubectl describe pod <імя-pod>

Пояснення: у секції ephemeral containers видно історію підключень.



Крок 9. Порівняти підхід з exec.

Пояснення: подумай коли краще використовувати ephemeral контейнер замість звичайного exec в основний контейнер.



Крок 10. Міні звіт.

Завдання: опиши сценарії де ephemeral контейнер безпечніший за зміну образу або додавання дебаг інструментів у основний контейнер.