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

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

Kubernetes Лабораторна 18: Sidecar для логування

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

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

Тема: Multi container pod і sidecar

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

Мета: навчитися створювати pod з кількома контейнерами і спільним томом.



Крок 1. Створити configmap з простим запущеним скриптом.

Ідея: скрипт у основному контейнері буде писати логові повідомлення у файл.

Пояснення: це наш додаток, що генерує логи.



Крок 2. Написати yaml для pod з двома контейнерами.

Опис: перший контейнер app пише логи в /var/log/app.log, другий sidecar періодично читає цей файл і виводить в stdout.

Пояснення: обидва контейнери монтують спільний том типу emptyDir.



Крок 3. Застосувати pod.

Команда: kubectl apply -f pod-sidecar.yaml

Пояснення: створюється pod з двома контейнерами.



Крок 4. Перевірити pod і контейнери.

Команда: kubectl get pod sidecar-demo

Пояснення: переконайся, що статус running і кількість контейнерів 2 2.



Крок 5. Подивитися логи основного контейнера.

Команда: kubectl logs sidecar-demo -c app

Пояснення: має бути небагато виводу, або взагалі нічого, якщо він пише лише у файл.



Крок 6. Подивитися логи sidecar.

Команда: kubectl logs sidecar-demo -c sidecar

Пояснення: sidecar має виводити в stdout ті самі записи, що й у файлі.



Крок 7. Зайти в pod і перевірити спільний том.

Команда: kubectl exec -it sidecar-demo -c app -- sh

Пояснення: перевір вміст каталогу з логами і файл app.log.



Крок 8. Обговорити варіанти sidecar.

Пояснення: подумай, як ти би використовував sidecar для логування, проксі або оновлення конфігурації.



Крок 9. Видалити pod.

Команда: kubectl delete pod sidecar-demo

Пояснення: очищення після експерименту.



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

Завдання: опиши, чим multi container pod відрізняється від двох окремих pod з точки зору життєвого циклу.