环境安装

1、下载consul

官网https://www.consul.io/downloads.html下载对应版本的consul;本文以Windows-64版本为例

2、配置到系统环境变量

C:\Program Files\consul_1.4.2_windows_amd64

3、验证consul

打开命令行,验证consul会看到版本语法等内容

>consul

概要

1.启动代理

agent可以在Server或者Client模式下运行;每个数据中心至少有一个Server模式的代理,建议3-5个防止数据丢失,所有其他代理都以客户端模式运行。客户端是一个非常轻量级的进程,它注册服务,运行运行状况检查,并将查询转发给服务器。代理必须在作为群集一部分的每个节点上运行。

#启动代理,此模式会自动启动一个服务端代理,默认IP节点名等参数
>consul agent -dev

2.查询成员

>consul member -detailed(可选参数)

正常情况下节点只保证最终一致,如果想要强一致

访问HTTP API;

http://localhost:8500/v1/catalog/nodes

可以访问http://localhost:8500看下

3.关闭代理

Ctrl-C可以正常关闭代理,如果强制结束代理进程;正常关闭代理可以正常删除此代理的相关信息;而异常关闭不会删除仅对此代理健康状态做标记

定义服务

#创建配置目录;linux环境约定.d后缀表示“此目录包含一组配置文件”
$ mkdir ./consul.d #比如把80端口的某个Web服务打上标签注册进去
$ echo '{"service": {"name": "web", "tags": ["rails"], "port": 80}}' \
> ./consul.d/web.json #重启服务,加载配置目录
$ consul agent -dev -config-dir=./consul.d

linux环境

、下载
wget https://releases.hashicorp.com/consul/1.4.0/consul_1.4.0_linux_amd64.zip
、解压
unzip consul_1..0_linux_amd64.zip
、移动目录
mv consul /usr/local/bin
、创建服务托管
[Unit]
Description=consul service
[Service]
WorkingDirectory=/usr/local/bin
ExecStart=/usr/local/bin/consul agent -server -bootstrap -ui -datacenter=dc- -data-dir=/tmp/consul/data -client 0.0.0.0 -bind 127.0.0.1
Restart=always
# Restart service after seconds if the dotnet service crashes:
RestartSec=
KillSignal=SIGINT
SyslogIdentifier=dotnet-example
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install]
WantedBy=multi-user.target
、启动服务
systemctl start consul

官网地址

https://www.consul.io/

Consul概述的更多相关文章

  1. Docker consul的容器服务更新与发现

    Docker consul的容器服务更新与发现 目录 Docker consul的容器服务更新与发现 一.Consul简介 1. 服务注册与发现 2. consul概述 3. consul的两种模式 ...

  2. consul-服务发现、服务隔离、服务配置

    一.服务发现 服务发现组件记录了(大规模)分布式系统中所有服务的信息,其它服务可以据此找到这些服务.DNS 就是一个简单的例子.当然,复杂系统的服务发现组件要提供更多的功能,例如,服务元数据存储.健康 ...

  3. 基于 Consul 的 Docker Swarm 服务发现

    Docker 是一种新型的虚拟化技术,它的目标在于实现轻量级操作系统的虚拟化.相比传统的虚拟化方案,Docker 虚拟化技术有一些很明显的优势:启动容器的速度明显快于传统虚拟化技术,同时创建一台虚拟机 ...

  4. Consul文档简要整理

    什么是Consul? Consul是一个用来实现分布式系统的服务发现与配置的开源工具.他主要由多个组成部分: 服务发现:客户端通过Consul提供服务,类似于API,MySQL,或者其他客户端可以使用 ...

  5. 微服务之consul(一)

    一.概述 consul是google开源的一个使用go语言开发的服务发现.配置管理中心服务.内置了服务注册与发现框 架.分布一致性协议实现.健康检查.Key/Value存储.多数据中心方案,不再需要依 ...

  6. 微服务之consul

    一.概述 consul是google开源的一个使用go语言开发的服务发现.配置管理中心服务.内置了服务注册与发现框 架.分布一致性协议实现.健康检查.Key/Value存储.多数据中心方案,不再需要依 ...

  7. 什么是Consul

    什么是Consul Consul文档简要整理 什么是Consul? Consul是一个用来实现分布式系统的服务发现与配置的开源工具.他主要由多个组成部分: 服务发现:客户端通过Consul提供服务,类 ...

  8. 第 8 章 容器网络 - 058 - flannel 概述

    flannel 概述 flannel 是 CoreOS 开发的容器网络解决方案. flannel 为每个 host 分配一个 subnet,容器从此 subnet 中分配 IP,这些 IP 可以在 h ...

  9. consul集群搭建,配合nginx完成服务动态发现和健康检查

    1.概述 1.1 介绍 consul是一个服务发现和配置共享的服务软件,结合nginx的主动健康检查模块nginx_upstream_check_module和服务发现模块nginx-upsync-m ...

随机推荐

  1. C++函数的应用

    函数的相关语法 函数的一般定义形式如下: 返回类型 函数名([参数表])   //函数头 {                                                 //函数体 ...

  2. c语言 c++程序运行过程

    我们写好的  .c  .cpp   文件在计算机中如何运行. 一个.c 文件  .cpp  文件  首先经过 预编译形成  . i 文件  在这个过程中 主要处理程序中的#  以及进行宏替换 然后编译 ...

  3. MarkdownPad2安装与破解-转载

    MarkdownPad安装包下载链接链接:https://pan.baidu.com/s/1o7c4W7C2d8zCPh5z7y4IvQ提取码:e4bf 下载解压之后,找要MarkdownPad2.e ...

  4. array_chunk — 将一个数组分割成多个

    说明 array_chunk ( array $array , int $size [, bool $preserve_keys = false ] ) : array 将一个数组分割成多个数组,其中 ...

  5. css 动画(二) transition 过渡 & animation 动画

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! translate:平移:是transform的一个属性: transform:变形:是一个静态属性,可以 ...

  6. hdu 2844 多重背包的转化问题 以及这个dp状态的确定

    在杭电上测试了下 这里的状态转移方程有两个.,. 现在有价值val[1],val[2],…val[n]的n种硬币, 它们的数量分别为num[i]个. 然后给你一个m, 问你区间[1,m]内的所有数目, ...

  7. 【转载】使用appium遇到的坑

    问题 1. error: Failed to start an Appium session, err was: Error: Requested a new session but one was ...

  8. Go 标准库,常用的包及功能

    Go 的标准库 Go语言的标准库覆盖网络.系统.加密.编码.图形等各个方面,可以直接使用标准库的 http 包进行 HTTP 协议的收发处理:网络库基于高性能的操作系统通信模型(Linux 的 epo ...

  9. 用Altium Designer16 绘制STM32开发板PCB 笔记

    第一部分 Altium designer 软件概括 一.安装:要安装英文版,只安装pcb design和importers/exporters 二.设置:dxp-preferences我们关心的是sy ...

  10. html 输入框ios苹果手机显示九宫格数字键盘

    只需要在input标签加上type=‘tel’  即可