云计算虚拟化技术丛书 Service Mesh实战》—3.2.3服务注册:Registrator

网友投稿 655 2022-05-30

3.2.3 服务注册:Registrator

如果使用Kubernetes或者Nomad等编排工具时,服务注册由编排工具自动完成,无需考虑。但是我们的演示环境中未使用编排工具,那么使用Consul进行服务发现时,首先要解决的问题是如何把服务自动注册到Consul?为此,我们引入Registrator(https://github.com/gliderlabs/registrator),它的主要工作是注册以Docker容器运行的服务到服务注册中心。为了使用Registrator注册容器中的服务到服务注册中心,需要在每台机器上部署Registrator,还有需要指定服务注册中心,告知Registrator注册服务到何处。当Docker容器启动时,Registrator通过检测Docker容器运行时信息,自动将运行在Docker容器中的服务注册到服务注册中心,反之,如果服务下线,它自动从服务注册中心注销服务。当前,Registrator支持多种服务注册中心,如Consul,Etcd和SkyDNS 2,而我们的演示环境中使用Consul作为服务注册中心。在启动需要注册到Consul的服务之前,每台机器都会部署一个Registrator实例,部署命令如:

# docker run -d \

--name=registrator \

--net=host \

《云计算与虚拟化技术丛书 Service Mesh实战》—3.2.3服务注册:Registrator

--volume=/var/run/docker.sock:/tmp/docker.sock \

gliderlabs/registrator \

consul://localhost:8500

其中我们指定服务注册中心Consul的地址为localhost:8500。另外,如果需要将某个服务注册到Consul中,启动Docker相应容器时需额外配置一些参数,以告知Registrator如何注册,比如:必须显示地通过-p或者-P选项指定容器服务端口。更多关于如何使用Registrator的信息,参考官方文档(https://gliderlabs.com/registrator/latest/)中的详细介绍。

虚拟化 云计算

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《C++代码整洁之道:C++17 可持续软件开发模式实践》 —3.4 避免复制原则(DRY)
下一篇:华为云OBS PHP SDK使用体验
相关文章