consul多数据中心搭建 【h】
自建IDC后面简称own、阿里云机房ali、腾讯云机房tx
own机房:内网10.10.10.0/24,边界节点,10.10.10.100/101.xxx.80.xxx
ali机房:内网10.10.10.0/24,边界节点,10.10.10.100/xxx.43.xxx.50
tx机房:内网10.10.10.0/24,边界节点,10.10.10.100/xxx.159.xxx.35
1、server、client节点部署
所有节点的consul服务均由supervisord守护管理。
idc机房配置3个server模式的节点,其它的均是client模式的节点,server和client配置各举例一个
server模式:(边界server节点的配置稍有不同,后面详细介绍):
1 |
[program:consul_server] |
client模式:
1 |
[program:consul_client] |
ali、tx机房的server、client节点配置类似,有区别的参数就是-dc、-bind、-node即所属的数据中心、用于集群通信的监听ip、节点名称。
每次添加一个新的节点后,consul join加入到本地集群已有的任意一个节点即可加入这个集群(这个动作可以做到批量装机里面)。
2、集群之间的通信设置
每个集群选取一个处于server模式的节点作为边界节点,配置与集群内的其它server模式的节点稍有差异:
1 |
[program:consul_server] |
相比于其它server模式节点,需要指定-advertise-wan参数。如果不指定该参数,consul join -wan加入一个集群的时候,默认使用的是内外ip(节点环境是有内外网两个以上ip),造成集群之间通信失败(如果集群之间的内网没有互通)。
每个边界节点将-advertise-wan设置成公网ip,用于集群之间的通信。
如果边界节点开启了防火墙,需要将对方的ip地址加入白名单,或者将TCP/UDP的8302端口加入彼此的白名单。
最后任意一个边界节均可以查看到各个边界节点状态信息:
1 |
$ consul members -wan |
3、集群UI管理界面设置
将官方提供的ui界面文件部署在任意一个边界节点上,可以访问到任何一个集群的节点状态。客户端(http、dns、rpc)默认监听地址是127.0.0.1,访问ui的端口是http的8500端口,如果不设置客户端监听ip,需要一个代理(nginx)将本地的8500端口转发到外网,也可以直接指定client的监听ip:
1 |
[program:consul_server] |
参数-client用来指定client监听ip,处于安全考虑可以监听在内网10.10.10.100,但是consul命令默认访问的是127.0.0.1端口,故监听0.0.0.0。配置成功后可以看到各个集群之间的状态:
consul多数据中心搭建 【h】的更多相关文章
- 基于 Docker 搭建 Consul 多数据中心集群
本文介绍了在 Windows 10 上基于 Docker 搭建 Consul 多数据中心集群的步骤,包括 Consul 镜像的拉取和容器的创建,每个数据中心对应服务端节点和客户节点的创建,节点之间相互 ...
- Docker + Consul 多数据中心模拟
Docker + Consul 多数据中心模拟 1. dc1搭建 docker run -d --name node1 -h node1 progrium/consul -server -bootst ...
- Consul 多数据中心下的服务注册发现与配置共享
1. Consul简介 Consul是HashiCorp公司推出的开源软件,它提供了一套分布式高可用可横向扩展的解决方案,能为微服务提供服务治理.健康检查.配置共享等能力. Eurake2.x ...
- 【Consul】多数据中心
Consul的一个关键特性是支持多数据中心.consul架构中提到是构建低耦合的多个数据中心,一个数据中心的网络连接问题或故障不在其他数据中心的可用性.每个数据中心都是独立运行,并且拥有私有的LAN ...
- consul异地多数据中心以及集群部署方案
consul异地多数据中心以及集群部署方案目的实现consul 异地多数据中心环境部署,使得一个数据中心的服务可以从另一个数据中心的consul获取已注册的服务地址 环境准备两台 linux服务器,外 ...
- 8分钟学会Consul集群搭建及微服务概念
Consul介绍: Consul 是由 HashiCorp 公司推出的开源软件,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与 ...
- Spring Cloud 微服务一:Consul注册中心
Consul介绍 Consul is a service mesh solution providing a full featured control plane with service disc ...
- SDN实验---Mininet实验(模拟多数据中心带宽实验)
补充:NameError: name 'buffer' is not defined >>> import sys >>> ,): ... buffer = mem ...
- consul集群搭建以及ACL配置
由于时间匆忙,要是有什么地方没有写对的,请大佬指正,谢谢.文章有点水,大佬勿喷这篇博客不回去深度的讲解consul中的一些知识,主要分享的我在使用的时候的一些操作和遇见的问题以及解决办法.当然有些东西 ...
随机推荐
- [转] C++ explicit关键字详解
本文转自tiankong19999 首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是impl ...
- CSE301 – Bio-Computation
CSE301 – Bio-Computation Assessment 3Contribution to overall module assessment 10%Submission deadlin ...
- 5 Successful Business Models for Web-Based Open-Source Projects
https://handsontable.com/blog/articles/2016/3/5-successful-business-models-for-web-based-open-source ...
- LeetCode 1000. Minimum Cost to Merge Stones
原题链接在这里:https://leetcode.com/problems/minimum-cost-to-merge-stones/ 题目: There are N piles of stones ...
- c++ main函数
vs 2015的运行环境 1.参数 int main(int argc, char* argv[]) 1)两个参数的类型是固定的,但参数名可以是符合命名规则的任何命名 2)argv[0]为执行文件的路 ...
- learning java 文件锁
import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; i ...
- 使用terraform 进行gitlab 代码仓库批量迁移
gitlab 的代码是在文件目录中,这个对于批量迁移很简单,只需要copy 文件夹(但是对于不同gitlab server 可能需要重新设置目录权限) 几个问题 大批量仓库tf resource问 ...
- 洛谷 P4779 【模板】单源最短路径(标准版) 题解
P4779 [模板]单源最短路径(标准版) 题目背景 2018 年 7 月 19 日,某位同学在 NOI Day 1 T1 归程 一题里非常熟练地使用了一个广为人知的算法求最短路. 然后呢? 100 ...
- 【JZOJ6210】【20190612】wsm
题目 定义两个非递减数列的笛卡尔和数列\(C = A \oplus B\) 为\((A_i+B_j)\)排序后的非递减数列 \(W\)组询问,问有多少对可能的数列,满足: \(|C|=s,|A| = ...
- Mac查看进程
Last login: Tue Jun 11 11:18:10 on ttys001 liangyufengdeMacBook-Pro:vod-admin liangyufeng$ lsof -i:6 ...