← До списку лабораторних по Kubernetes
Повний опис / сценарій лабораторної:
Мета: навчитися виставляти веб сервіс назовні через ingress. Крок 1. Переконатися, що в кластері є ingress контролер. Команда: kubectl get pods -n ingress-nginx Пояснення: якщо його немає, встанови nginx ingress або скористайся managed рішенням. Крок 2. Створити namespace для веб сервісу. Команда: kubectl create namespace web-ingress-lab Пояснення: виділяємо окремий простір для експерименту. Крок 3. Розгорнути deployment з nginx у новому namespace. Команда: kubectl create deployment web --image=nginx -n web-ingress-lab Пояснення: простий веб сервер для тесту. Крок 4. Створити service типу ClusterIP. Команда: kubectl expose deployment web --name=web-svc --port=80 -n web-ingress-lab Пояснення: сервіс буде ціллю для ingress. Крок 5. Написати yaml для ingress ресурсу. Ідея: ingress з host typable.local і шляхом /, який мапиться на web-svc порт 80. Пояснення: це правило маршрутизації http трафіку. Крок 6. Застосувати ingress. Команда: kubectl apply -f web-ingress.yaml Пояснення: ingress контролер створить відповідні правила. Крок 7. Дізнатися зовнішню адресу ingress. Команда: kubectl get ingress -n web-ingress-lab Пояснення: запиши поле address або ip. Крок 8. Прописати запис у hosts на локальній машині. Дія: додай рядок типу 1.2.3.4 typable.local у файл hosts. Пояснення: так ти зможеш звертатися до сервісу по доменному імені. Крок 9. Перевірити доступ. Команда: curl http://typable.local Пояснення: має повернути стартову сторінку nginx. Крок 10. Міні звіт. Завдання: опиши, чим ingress краще за nodeport для веб сервісів.