允许来自 Azure K8S 的 AWS RDS 连接 pods

Allow AWS RDS connection from an Azure K8S pods

我们目前正在从 AWS ECS 迁移到 Azure Kubernetes 服务。我们的第一步是先迁移应用程序代码,暂时将数据库保留在 AWS RDS 中。我们的 RDS 实例受安全组保护,该安全组仅允许来自一组 IP 地址的连接。

连接RDS实例时,数据库看到的是什么IP地址?如何配置 RDS 以允许来自 kubernetes pod 的连接?

如果您有一个 Azure 负载均衡器(因此任何类型为 LoadBalancer 的 kubernetes 服务)连接到工作节点 - 它们将使用连接到负载均衡器的第一个 IP。如果不是,他们将使用 public IP 附加到他们 运行 上的虚拟机。如果 VM 没有 public IP(AKS 的默认 IP),它们将使用可能随时更改的虚无 IP,您无法控制它。

所以只需在 AKS 中创建一个类型为 LoadBalancer 的服务,找到其外部 IP 地址并将其列入白名单即可。