我们想使用一个应用引擎灵活的过程来更新Google Kubernetes引擎上的ElasticSearch索引。我们需要通过一个http地址连接到ElasticSearch。推荐的方法是什么?我们不想将群集公开给外部网络,因为我们前面没有身份验证。
我见过这个SO post,但自问题/答案以来的两年中,k8和AE都发生了很大变化。
感谢您的帮助!
答案 0 :(得分:2)
您链接到的帖子与App Engine Standard有关。 App Engine Flex建立在Google Compute Engine虚拟机和Google Kubernetes Engine群集使用的同一Google Cloud网络之上。只要将App Engine flex应用程序放入与Google Kubernetes Engine群集相同的VPC中,您就应该能够使用内部网络在它们之间进行通信。
另一方面,要将Kubernetes服务公开给在群集外部运行的任何内容,则需要修改该服务以进行弹性搜索,因为默认情况下,只能从群集内部访问Kubernetes服务(由于服务IP是通过IPTables Magic分配和访问的)。您需要“公开”服务,而不是通过外部负载均衡器将其公开给Internet,而是使用内部负载均衡器将其公开给VPC。参见https://cloud.google.com/kubernetes-engine/docs/how-to/internal-load-balancing。
答案 1 :(得分:0)
除了罗伯特(Robert)的答案外,请确保应用程序引擎和GKE在同一地区, 因为内部负载均衡器无法在其他地区使用。