本文共 1282 字,大约阅读时间需要 4 分钟。
Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发, 基于 Mozilla Public License 2.0 的协议进行开源. Consul 支持健康检查,并允许 HTTP 和 DNS 协议调用 API 存储键值对.
命令行超级好用的虚拟机管理软件 vgrant 也是 HashiCorp 公司开发的产品.一致性协议采用 Raft 算法,用来保证服务的高可用. 使用 GOSSIP 协议管理成员和广播消息, 并且支持 ACL 访问控制.2.1 使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接
2.2 支持多数据中心2.3 支持健康检查2.4 支持http和dns协议封口2.5 官方提供web管理界面2.6 部署简单,运维友好相比同类的服务发现与配置的主流的产品,我个人更看好的功能是DNS API,并且提供简单的web管理界面。3.1 docker 实例的注册与配置共享
3.2 coreos 实例的注册与配置共享3.3 redis &MySQL 高可用的实现3.4 与 confd 服务集成,动态生成 nginx 和 haproxy 配置文件基本于redis的高可用类似,需要MHA高可用做配合,proxysql做读写分离。不过不再需要MHA的vip,只需要使用MHA的补binlog日志功能。
https://www.percona.com/blog/2016/09/16/consul-proxysql-mysql-ha/
#可以参考下percona博客分享
6.关于consul dns缓存问题
consul dns缓存可以设置为 有缓存状态和无缓存状态。默认TTL值是0。可调整有缓存的参数是
dns_config.node_ttl
。建议使用默认的无缓存状态。
关于 consul 1.0 如何具体实现server搭建和实现redis的高可用 参考我的好基友言伟同学的博客。目前网上流传的都是consul 老的版本,感谢言伟同学的分享。也请关注知数堂分享的新姿势。
http://412166174.blog.51cto.com/3102369/1975822http://412166174.blog.51cto.com/3102369/1976520
转载地址:http://ogttx.baihongyu.com/