首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >库伯奈特吊舱间的通信

库伯奈特吊舱间的通信
EN

Stack Overflow用户
提问于 2018-12-27 07:33:17
回答 4查看 14.2K关注 0票数 9

我有这样的事情:

代码语言:javascript
复制
           POD-1
             |
 -------------------------
 ?|?        ?|?        ?|?
service-1 service-2 service-3

如何从吊舱内的服务器到服务后面的其他服务器进行通信?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-12-27 08:54:41

您需要为您想要访问的吊舱提供服务。您只需使用吊舱相应服务的内部端点即可。

例如,让我们假设有一个mysql吊舱和服务与其对应为mysql-svc类型的ClusterIP,它公开端口3306,如下所示。

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: mysql-svc
spec:
  ports:
  - name: db-port
    protocol: "TCP"
    port: 3306
    targetPort: 3306
  selector:
    app: mysql

还有一个单独的python应用程序,它使用mysql。yo可以使用mysql://mysql-svc:3306/dbName ( mysql-svc的内部端点)访问荚中的mysql服务器。

如果您的荚位于两个不同的名称空间( dev命名空间中的mysql和qa命名空间中的python ),则可以使用mysql-svc.dev.svc.cluster.local

票数 28
EN

Stack Overflow用户

发布于 2018-12-27 09:11:48

如果您有另一个带有荚的服务,您可以通过使用集群内部DNS来访问:

对于名称空间foo中的服务bar,url是foo.bar.svc.cluster.local。最后一部分cluster.local可以根据部署集群的方式进行更改。kops允许您为它指定不同的值。

在同一个名称空间内通信时,您甚至不需要bar --您只需使用不同的协议(如mongo/兔子/postgrest等)执行http://foo/foo:port

票数 7
EN

Stack Overflow用户

发布于 2019-09-17 08:30:12

在同一个集群中的另一个名称空间上的豆荚只需使用svc-name.namespace-name即可到达。

SVC名称: foo

命名空间名称: bar

例: foo.bar

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53941391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档