gpt4 book ai didi

docker - 项目 namespace 中的rancher 2.0网络

转载 作者:行者123 更新时间:2023-12-02 20:03:54 25 4
gpt4 key购买 nike

我可以按工作负载名称对其他工作负载执行ping操作吗?

我习惯了rancher 1.0,如果我用更多的conteiner创建堆栈,则可以按名称从其他conteiner ping一个。

rancher application

例如:我有api和数据库,我需要api与数据库进行通信。当我单击api上的执行 shell 并写入“ping数据库”时,因此无法正常工作。

我将连接字符串写入api环境变量中的数据库。
是的,我可以创建数据库并将数据库ip写入ENV,但是此ip将在每次重启后更改。

可以通过一些不生成名称的电话来调用吗?

谢谢

编辑:
服务发现:
service discovery

贝壳:
execute shell

如您所见,因此转换数据库名称是可行的。仅ping数据库容器不起作用。

最佳答案

要在服务之间进行通信,您可以与群集IP或服务名称进行通信。

使用ServiceName将更容易。

服务发现为每个服务添加一个DNS。因此,如果您具有api,应用程序和数据库,则每个服务都会有一个DNS条目。

因此,在您的服务中,您可以直接引用DNS。

示例:要将JDBC连接到数据库中的模式名称测试,应执行以下操作:
jdbc:mysql://数据库/测试

看到:
https://rancher.com/docs/rancher/v2.x/en/k8s-in-rancher/service-discovery/

如果您想知道服务的clusterIP,可以运行以下命令:kubectl get services --all-namespaces
编辑1:添加ClusterIP作为与服务进行通信的方式。

关于docker - 项目 namespace 中的rancher 2.0网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51516422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com