您的当前位置:首页正文

服务治理:Consul

2024-11-25 来源:个人技术集锦

Consul:注册中心

功能:
1、服务发现(Service Discovery)
Consul的客户端可以注册服务,比如API,另外一些客户端可使用Consul查找给定服务的提供者。使用DNS或者HTTP,应用程序可以轻松找到它们依赖的服务。

**理解:**用DNS举例

consul是存储服务名称与IP和端口对应关系的服务器。

假设:我有3台用于发帖的服务器,他们的IP和端口分别是
127.0.0.1:8887
127.0.0.1:8888
127.0.0.1:8889

那么这三台服务器就在Consul中注册,那么Consul就知道了这三台服务器的IP可端口了。
当我们要发帖,想调用发帖服务的时候,就像Consul要,Consul会告诉我们,哪些服务器提供了发帖服务,
然后我们自己选择一个发帖服务器就可以了。
(是不是特别简单,这样就不需要我们记住有那些发帖服务器的IP地址和端口了)

2、健康检查(Health Checking)
Consul客户端可以提供任何数量的运行状况检查,与给定服务(“ Web服务器是否返回200 OK”)或本地节点(“内存利用率低于90%”)相关。 操作员可以使用此信息来监视群集的运行状况,服务发现组件可以使用此信息来将流量路由到运行状况不佳的主机之外

理解:

假如有三台发帖的服务器都在Consul进行注册了发帖服务,假如有一台服务器挂了怎么办? 
Consul就提供了一个服务器的健康检查功能,他会每隔一段时间向这三台服务器发送心跳包,
比如每隔10秒钟就向这三台服务器请求一次,通过这样来检查这三台服务器是否还活着

3、KV商店(KV Store)
应用程序可以将Consul的分层键/值存储用于多种目的,包括动态配置,功能标记,协调,领导者选举等。 简单的HTTP API使其易于使用。

4、安全的服务通信(Secure Service Communication)
Consul可以为服务生成和分发TLS证书以建立相互TLS连接。 意图可用于定义允许哪些服务进行通信。 可以使用可以实时更改的意图轻松管理服务分段,而不必使用复杂的网络拓扑和静态防火墙规则。

5、多数据中心(Multi Datacenter)
Consul开箱即用地支持多个数据中心。 这意味着Consul的用户不必担心会构建其他抽象层以扩展到多个区域。

显示全文