zagretdinov-d microservices repository
Поднимаю кластер kubernetes через terraform и разворачиваю приложение
Проверяю приложение:
Настроим соответствующим образом Service UI и проверяю
Недостатки LoadBalancer
Нельзя управлять с помощью http URI (L7-балансировщика)
Используются только облачные балансировщики (AWS, GCP)
Нет гибких правил работы с трафиком
Создадим Ingress для сервиса UI применяю конфиг и проверяю.
Теперь давайте защитим наш сервис с помощью TLS Для начала вспомним IngressIP
Теперь настроим Ingress на прием только HTTPS траффика, применяю, пересоздаю.
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ui
annotations:
kubernetes.io/ingress.allow-http: "false"
spec:
tls:
- secretName: ui-ingress
backend:
serviceName: ui
servicePort: 9292
$ kubectl apply -f ui-ingress.yml -n dev
$ kubectl delete ingress ui -n dev
$ kubectl apply -f ui-ingress.yml -n dev
Проверяю
Создаваемый объект Secret в виде Kubernetes-манифеста описывается по ссылке https://kubernetes.io/docs/concepts/configuration/secret/#tls-secrets
Cоздаю диск PersitentVolume в ya.cloud
yc compute disk create \
--name k8s \
--zone ru-central1-a \
--size 4 \
--description "disk for k8s"
Создаю и собираю необходимые файлы конфигурации.