← До списку лабораторних по Kubernetes
Повний опис / сценарій лабораторної:
Мета: навчитися робити внутрішній сервіс для доступу до подів за стабільним імям. Крок 1. Створити deployment з http echo. Команда: kubectl create deployment http-echo --image=hashicorp/http-echo --port=5678 -- --text="Hello from Kubernetes" Пояснення: додаток відповідає фіксованим текстом на http запроси. Крок 2. Перевірити pod. Команда: kubectl get pods -l app=http-echo Пояснення: переконайся, що pod працює. Крок 3. Створити service типу ClusterIP. Команда: kubectl expose deployment http-echo --name=http-echo-svc --port=80 --target-port=5678 Пояснення: сервіс отримує внутрішню ip і dns імʼя. Крок 4. Перевірити service. Команда: kubectl get service http-echo-svc Пояснення: запиши cluster ip і порт. Крок 5. Створити тимчасовий pod клієнт. Команда: kubectl run curl-client --rm -it --image=radial/busyboxplus:curl --restart=Never -- sh Пояснення: отримаєш shell з утилітою curl. Крок 6. Виконати запит до service. Команда всередині pod: curl http-echo-svc Пояснення: перевіряєш роботу сервісу за dns імям. Крок 7. Перевірити доступ по ip. Команда всередині pod: curl http://<cluster-ip>:80 Пояснення: альтернативний спосіб доступу до того самого сервісу. Крок 8. Вийти з pod клієнта. Команда: exit Пояснення: повертаєшся до локальної консолі. Крок 9. Прибрати resources. Команда: kubectl delete svc http-echo-svc Пояснення: за бажанням можна також видалити deployment. Крок 10. Міні звіт. Завдання: опиши, чому краще ходити на service, а не напряму на pod ip.