我是云开发的新手,在找出将App Engine、GCE和cloud SQL捆绑在一起的最佳方法时遇到了一些问题。
我有一个运行Django的App Engine应用程序,它作为GCE实例上发生的进程的用户界面。用户请求启动一个任务,使用在端口80上运行的GCE启动一个GCE实例,RESTful引擎向新启动的GCE实例发送REST请求以启动特定任务。
据我所知,App Engine实例正在云SQL实例中存储任务信息。我的愿望是让GCE实例直接与Cloud SQL实例通信,这样它们就可以更新数据库,并为App Engine提供一个查看任务状态的窗口(通过更新数据库行)。
我遇到的问题是,据我所知,文档只指定了一种连接到SQL实例的方法,即向GCE实例的IP地址授予网络访问权限。这是不可取的,因为我将频繁地启动和销毁GCE实例,并且IP地址可能会多次更改。
话虽如此,我有两个问题:
1)有没有办法避免上述单独验证每个GCE实例的问题,如果没有,识别每个GCE实例的最佳方法是什么?
2)我这样做对吗?正如我所说的,我是云开发的新手,在这里我完全猜测这些不同的服务应该如何交互。
发布于 2014-11-20 01:57:59
对于您需要添加到云SQL中授权网络的IP,如果它是一个正在启动的单实例,您可以使用there's a charge,但可以使用static IP address。您还可以使用Instances:get接口获取新实例的IP地址,销毁实例时可以将其从授权网络中移除。您可以使用Cloud SQL API更新网络。
https://stackoverflow.com/questions/27003757
复制相似问题