当前位置: 首页 > 知识库问答 >
问题:

如何将aws nlb与SSL的nginx入口控制器一起使用

谭翰海
2023-03-14

我已将AWS ACM提供的SSL证书附加到NLB。NLB将请求转发到nginx入口。Nginx给我以下错误。普通HTTP请求已发送到HTTPS端口。我在nginx入口中设置了以下注释。

  • nginx.ingress.kubernetes.io/force-ssl-redirect: false
  • nginx.ingress.kubernetes.io/ssl-redirect: false

我在运行在NLB后面的nginx入口服务中设置了以下注释。

  • 服务。贝塔。库伯内特斯。io/aws负载平衡器后端协议:http

共有1个答案

干弘深
2023-03-14

对于此错误:

普通HTTP请求已发送到HTTPS端口

更改Nginx服务中的端口配置,例如,HTTPS部分中的目标端口应该是http而不是HTTPS

ports:
  - name: https
    **targetPort: http**

此处注释仅供参考

service.beta.kubernetes.io/aws-load-balancer-backend-protocol: tcp
    service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout: "60"
    service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled: "true"
    service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:ap-southeast-1:xxxxxxx:certificate/8991ftt8-69e0-4e7d-1164-yy0aae19da90v
    service.beta.kubernetes.io/aws-load-balancer-type: nlb
 类似资料:
  • 我有一个JavaSpring Boot Application,我已经将服务器配置为在SSL上运行,这是强制性的。 我已经为我的域创建了一个证书从LetsEncrypt证书,并通过运行为keystore创建了一个p12文件 我想用Ingress Nginx控制器在Kubernetes上公开它,所以我创建了一个秘密 我已经部署了应用程序,可以看到部署文件,当我将本地8443端口转发到其服务的8443

  • 我正在AWS EKS上设置NGINX入口控制器。 我浏览了k8s入口资源,它非常有助于理解我们将LB端口映射到k8s服务端口,例如file Def。我安装了nginx控制器,直到必要的步骤。然后教程指示我创建一个入口资源。 我错过了什么?

  • 我已经部署了一个Linkerd服务网格,我的库伯内特斯集群配置了Nginx入口控制器作为DaemonSet,所有入口也可以在Linkerd上正常工作。最近,我添加了一个流量拆分功能来运行我的蓝色/绿色设置,我可以使用单独的入口资源访问这些服务。我创建了一个顶点Web服务,如下所述。如果我在内部联系到您此服务,它会完美运行。我创建了另一个入口资源,我无法在集群之外测试蓝色/绿色功能。我想提一下,我已

  • 更新:不幸的是,我没能用自定义TrustStore做到这一点。我用installCert.java安装了证书。

  • 操作系统:RHEL7|k8s版本:1.12/13|kubes祈祷|裸机 我部署了一个标准的kubespray裸机集群,我正在尝试了解部署nginx ingress controller的最简单推荐方法是什么,它将允许我部署简单的服务。没有提供负载平衡器。我希望我的主公共IP作为我的服务的endpoint。 Github k8s ingress nginx建议将节点端口服务作为“强制”步骤,这似乎不

  • 我在RedHat EC2实例上安装了Minikube v1.3.1以进行一些测试。 由于nginx-ingress-控制器默认使用的端口已经在使用中,我正在尝试在部署中更改它们,但没有结果。有人能建议如何做吗? 如何知道端口已在使用? 当我使用命令kubectl-n kube system get deployment | grep nginx列出系统吊舱时,我得到: nginx入口控制器0/1