Kubernetes后端容器仅通过REST服务可用

Kubernetes后端容器仅通过REST服务可用,kubernetes,Kubernetes,我是Kubernetes和码头新手。我有一个不安全(无身份验证等)的elasticsearch容器(statefulSet),它是用特定的模式设置的。这是一个后端服务。我有第二个容器(作为常规pod/部署),其中包含REST服务,这是唯一应该与elasticsearch容器通信的东西 我了解Kubernetes吊舱的基本知识、部署、状态集以及用于公开它们的服务。在不必为elasticsearch设置身份验证的情况下,是否有一种简单/聪明的方法来配置这两个容器,以便其他pod的应用程序不能直接使用

我是Kubernetes和码头新手。我有一个不安全(无身份验证等)的elasticsearch容器(statefulSet),它是用特定的模式设置的。这是一个后端服务。我有第二个容器(作为常规pod/部署),其中包含REST服务,这是唯一应该与elasticsearch容器通信的东西

我了解Kubernetes吊舱的基本知识、部署、状态集以及用于公开它们的服务。在不必为elasticsearch设置身份验证的情况下,是否有一种简单/聪明的方法来配置这两个容器,以便其他pod的应用程序不能直接使用elasticsearch容器(仅REST服务容器)

我已经看到了多容器吊舱的概念,所以我正在考虑将elasticsearch容器作为一个与REST服务容器通信的侧车。但这可能是不可能的,因为ES容器是statefulSet,而另一个不是

有没有另一种方式可以让每一个都成为一个独立的豆荚


任何见解都将不胜感激。

事实上,将其创建为一个多容器吊舱,您的REST服务将作为k8s服务公开,但将能够与elasticsearch容器对话,而无需将其暴露在外部


您可以选择只将REST容器添加到statefulSet。statefulSet本质上是一个pod+存储,因此您在此statefulSet中的pod可以是一个多容器pod。

您基本上是在寻找应该位于您的pod部署的命名空间中的网络策略。请看中的示例。

但这并不能回答问题。他们如何限制哪些播客可以访问该服务?在此设置中,任何pod都可以查询应限制的Elasticseach API。不正确。如果不公开ES容器,REST服务容器将是唯一可以与ES对话的容器。限制对REST服务的访问不是问题的一部分吗?你能解释一下为什么你认为networkpolicy不能在这种情况下使用吗?这满足了我提出的问题。经过多次努力,我找到了一个解决方案,将ES作为REST服务的辅助工具。它在做我想做的事。我只是在服务配置中公开REST服务。至于安迪关于网络政策的问题,也许有更好的解决办法,我只是还没到(库伯内特斯·纽比:)。我很想知道我该如何使用它。