Consul集群搭建

转载自  Consul集群搭建

概述

作为服务发现的几种产品,比较可以查看这里。Consul官方也提供了几种产品之间的比较,点击查看。


服务发现产品

Consul有很多组件,但总体来说,它是一个发现和配置服务工具,特性:
服务发现 Service Discovery: Clients of Consul can provide a service, such as api or mysql, and other clients can use Consul to discover providers of a given service. Using either DNS or HTTP, applications can easily find the services they depend upon.

健康检查 Health Checking: Consul clients can provide any number of health checks, either associated with a given service (“is the webserver returning 200 OK”), or with the local node (“is memory utilization below 90%”). This information can be used by an operator to monitor cluster health, and it is used by the service discovery components to route traffic away from unhealthy hosts.

key-value存储 KV Store: Applications can make use of Consul’s hierarchical key/value store for any number of purposes, including dynamic configuration, feature flagging, coordination, leader election, and more. The simple HTTP API makes it easy to use.

多数据中心 Multi Datacenter: Consul supports multiple datacenters out of the box. This means users of Consul do not have to worry about building additional layers of abstraction to grow to multiple regions.

更详细的信息可以查看官网。

选择了三台服务器,ip地址分别为192.168.1.12、192.168.1.13、192.168.1.14。

安装Consul
下载地址是:https://www.consul.io/downloads.html
从里面选择系统对应的版本,我使用了Linux 64-bit,Consul版本为1.1.0。下载完成后解压缩,只有一个文件,将文件添加到环境变量或者移动到已有环境变量的目录中。

sudo wget https://releases.hashicorp.com/consul/1.1.0/consul_1.1.0_linux_amd64.zip
sudo apt-get install unzip
unzip consul_1.1.0_linux_amd64.zip
sudo cp consul /usr/local/sbin/

三台服务器上都完成上述相同的步骤。

如果是Mac,可以使用Homebrew进行安装

brew install consul

启动Consul
192.168.1.12上运行

consul agent -server -bootstrap -bind=0.0.0.0 -client=192.168.1.12 -data-dir=/home/ubuntu/data -ui -node=s12

192.168.1.13上运行

consul agent -server -bind=0.0.0.0 -client=192.168.1.13 -data-dir=/home/ubuntu/data -ui -node=s13 -join 192.168.1.12

192.168.1.14上运行

consul agent -server -bind=0.0.0.0 -client=192.168.1.14 -data-dir=/home/ubuntu/data -ui -node=s14 -join 192.168.1.12

参数说明:

server: 以server身份启动。
data-dir:data存放的目录
node:节点id,在同一集群不能重复。
bind:监听的ip地址。
client 客户端的ip地址
其他参数见consul官方说明: https://www.consul.io/docs/agent/options.html

 

查看

网页查看:http://192.168.1.12:8500/
查看Leader: http://192.168.1.12:8500/v1/status/leader
查看Peers: http://192.168.1.12:8500/v1/status/peers

版本信息:

consul -v

使用命令有
consul members:查看集群成员
consul info:查看当前服务器的状况
consul leave:退出当前服务集群

其他信息也可以点击查看这里。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/322784.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js遍历对象的key和value

如果想要得到数组的键值对,可以用以下方法 object {"name":"kejin","age":"18"}for(var index in object){console.log(index);console.log(object[index]); }

亿些模板【字符串+其他】

文章目录前言其他快读快输卡常DataMakerDataMakerDataMaker字符串模板KMP字符串hashTrie最小表示法ManacherAC自动机SASAM广义SAMPAM其他模板凸包模拟退火前言 因为老是懒得打模板的时候老是扣不到自己的标(因为之前的都打得太丑了),所以导致我十分的不爽。便打算开…

使用Identity Server 4建立Authorization Server (6) - js(angular5) 客户端

预备知识: 学习Identity Server 4的预备知识 第一部分: 使用Identity Server 4建立Authorization Server (1) 第二部分: 使用Identity Server 4建立Authorization Server (2) 第三部分: 使用Identity Server 4建立Authorization Server (3) 第四部分: 使用Identity Server 4建立…

SpringBoot整合kafka(实现producer和consumer)

转载自 SpringBoot整合kafka(实现producer和consumer) 在Windows环境下安装运行Kafka&#xff1a;https://www.jianshu.com/p/d64798e81f3b 本文代码使用的是Spring Boot 2.1.1.RELEASE 版本 <parent><groupId>org.springframework.boot</groupId><art…

js的字符串和变量拼接

使用反引号拼接字符串和变量 let count 1 name 用户${count} console.log(name);注意是反引号不是引号&#xff0c;反引号是Esc下面的一个按键

ASP.NET Core 认证与授权[7]:动态授权

基于资源的授权 有些场景下&#xff0c;授权需要依赖于要访问的资源&#xff0c;例如&#xff1a;每个资源通常会有一个创建者属性&#xff0c;我们只允许该资源的创建者才可以对其进行编辑&#xff0c;删除等操作&#xff0c;这就无法通过[Authorize]特性来指定授权了。因为授…

maven中scope属性的

转载自 maven中scope属性的 Dependency Scope 在POM 4中&#xff0c;<dependency>中还引入了<scope>&#xff0c;它主要管理依赖的部署。目前<scope>可以使用5个值&#xff1a; * compile&#xff0c;缺省值&#xff0c;适用于所有阶段&#xff0c;会随着…

P3384-[模板]树链剖分

正题 题目大意 要求支持路径加和求和&#xff0c;子树加和求和 解题思路 树剖不解释 codecodecode #include<cstdio> #include<algorithm> using namespace std; const int N200000; int tot,cnt,n,m,s,p,ls[N],pw[N],id[N]; int siz[N],dep[N],f[N],son[N],seg…

H5的Websocket基本使用

前端代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </head> &…

springboot手动提交kafka offset

转载自 springboot手动提交kafka offset enable.auto.commit参数设置成了false 但是测试发现enable.auto.commit参数设置成了false&#xff0c;kafka的offset依然提交了&#xff08;也没有进行人工提交offset&#xff09;。 查看源码 如果我们enable.auto.commit设置为false…

P2114-[NOI2014]起床困难综合症【位运算】

正题 题目大意 若干个位操作&#xff0c;求一个值xxx使得进行了以后的最大值。 解题思路 每位分开运算计算出每一位为0和为1时的结果&#xff0c;然后贪心选择。 codecodecode // luogu-judger-enable-o2 #include<cstdio> using namespace std; int n,m,ans,t; char …

可观测性与原生云监控

在近日发表的一篇文章中&#xff0c;Cindy Sridharan概括介绍了可观测性及其与原生云应用程序监控的关系。可观测性是一种理念&#xff0c;包括监控、日志聚合、指标和分布式跟踪&#xff0c;可以实时更深入地观察系统。 Sridharan的文章基于她就同一个主题所做的Velocity演讲。…

项目总览地址

写这篇的目的是整理一下最近一段时间写的小demo&#xff0c;我这里稍微自夸一下暂且先叫项目吧&#xff0c;如果服务器不垮台的话&#xff0c;以后还是一直可以看到预览效果的&#xff0c;反正域名和服务器我是不会扔掉的&#xff0c;就怕后面项目多了&#xff0c;服务器承受不…

mybatis3中@SelectProvider的使用技巧

转载自 mybatis3中SelectProvider的使用技巧 mybatis3中增加了使用注解来配置Mapper的新特性&#xff0c;本篇文章主要介绍其中几个Provider的使用方式&#xff0c;他们是&#xff1a;SelectProvider、UpdateProvider、InsertProvider和DeleteProvider。MyBatis 3 User Guide中…

P2766-最长不下降子序列问题【网络流,dp】

正题 题目大意 求最长不下降子序列和可以取出多少以及允许多次使用一些数时可以取出多少个。 解题思路 第一问dp求&#xff0c;且保存以xxx开头的最长长度fxf_xfx​。 第二问考虑网络流。 我们对于每个数字以fif_ifi​的不同分层&#xff0c;然后每次从下往上一层连接&#x…

使用Microsoft.AspNetCore.TestHost进行完整的功能测试

简介 Microsoft.AspNetCore.TestHost是可以用于Asp.net Core 的功能测试工具。很多时候我们一个接口写好了&#xff0c;单元测试什么的也都ok了&#xff0c;需要完整调试一下&#xff0c;检查下单元测试未覆盖到的代码是否有bug。步骤为如下&#xff1a;程序打个断点->F5运行…

MockJs案例

有时候前端写好模板后&#xff0c;后端还完工&#xff0c;那么总不能一直让项目停滞吧&#xff0c;这里就用Mockjs来模拟后端接口的数据&#xff0c;让我们先人一步完成项目。 首先创建一个html&#xff0c;导入axios和mockjs 再用mock去拦截请求&#xff0c;如果后端接口写好了…

JS document.execCommand实现复制功能

转载自 JS document.execCommand实现复制功能 最近项目中需要实现功能&#xff1a;点击button&#xff0c;复制input框的值&#xff1b; 我使用的是 document.execCommand(copy)的方法&#xff1b; 但是很郁闷的是&#xff0c;始终实现不了功能&#xff1b;代码如下 HTML代…

Entity Framework Core 使用HiLo生成主键

HiLo是在NHibernate中生成主键的一种方式&#xff0c;不过现在我们可以在Entity Framework Core中使用。所以在这篇内容中&#xff0c;我将向您在介绍如何在Entity Framework Core中使用HiLo生成主键。 什么是Hilo&#xff1f; HiLo是High Low的简写&#xff0c;翻译成中文叫高…

P1991-无线通讯网【最小生成树,瓶颈生成树】

正题 题目大意 有nnn个点&#xff0c;连边长度不超过DDD的情况下分为SSS个联通块。 求最小的DDD 解题思路 直接KruskalKruskalKruskal连边连到只剩下SSS个联通块就好了。 codecodecode #include<cstdio> #include<cmath> #include<algorithm> using names…