当前位置: 首页 > news >正文

杭州网站建设路/十大少儿编程教育品牌

杭州网站建设路,十大少儿编程教育品牌,深圳企业网站建设报价,新网站怎么做才能让搜狗收录说明 本文介绍了一个服务发现和配置共享的软件,简单介绍了 Consul 的原理和使用, 一篇小文抛砖引玉,希望能吸引感兴趣的童鞋一起探讨研究。 Consul 是什么 Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发, 基于 M…

说明

本文介绍了一个服务发现和配置共享的软件,简单介绍了 Consul 的原理和使用, 一篇小文抛砖引玉,希望能吸引感兴趣的童鞋一起探讨研究。

Consul 是什么

Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发, 基于 Mozilla Public License 2.0 的协议进行开源. Consul 支持健康检查,并允许 HTTP 和 DNS 协议调用 API 存储键值对.
命令行超级好用的虚拟机管理软件 vgrant 也是 HashiCorp 公司开发的产品.
一致性协议采用 Raft 算法,用来保证服务的高可用. 使用 GOSSIP 协议管理成员和广播消息, 并且支持 ACL 访问控制.

Consul 的使用场景

  • docker 实例的注册与配置共享
  • coreos 实例的注册与配置共享
  • vitess 集群
  • SaaS 应用的配置共享
  • 与 confd 服务集成,动态生成 nginx 和 haproxy 配置文件

Consul 的优势

  • 使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接. 相比较而言, zookeeper 采用的是 Paxos, 而 etcd 使用的则是 Raft.
  • 支持多数据中心,内外网的服务采用不同的端口进行监听。 多数据中心集群可以避免单数据中心的单点故障,而其部署则需要考虑网络延迟, 分片等情况等. zookeeper 和 etcd 均不提供多数据中心功能的支持.
  • 支持健康检查. etcd 不提供此功能.
  • 支持 http 和 dns 协议接口. zookeeper 的集成较为复杂, etcd 只支持 http 协议.
  • 官方提供web管理界面, etcd 无此功能.

综合比较, Consul 作为服务注册和配置管理的新星, 比较值得关注和研究.

Consul 的角色

client: 客户端, 无状态, 将 HTTP 和 DNS 接口请求转发给局域网内的服务端集群.
server: 服务端, 保存配置信息, 高可用集群, 在局域网内与本地客户端通讯, 通过广域网与其他数据中心通讯. 每个数据中心的 server 数量推荐为 3 个或是 5 个.

<img src="https://www.consul.io/assets/images/consul-arch-b2478674.png" alt="consul-arch" class="bubble-markdown-image" target="_blank" rel="nofollow" "="" style="-webkit-font-smoothing: antialiased; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); outline: 0px; max-width: 99%; height: auto; vertical-align: top; border: 1px solid rgb(222, 232, 239); margin: 10px 0px;">

安装 Consul

mac os x:

brew cask install consul

Linux 64bit:

wget https://dl.bintray.com/mitchellh/consul/0.4.1_linux_amd64.zip
unzip 0.4.1_linux_amd64.zip
sudo mv consul /bin

其他系统的安装步骤,请参考官网文档.

初体验

启动:
consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -node Litao-MacBook-Pro -dc sz-1

查看成员:

consul members

查看节点:

curl 127.0.0.1:8500/v1/catalog/nodes

使用DNS协议查看节点信息:

dig @127.0.0.1 -p 8600 Litao-MacBook-Pro.node.consul

注册服务

注册两个 Mysql 服务的实例, 数据中心在 sz-1, 端口都是 3306. 具体为以下命令:

curl -X PUT -d '{"Datacenter": "sz-1", "Node": "mysql-1", "Address": \
"mysql-1.node.consul","Service": {"Service": "mysql", "tags": ["master","v1"], \
"Port": 3306}}' http://127.0.0.1:8500/v1/catalog/register
curl -X PUT -d '{"Datacenter": "sz-1", "Node": "mysql-2", "Address": \
"mysql-2.node.consul","Service": {"Service": "mysql", "tags": ["slave","v1"],\
"Port": 3306}}' http://127.0.0.1:8500/v1/catalog/register

curl http://127.0.0.1:8500/v1/catalog/service/mysql

 [
    {
        "Address": "mysql-1.node.consul",
        "Node": "mysql-1",
        "ServiceID": "mysql",
        "ServiceName": "mysql",
        "ServicePort": 3306,
        "ServiceTags": [
            "master",
            "v1"
        ]
    },
    {
        "Address": "mysql-2.node.consul",
        "Node": "mysql-2",
        "ServiceID": "mysql",
        "ServiceName": "mysql",
        "ServicePort": 3306,
        "ServiceTags": [
            "slave",
            "v1"
        ]
    }
]

dig @127.0.0.1 -p 8600 mysql.service.consul SRV

; <<>> DiG 9.10.0-P2 <<>> @127.0.0.1 -p 8600 mysql.service.consul SRV
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12821
;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 2
;; WARNING: recursion requested but not available;; QUESTION SECTION:
;mysql.service.consul.    IN  SRV;; ANSWER SECTION:
mysql.service.consul. 0 IN  SRV 1 1 3306 mysql-2.node.sz-1.consul.
mysql.service.consul. 0 IN  SRV 1 1 3306 mysql-1.node.sz-1.consul.;; ADDITIONAL SECTION:
mysql-2.node.sz-1.consul. 0 IN  CNAME mysql-2.node.consul.
mysql-1.node.sz-1.consul. 0 IN  CNAME mysql-1.node.consul.;; Query time: 0 msec
;; SERVER: 127.0.0.1#8600(127.0.0.1)
;; WHEN: Tue Dec 02 16:42:38 CST 2014
;; MSG SIZE  rcvd: 280

Consul 的优势

  • 使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接. 相比较而言, zookeeper 采用的是 Paxos, 而 etcd 使用的则是 Raft.
  • 支持多数据中心,内外网的服务采用不同的端口进行监听。 多数据中心集群可以避免单数据中心的单点故障,而其部署则需要考虑网络延迟, 分片等情况等. zookeeper 和 etcd 均不提供多数据中心功能的支持.
  • 支持健康检查. etcd 不提供此功能.
  • 支持 http 和 dns 协议接口. zookeeper 的集成较为复杂, etcd 只支持 http 协议.
  • 官方提供web管理界面, etcd 无此功能.

综合比较, Consul 作为服务注册和配置管理的新星, 比较值得关注和研究.

Consul 的角色

client: 客户端, 无状态, 将 HTTP 和 DNS 接口请求转发给局域网内的服务端集群.  server: 服务端, 保存配置信息, 高可用集群, 在局域网内与本地客户端通讯, 通过广域网与其他数据中心通讯. 每个数据中心的 server 数量推荐为 3 个或是 5 个.

http://www.lbrq.cn/news/771679.html

相关文章:

  • 中山网站建设是什么/新平台推广赚钱
  • 鞍山网站制作报价/今日军事新闻最新消息中国
  • 游戏加盟网/宁波seo优化费用
  • 北京建设厅网站查询/公众号推广平台
  • 全套做网站/游戏推广员判几年
  • 怎样开发公司的网站建设/荨麻疹怎么治疗能除根
  • 东莞seo建站优化工具/十大免费最亏的免费app
  • 网站内容管理系统源码/营销策划公司主要做些什么
  • 最专业的网站建设组织/啥都能看的浏览器
  • 商丘网络有限公司/厦门seo搜索排名
  • 企业网站怎么做优化/快速网站推广公司
  • 北京网站建设首选小峰/网站友情链接连接
  • 网站建设设计流程步骤/seo综合查询怎么进入网站
  • 建造网站的软件/青青河边草直播免费观看
  • 如何在行业门户网站上做推广/百度搜索工具
  • 公司网站的服务费做哪个科目/邯郸百度推广公司
  • 公司网站经典案例/google权重查询
  • 网站的备案要求/利尔化学股票股吧
  • 现在还有人用asp做网站/色盲测试
  • 局域网内网站建设的步骤过程/友情链接收录
  • 怎样制作做实景的网站/百度竞价规则
  • wordpress 官方网站/软件测试培训费用大概多少
  • 网站列表页模板/今日热点新闻事件摘抄
  • 网站设计工程师是it行业吗/交换链接的例子
  • 网站建设团队架构/如何开一个自己的网站
  • 谷歌有趣的网站/竞价推广哪里开户
  • 做返利网站/chatgpt网页
  • 注册代理公司/长沙网站seo优化
  • 免费网站建站手机/免费的推文制作网站
  • 近期热点舆情事件/seo广州工作好吗
  • LCP 17. 速算机器人
  • C# 基于halcon的视觉工作流-章29-边缘提取-亚像素
  • 25C机场航班调度程序(JS 100)
  • 开源!!! htop移植到OpenHarmony
  • 未来物联网大模型:物联网硬件+底层驱动+AI 自动生成和调优LUA脚本,
  • 揭开内容分发网络(CDN)的神秘面纱:互联网的隐形加速器