Files
school-dev-k8s/practice/7.network-abstractions/2.ingress-and-services
2021-10-01 18:37:19 +03:00
..
2021-09-27 16:59:35 +03:00
2021-09-28 15:06:18 +05:00
2021-09-27 16:59:35 +03:00
2021-09-27 16:59:35 +03:00

Смотрим на Service'ы Kubernetes'а

  1. Деплоим "основное" приложение
cd ~/school-dev-k8s/practice/7.network-abstractions/2.ingress-and-services/

kubectl apply -f app
  1. Запустим тестовое приложение, с которого мы будем обращаться к основному:
kubectl run test --image=amouat/network-utils -it bash

exit
  1. Создаем Service типа ClusterIP:
kubectl apply -f clusterip.yaml
  1. Убедимся, что Service работает. Узнаем его IP, зайдем внутрь нашего тестового Pod'а и обратимся к основному приложению, используя имя сервиса и IP:
kubectl get svc
kubectl exec test -it bash

curl <ip-адрес сервиса>
curl my-service

exit

Важно! На Service'ы типа NodePort и LoadBalancer просто смотрим. Их в кластере не создаем!

  1. Смотрим как выглядят Service'ы типа Nodeport и LoadBalancer:
cat nodeport.yaml
cat loadbalancer.yaml
  1. Подчищаем за собой:
kubectl delete svc my-service-lb my-service-np

Разбираемся с Ingress'ами

  1. Создадим Ingress, предварительно поправив плейсхолдер:
vim host-ingress.yaml

kubectl apply -f host-ingress.yaml
kubectl get ing
  1. Попробуем покурлить:
curl my.s<свой номер логина>.mcs.slurm.io

curl notmy.s<свой номер логина>.mcs.slurm.io