amazon-web-services - 如何在 AWS 和 SSL 终止中设置 kubernetes NGINX 入口

标签 amazon-web-services ssl nginx kubernetes elastic-load-balancer

我使用 KOPS 在 AWS 中设置了一个 kubernetes 集群;现在我想设置一个 NGINX 入口 Controller 并使用 AWS 托管证书终止 TLS。我理解的拓扑是 AWS ELB 面向互联网并终止 TLS,将未加密的转发到入口服务,然后进行调度。

我已经从 https://github.com/kubernetes/ingress/tree/master/examples/aws/nginx 部署了入口 Controller

除非我按照 https://github.com/kubernetes/ingress/issues/71 中的说明使用注释添加证书。

我将路由添加到 Route53 并打开浏览器访问 https 地址,并从 NGINX 收到 400 响应消息“普通 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

最佳答案

我设法主要使用此处的入口来完成此操作:https://github.com/kubernetes/kops/tree/master/addons/ingress-nginx除了入口服务,我添加了指向我的证书 ARN 的 service.beta.kubernetes.io/aws-load-balancer-ssl-cert 注释并设置了两者的 targetPort端口到 80

关于amazon-web-services - 如何在 AWS 和 SSL 终止中设置 kubernetes NGINX 入口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44421363/

相关文章:

django - EOF 发生违反协议(protocol) (_ssl.c :1125) on python:3. 8-slim-buster

ssl - 在使用 HTTP 的反向代理后面时 Jetty 安全 session cookie

node.js - AWS Elastic Beanstalk - 用户权限问题

django - Elastic Beanstalk 实例未使用 https 响应

amazon-web-services - 如何在路由 53 上注册 aws elasticsearch 服务

ssl - 在 JBoss AS 7.1.1 上关闭 SSLv3

docker - 您是否尝试将目录挂载到文件上(反之亦然)?

php - Nginx - 将 PHP 视为二进制文件

wordpress nginx ssl 重定向循环

amazon-web-services - Amazon Elasticache 故障转移