我解释一下我的情况。
我的Kubernetes中运行着三个Pod。 在一个容器中,运行着一个Flask框架。在另外两个窗格中,有一个带有REST API的Java应用程序。 (两个Pod上的Java应用程序是相同的。)
我使用Flask的Pod必须使用HTTP请求分别单独使用Java应用程序询问两个Pod。
我创建了一个服务,该服务指向Java应用程序的两个Pod。 当我装有Flask的豆荚使用该服务询问另外两个人时,我只有一个回复。
我如何单独定位我的吊舱?就我而言,可以使用Flask从吊舱中获取端点吗?我的Java应用程序可以有x个吊舱。
最诚挚的问候,
Nico。
答案 0 :(得分:1)
IMO,正确的方法是让3个deployments每个管理您的Pod,每个Pod的replica
为1
。
如果仅Java应用程序是您需要从Flask应用程序连接到的应用程序,则可以使用2个不同的services来公开这些部署,这些部署将管理端点。除非您尝试连接到external端点,否则服务应该管理端点。
答案 1 :(得分:0)
kubectl get ep --all-namespaces
的端点分开设置如果您在内部访问事物,则不需要k8s服务,可以直接使用终结点,但是不建议这样做,因为Pod可能是由RS重新创建的。
因此,在这种情况下,您可以为这些Pod定义两个clusterIP服务,只要您对Pod进行了不同的标记