Consul前篇----Consul系统架构简单介绍~

前言:

Consul 是一个复杂的系统,它是HashiCorp公司的一个用于实现分布式系统的服务发现于配置工具,Consul内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,同时,Consul具有功能完善,部署简单,使用方便等特点~
这里顺带提一下,Consul是由Go语言开发的,因而也具备了Go语言跨平台,易安装的特点,下载地址:https://www.consul.io/downloads.html。

一、 架构
  • 上架构图之前,先解释下一些术语含义,如下~
  • ① Agent :Agent是长期运行在每个consul集群成员节点上守护进程。通过命令consul agent启动。Agent有client和server两种模式。由于每个节点都必须运行agent,所有节点要么是client要么是server。所有的Agent都可以调用DNS或HTTP API,并负责检查和维护服务同步
  • ② client: 运行client模式的Agent,将所有的RPCs转发到Server。Client是相对无状态的。Client唯一所做的是在后台参与LAN gossip pool。只消耗少量的资源,少量的网络带宽。
  • ③ Server: 运行Server模式的Agent,参与Raft quorum,维护集群的状态,响应RPC查询,与其他数据中心交互WAN gossip,转发查询到Leader或远程数据中心
  • ④ datacenter :数据中心,定义为:网络环境是私有,低延迟,高带宽的,排除和公网的通信。但有一些细节需要注意,比如在AWS的EC2,多个可用性区域是否被认为组成了单一的数据中心?而数据中心的定义不包括基于公共互联网环境,但是对于我们使用者而言,在同一个EC2的多个可用性区域会被认为是一个的数据中心
  • ⑤ Consensus :consensus,意味着leader election协议,以及事务的顺序。由于这些事务是基于一个有限状态机,consensus的定义意味着复制状态机的一致性。
  • ⑥ Gossip :consul是建立在Serf(去中心化服务发现和编排)之上,提供了完成的Gossip协议(下文会简单介绍此协议),用于成员维护故障检测、事件广播。
    gossip是基于UDP协议实现随机的节点到节点的通信,主要是在UDP。
  • ⑦ LAN Gossip:指的是LAN gossip pool,包含位于同一个局域网或者数据中心的节点。
  • ⑧ WAN Gossip:指的是WAN gossip poolÿ
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值