Я пытаюсь открыть приложение в своем кластере, создав тип службы в качестве балансировщика нагрузки. Причина в том, что я хочу, чтобы у этого приложения был отдельный канал связи. Имею кластер КОПС. Я хочу использовать балансировщик сетевой нагрузки AWS, чтобы он получал статический IP-адрес. Когда я создаю службу с портом 80, сопоставленным с портом, на котором работает приложение, все работает, но когда я пытаюсь добавить порт 443, он просто истекает.
Вот конфигурация, которая работает -
apiVersion: v1
metadata:
name: abc
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
labels:
app: abc
spec:
externalTrafficPolicy: Local
ports:
- name: http
port: 80
protocol: TCP
targetPort: 9050
selector:
app: abc
type: LoadBalancer
Как только я добавлю поддержку TLS в файл конфигурации и разверну ее. Время ожидания соединения с балансировщиком нагрузки истекло. Как добавить поддержку TLS в балансировщик нагрузки? Я хочу сделать это через сервис, а не через ингресс. Это конфигурация, которая у меня не работает, и когда я вставляю ссылку в браузер, время ожидания истекает.
kind: Service
apiVersion: v1
metadata:
name: abc
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "https"
service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout: "60"
service.beta.kubernetes.io/aws-load-balancer-ssl-cert: xxxxx
labels:
app: abc
spec:
externalTrafficPolicy: Local
ports:
- name: http
port: 443
protocol: TCP
targetPort: 9050
selector:
app: abc
type: LoadBalancer