【问题标题】:Kubernetes and portsKubernetes 和端口
【发布时间】:2015-02-04 17:43:11
【问题描述】:

我有以下场景:

  1. 带有 elastichserach 的虚拟机
  2. Kubernetes 集群

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

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

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

谢谢。

【问题讨论】:

  • 呃。还有一件事,如果集群有 3 个虚拟机,并且 pod 的数量是 1,那么 forwarding-rule 包含所有 3 个虚拟机的 target pool,这导致一些 requests 消失,因为它们被重定向到不运行的实例 @ 987654327@.

标签: google-cloud-platform kubernetes google-kubernetes-engine


【解决方案1】:

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

您在 VM 上而不是在容器中拥有 Elastic Search。

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

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

另外,如果你有一个虚拟机,你不应该乱用负载平衡器,你可以使用虚拟机的外部 IP,假设你有正确的防火墙规则。

您设置了哪些防火墙规则?

您使用的是默认网络吗?还是您创建了不同的网络。

希望对您有所帮助。

--布伦丹

【讨论】:

    猜你喜欢
    • 2021-05-05
    • 2020-12-06
    • 2021-04-26
    • 2020-07-26
    • 2020-01-01
    • 2022-01-19
    • 2017-10-11
    • 2020-10-14
    • 2021-08-22
    相关资源
    最近更新 更多