0

我正在使用 kops 部署我的 kubernetes 集群。在我的集群中,我有一个简单的 Nginx 部署、一个服务和一个入口。它配置了路由 53(不使用外部 DNS,在路由 53 中手动创建 A 记录,指向经典负载均衡器(由 kops 生成))。

我可以访问域www.XXXX.com以及其上的子域,但是上面没有 SSL 证书。

我知道我们可以在负载均衡器上应用 SSL。所以,进入 ACM,创建了一个证书,当我尝试应用它时,我看到 80 和 443 正在服务 TCP 流量,这就是为什么我不能添加这两个端口服务 HTTP 和 HTTPS 与证书(如图所示) 在此处输入图像描述

如果我删除两个 TCP 侦听器并添加 HTTP 和 HTTPS 侦听器,我可以,但我的应用程序无法在域上访问。

如何在此负载均衡器上配置 ACM。这甚至是为部署在 Kubernetes 上的应用程序添加 https 的正确方法吗?

我知道https://kubernetes.github.io/ingress-nginx/user-guide/tls/,但是如果有办法使用上述方法来做到这一点,我会更喜欢。


更新 1:

当我描述我的 nginx pod 时,我看到端口如下:

Ports:         80/TCP, 443/TCP

那不应该

Ports:         80/HTTP, 443/HTTPS

?

4

1 回答 1

0

原来我错误地部署了入口控制器。

文档清楚地说明 在应用之前下载和更新文件中的值我错过了更新部分。

您必须更新 CIDRproxy-real-ip-cidrservice.beta.kubernetes.io/aws-load-balancer-ssl-cert

从字面上看,这就是您所需要的。

确保在应用此 YAML 文件之前创建证书。

并在创建证书时添加

DOMAIN.com
*.DOMAIN.com

两者都使它工作。

于 2020-06-22T14:50:38.570 回答