【发布时间】:2019-12-14 08:57:48
【问题描述】:
我正在尝试通过将服务类型创建为负载平衡器来公开集群中的应用程序。这样做的原因是我希望这个应用程序有一个单独的沟通渠道。我有一个 KOPS 集群。我想使用 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
【问题讨论】:
标签: amazon-web-services kubernetes kubectl kubernetes-ingress kops