我有一个在GCP App Engine中运行的Django应用程序,它在Cloud SQL中有自己的数据库。我需要连接到具有静态公共IP地址的私人服务器中的外部Microsoft Mysql服务器,以查阅我需要的一些数据。
我该怎么做?
我怎样才能知道我的 django App Engine GCP 的公共地址,以便从我的私有Microsoft SQL Server 进行访问?可能吗?
我尝试做一些研究,但我只找到了相反问题的解决方案。从外部应用程序连接到云 SQL。
谢谢。
App Engine 没有适用于任何应用的公共或静态 IP。这里提到了这一点:
App Engine 目前不提供将静态 IP 地址映射到应用程序的方法。为了优化最终用户与 App Engine 应用之间的网络路径,不同 ISP 或地理位置的最终用户可能会使用不同的 IP 地址来访问同一 App Engine 应用。DNS 可能会返回不同的 IP 地址,以便随着时间的推移或从不同的网络位置访问 App Engine。
在同一文档中,提到了如何获取App Engine的所有IP范围。此外,这些IP可以随时更改。
#Run
nslookup -q=TXT _cloud-netblocks.googleusercontent.com 8.8.8.8
#For every block obtained run
nslookup -q=TXT netblock-name 8.8.8.8
如果您使用的是 App Engine Flex,并且您认为可以添加虚拟机的公共 IP,那么当您进行新部署时,这些 IP 也会发生变化,或者因为扩展可能会关闭所有虚拟机,并且您将无法控制公共 IP。