0

我有以下情况:

  1. 带有弹性hserach的虚拟机
  2. Kubernetes 集群

他们都在同一个项目中,在同一个区域。

我需要从集群中的容器内部访问弹性搜索(es)。es具有外部和内部 IP 的虚拟机,基本上来自集群节点内部gcloud ssh ...,我可以通过内部 IP 卷曲es,但是从容器内部我不能使用内部 IP(?),我必须使用外部。问题是我无法设置外部 IP,我尝试创建池,然后添加转发规则,然后添加防火墙规则,到端口 9200 但这在我的本地机器上和 kubernete pod 的容器中都不起作用(思考网络规则GCE 过于复杂)。

有人可以建议哪里有问题吗?理想情况下,我想为 kubenetes 容器使用内部 IP,并以某种简单的管理界面快速打开/关闭外部 IP 以维护弹性搜索服务器。

谢谢。

4

1 回答 1

1

让我重申一下这个问题,所以我确定我是对的:

您在虚拟机上拥有弹性搜索,而不是在容器中。

你有一堆容器要连接到 es。

如果是这种情况,您应该能够从容器内部看到内部 IP。如果你只是创建一个简单的容器并尝试 curl es IP 地址会发生什么?你能打印输出吗?

此外,如果您有一个虚拟机,则不需要使用负载平衡器,您可以只使用虚拟机的外部 IP,假设您有正确的防火墙规则。

您设置的防火墙规则是什么?

您使用的是默认网络吗?或者您是否创建了一个不同的网络。

希望有帮助。

——布伦丹

于 2014-12-12T01:01:04.863 回答