centos安装consul微服务(代码片段)

xiaoyaodijun xiaoyaodijun     2023-01-08     497

关键词:

一、简介

      Consul([?k?nsl],康搜)是注册中心,服务提供者、服务消费者等都要注册到Consul中,这样就可以实现服务提供者、服务消费者的隔离。除了Consul之外,还有Eureka、Zookeeper等类似软件。consul是存储服务名称与IP和端口对应关系的服务器

      consul是google开源的一个使用go语言开发的服务发现、配置管理中心服务。内置了服务注册与发现框 架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等)。服务部署简单,只有一个可运行的二进制的包。每个节点都需要运行agent,他有两种运行模式server和client。每个数据中心官方建议需要3或5个server节点以保证数据安全,同时保证server-leader的选举能够正确的进行。

     @client

CLIENT表示consul的client模式,就是客户端模式。是consul节点的一种模式,这种模式下,所有注册到当前节点的服务会被转发到SERVER,本身是不持久化这些信息。

    @server

SERVER表示consul的server模式,表明这个consul是个server,这种模式下,功能和CLIENT都一样,唯一不同的是,它会把所有的信息持久化的本地,这样遇到故障,信息是可以被保留的。

   @server-leader

中间那个SERVER下面有LEADER的字眼,表明这个SERVER是它们的老大,它和其它SERVER不一样的一点是,它需要负责同步注册的信息给其它的SERVER,同时也要负责各个节点的健康监测。

  @raft

server节点之间的数据一致性保证,一致性协议使用的是raft,而zookeeper用的paxos,etcd采用的也是taft。

  @服务发现协议

consul采用http和dns协议,etcd只支持http

  @服务注册

consul支持两种方式实现服务注册,一种是通过consul的服务注册http API,由服务自己调用API实现注册,另一种方式是通过json个是的配置文件实现注册,将需要注册的服务以json格式的配置文件给出。consul官方建议使用第二种方式。

  @服务发现

consul支持两种方式实现服务发现,一种是通过http API来查询有哪些服务,另外一种是通过consul agent 自带的DNS(8600端口),域名是以NAME.service.consul的形式给出,NAME即在定义的服务配置文件中,服务的名称。DNS方式可以通过check的方式检查服务。

  @服务间的通信协议

Consul使用gossip协议管理成员关系、广播消息到整个集群,他有两个gossip  pool(LAN pool和WAN pool),LAN pool是同一个数据中心内部通信的,WAN pool是多个数据中心通信的,LAN pool有多个,WAN pool只有一个。

 二、安装

    consul官网:https://www.consul.io/

   1)下载

wget https://releases.hashicorp.com/consul/1.3.0/consul_1.3.0_linux_amd64.zip

  2)解压

unzip  consul_1.3.0_linux_amd64.zip

 3)拷贝到usr目录下

mv consul   /usr

4)查看是否安装成功

./consul

技术分享图片

5)启动

./consul agent -dev -ui -node=consul-dev -client=192.168.*.** #虚拟机ip

6) 后在浏览器中输 http://192.168*.**:8500 就可以访问了

 

centos8安装consul-template(代码片段)

 1.下载安装包(consul-template_0.23.0_linux_amd64.zip文件)下载地址:https://releases.hashicorp.com/consul-template/0.23.0/ 2.解压缩unzip consul-template_0.23.0_linux_amd64.zip 3.将执行文件(解压缩之后的文件夹),复制到/usr/local/bin文件夹... 查看详情

centos7.5prometheus2.5配置和基于consul1.2.4的服务发现(代码片段)

一、Prometheus安装及配置请参考:CentOS7.5Prometheus2.5+Grafana5.4监控部署二、基于Consul的服务发现1、概述Consul是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件.Consul由HashiCorp公司用Go语言开发,基于MozillaPublicLicense2... 查看详情

8分钟学会consul集群搭建及微服务概念(代码片段)

...因此具有天然可移植性(支持Linux、windows和MacOSX),它的安装包仅包含一个可执行文件,方便部署,与Docker等轻量级容器可无缝配合。微服务概念:微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统... 查看详情

consul的agentcaching缓存代理(代码片段)

ConsulAgentCaching安装docker-consul验证AgentCaching停止consulserver请求服务发现接口Consul的BlockingQuery注册中心是微服务架构中非常重要的一个组成部分,注册中心的高可用直接关系到整个微服务架构的可用性,是系统稳定的重要保... 查看详情

3分钟就会系列使用ocelot+consul搭建微服务吧!(代码片段)

...rvice.APIGetway的ASP.NETWebApi项目。在该项目中,我们通过Nuget安装Ocelot,或者通过m命令行进行安装。注意:最新版的不建议使用,会出现一些内部错误,建议使用10.0.1以下的版本。创建相关文件夹 在其中应该创建服务 查看详情

微服务之:从零搭建ocelot网关和consul集群(代码片段)

原文:微服务之:从零搭建ocelot网关和consul集群介绍 微服务中有关键的几项技术,其中网关和服务服务发现,服务注册相辅相成。首先解释几个本次教程中需要的术语网关 Gateway(APIGW/API网关),顾名思义,是企业IT在系统... 查看详情

consul删除服务(代码片段)

....net/yaorongke/article/details/108331787Springcloud微服务架构,使用Consul作为服务注册中心,有时某个服务已经不可用了但是依旧存在于Consul中,导致调用服务时,出现调用失败的情况,这时可以手动删除该服务。Consul提供了一个删除服务... 查看详情

个推基于consul的配置管理(代码片段)

作者:个推应用平台基础架构高级研发工程师阿飞在微服务架构体系中,由于微服务众多,服务之间又有互相调用关系,因此,一个通用的分布式配置管理是必不可少的。一般来说,配置管理需要解决配置集中管理、在系统运行... 查看详情

consul实现服务治理(代码片段)

.NETCore微服务之基于Consul实现服务治理https://www.cnblogs.com/edisonchou/p/9124985.html一、Consul基础介绍  Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,比如Airbnb的Sma... 查看详情

springboot(微服务)注册分布式consul(代码片段)

Consul是什么Consul是一个基于HTTP的服务发现工具,用于配置和管理系统和服务之间的依赖关系。它提供了一个简单的方式来注册、发现和配置服务,并包括健康检查、负载均衡和故障转移等功能。Consul是一种分布式系统... 查看详情

java之springcloud微服务搭建consul(第一个阶段)springboot项目实现商品服务器端是调用(代码片段)

...;一致性2)开发语言和使用(3)consul的下载与安装3、consul的基本使用(1)服务注册与发现1)注册服务2)服务查询4、consul的入门案例(1)创建一个新的工程1)创建父工程2)创建子模块... 查看详情

springcloud整合consul(代码片段)

Springcloud整合ConsulConsul是什么Consul能干嘛Consul操作指南Consul官网下载Consul运行服务提供者注册进Consul服务消费者注册进ConsulConsul是什么Consul是一套开源的分布式服务发现和配置管理系统,由HashiCorp公司用Go语言开发.提供了微... 查看详情

docker发布微服务lnmp综合应用(代码片段)

...、docker02操作1.docker自定义网络2.容器运行服务3.登录网页安装WordPress三、docker03操作1.下载镜像2.容器运行服务3.登录网页安装WordPress总结环境角色主机名IP安装服务镜像服务器docker01172.16.0.128harbo应用服务器docker02172.16.0.149consul、lnm... 查看详情

docker+consul+registrator实现服务自动注册与发现(代码片段)

...就不多介绍了,毕竟已经火遍大街小巷了,主要了解一下Consul、Registrator、Consul-tpmplate。consul:是一个服务网格解决方案,它是一个一个分布式的、高可用的系统,而且开发使用都很简单、方便、它主要提供了一个功能齐全的控... 查看详情

docker应用系列|构建consul集群(代码片段)

...:192.168.0.1主机二:192.168.0.2主机三:192.168.0.3三台主机的安装步骤相似,以主机一为例:1.安装docker服务: 查看详情

consul配置和使用(代码片段)

...4.多数据中心consul支持开箱即用的多数据中心。二:consul安装配置#consul的安装非常容易,直接到https://www.consul.io/downloads.html下载你所在平台的安装包,可以直接下载二进制包,然后unzip解压,会得到一个consul的文件,然后把它cp... 查看详情

微服务--ocelot+consul整合使用,网关+服务注册发现(代码片段)

一、为什么要有网关Gateway?1、做服务的管理,屏蔽外界对服务的访问,保护服务。2、微服务那么多服务,而且每一个服务都是集群式的,调用方不想记住每一个服务的IP+端口号。3、像授权每一个微服务都要授权,那么加到网... 查看详情

java之springcloud微服务搭建consul(第一个阶段)springboot项目实现商品服务器端是调用(代码片段)

SpringCloud学习目录点击跳转对应的文章Java之SpringCloud微服务搭建(第一个阶段)【一】【SpringBoot项目实现商品服务器端是调用】Java之SpringCloud微服务Eureka(第一个阶段)【二】【SpringBoot项目实现商品服务器端是调... 查看详情