《云计算与虚拟化技术丛书 Service Mesh实战》—2.5.2基于文件的服务发现

举报
华章计算机 发表于 2019/06/05 23:22:14 2019/06/05
【摘要】 本书摘自《云计算与虚拟化技术丛书 Service Mesh实战:基于Linkerd和Kubernetes的微服务实践》一文中的第2章,第2.5.2节,作者是杨彰显。

2.5.2 基于文件的服务发现

       Linkerd支持多种服务发现工具,比如基于文件、Consul、Kubernetes、Zookeeper等,本节我们主要介绍基于文件的服务发现,后续章节将逐步涉及Consul以及Kubernetes的详细讲解。无论是基于文件的服务发现还是基于Consul、Zookeeper的服务发现都是在Linkerd的namers配置模块指定,比如io.l5d.fs,即基于文件的服务发现,同时需要告知从哪个目录寻址服务地址信息,比如/disco。基于文件的服务发现是最简单的服务发现工具,通常在特定目录下存放一系列文件,每个文件代表一种服务,而且每个文件又包含一条或多条记录,每条记录代表一个服务实例,由IP地址和服务端口组成,比如127.0.0.1 8888,其中IP地址和端口用空格分隔,每条记录独占一行。而我们的环境中,Linkerd容器的/disco目录实际是从宿主机/root/linkerd/docker/disco加载过去,因此对于web示例服务,我们在/root/linkerd/docker/disco下创建文件web,并添加2条记录:

127.0.0.1 8888

127.0.0.1 9999

       所配置用于服务发现的文件目录无论发生文件添加、删除或者内容更新变化,Linkerd均能自动感知并加载最新内容,无需重启Linkerd。

注意 基于Java的文件监视器使得基于文件的服务发现可导致CPU使用率很高,因此尽量避免在产线使用该种服务发现工具,而是采取其他工具如:Consul、Zookeeper等。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。