我们有一个静态网站托管在 AWS 上,用于在 Godaddy 注册的域。我们主要将 route53 用于静态网站和 office 365 的所有 DNS 解析。我们最近开发了一个托管在 Azure Kubernetes 服务上的小应用程序。我已经在 AWS 和 DNS 区域上相应地更新了 route53,以使用子域 xxx.abc.com 指向 AKS 私有 IP。该应用程序只能通过 HTTP 访问。我们有一个通配符证书,可以将证书用于所有子域。我一直在探索,似乎没有在 53 号公路上使用此 TLS 证书的选项,因为它只进行 DNS 解析。
我对 Azure 服务还很陌生。有人可以就如何使用证书保护此端点提出建议吗?
我尝试在互联网上搜索,似乎入口控制器是唯一的出路(下面的参考链接)。我正在尝试看看是否还有其他方法。 https://learn.microsoft.com/en-us/azure/aks/ingress-tls?tabs=azure-cli https://snyk.io/blog/setting-up-ssl-tls-for-kubernetes-ingress/
的确,Route53只是一个DNS服务,做地址转换,与ssl证书无关。
根据您的需要,有几个组件需要组合在一起:
在 Kubernetes 中,ingress controller 基本上是一个负载均衡器,将外部流量路由到 pod。
在 AKS 上,可以并建议将应用程序网关(默认的 Azure 负载均衡器)配置为入口控制器。
您可能正在寻找的是AGIC(应用程序网关入口控制器)。这篇文章关注的是配置 AGIC 本身,还不是 ssl(一步一步)
然后你可以搜索到 configure a SSL cert the AGIC,我建议将私钥/证书存储到 KeyVault
您可以直接在 kubernetes 工作节点上管理和配置入口控制器和证书(较少依赖 Azure 本身),但是您需要在公共 IP 上公开工作节点,管理它们的固定 IP 地址,......或者有一个单独的集群前面的负载均衡服务器。使用 AGIC 被认为更安全