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

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

Kubernetes Лабораторна 63: Sidecar для метрик http

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

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

Тема: Sidecar для метрик http

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

Мета: змоделювати патерн sidecar де окремий контейнер експортує метрики додатка.



Крок 1. Підготувати невеликий веб сервіс.

Пояснення: можна використати nginx або свій образ що віддає html.



Крок 2. Додати у pod sidecar контейнер exporter.

Опис: sidecar читає access логи або статус сервісу та експортує метрики на порт metrics.



Крок 3. Створити спільний том для логів.

Пояснення: основний контейнер пише логи у /var/log/app, sidecar читає їх з цього каталогу.



Крок 4. Написати yaml pod з обома контейнерами.

Пояснення: перевір що volume і volumeMount налаштовані однаково.



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

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

Пояснення: pod має перейти у стан Running.



Крок 6. Створити service для доступу до метрик.

Команда: kubectl expose pod sidecar-demo --name=metrics-svc --port=9100 --target-port=9100

Пояснення: prometheus зможе читати ці метрики.



Крок 7. Перевірити метрики через curl.

Команда: kubectl run curl-m --rm -it --image=radial/busyboxplus:curl --restart=Never -- sh -c "curl metrics-svc:9100/metrics | head"

Пояснення: переконайся що метрики справді доступні.



Крок 8. Згенерувати трохи трафіку на основний сервіс.

Пояснення: зроби декілька http запитів до веб сторінки.



Крок 9. Знову подивитися метрики.

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



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

Завдання: опиши у яких випадках sidecar exporter кращий за node exporter або прямий scrape додатка.