我使用kops在AWS中设置了一个kubernetes群集;现在,我想设置一个NGINX INGRESS控制器,并终止具有AWS托管证书的TLS。我理解的拓扑是AWS ELB面临互联网并终止了TLS,未经加密的进口服务,然后进行派遣。
我已经从https://github.com/kubernetes/ingress/tree/master/master/examples/aws/nginx 部署了入口控制器
除了我使用https://github.com/kubernetes/ingress/issues/71上所述的注释。
我将路由添加到Route53,然后将浏览器打开到HTTPS地址,并从NGINX获得400响应,并带有消息" Pline HTTP请求已发送到HTTPS端口"
我在做什么错?
这是我的入口资源:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
name: dispatcher
namespace: test
spec:
rules:
- host: REDACTED
http:
paths:
- backend:
serviceName: REDACTED
servicePort: 80
path: /api/v0
我设法在此处完成了很大的使用:添加了指向我的证书ARN的service.beta.kubernetes.io/aws-load-balancer-ssl-cert
注释,并将两个端口的targetPort
设置为80
https://github.com/kubernetes/ingress/tree/master/master/controllers/nginx#https
tl; dr
1(在您的命名空间中使用您的SSL公共/私人创建一个秘密
2(将TLS块添加到入口(引用秘密(