Consul介绍及常用的命令行

Consul中文文档—Consul官方部署都配置了哪些启动参数?(Consul配置篇) Consul启动参数配置, Consul常见配置, Consul配置优先级介绍 阅读详情

介绍

官方文档:https://www.consul.io/docs/intro

 

Consul是一个分布式,高可用的系统。是一种服务网格解决方案,提供具有服务发现,配置和分段功能的全功能控制平面。

 

主要特点如下:

服务发现:Consul的客户端可以注册服务,例如 api或mysql,其他客户端可以使用Consul来发现给定服务的提供者。使用DNS或HTTP,应用程序可以轻松找到它们依赖的服务。

健康检查: Consul客户端可用提供任意数量的健康检查,指定一个服务(比如:webserver是否返回了200 OK 状态码)或者使用本地节点(比如:内存使用是否大于90%).。这个信息可由operator用来监视集群的健康。被服务发现组件用来避免将流量发送到不健康的主机。

Key/Value存储:应用程序可用根据自己的需要使用Consul的层级的Key/Value存储。比如动态配置,功能标记,协调,领袖选举等等,简单的HTTP API让他更易于使用。

多数据中心: Consul支持开箱即用的多数据中心。这意味着用户不需要担心需要建立额外的抽象层让业务扩展到多个区域。Consul面向DevOps和应用开发者友好.是他适合现代的弹性的基础设施。

安全的服务通讯:Consul可以为服务生成和分发TLS证书以建立相互TLS连接。 Intentions可用于定义允许哪些服务进行通信。使用Intentions可以非常方便地管理服务划分(Service segmentation),并且可以实时改变通讯策略,而不必使用复杂的网络拓扑和静态防火墙规则。(用于service mesh)

 

Agent介绍

Consul的Agent是Consul的核心进程,其作用是 维护成员信息,服务注册,运行检查,响应用户请求等。

一个Agent可以运行为Client或Server模式。

Consul Server:通过Raft协议保证强一致性和可用性,每个数据中心至少需要运行一个Server。由于Server会使用较多的系统资源,所以集群中Consul Server的数量一般不会太多。

Consul Client:Client非常轻量,通常服务通过Client进行服务注册和发现。

 

Consul Agent启动参数

版本:Consul v1.8.4

官方地址:https://www.consul.io/docs/agent/options

 

consul agent命名用于启动Agent,consul agent启动时可以通过命令行参数或配置文件指定配置选项

配置的优先级 命令行参数 > 配置文件

常用的命令行参数:
-advertise:用于更改我们通知给集群中其他节点的地址,如果未指定默认使用-bind地址作为通知地址。
-bind:该地址用来在集群内部的通讯,集群内的所有节点到地址都必须是可达的,默认是0.0.0.0

-bootstrap-expect :在一个datacenter中期望提供的server节点数目,当该值提供的时候,consul一直等到达到指定sever数目的时候才会引导整个集群,该标记不能和bootstrap共用

-client:  Consul将绑定客户端接口的地址,包括HTTP、DNS、RPC等服务,默认是127.0.0.1,所以不对外提供服务,如果你要对外提供服务改成0.0.0.0

-config-file: 要加载的配置文件。
-config-dir: 要加载的配置文件目录,里面所有以.json结尾的文件都会被加载
-datacenter:指定该agent使用的数据中心,如果未提供,则默认为“ dc1”
-disable-host-node-id: 将其设置为true将阻止Consul使用主机上的信息来生成确定性节点ID,而是生成一个随机节点ID,该ID将保留在数据目录中。在同一主机上运行多个Consul代理进行测试时,这很有用。
-domain: 设置DNS查询响应的域名,这将会覆盖默认的域名”consul.”
-dns-port:监听的DNS端口。这将覆盖默认端口8600
-grpc-port:监听的gRPC API端口。默认值-1(禁用gRPC)
-http-port:监听的HTTP API端口。这将覆盖默认端口8500
-https-port:用于侦听的HTTPS API端口。默认值-1
-log-file:将所有Consul代理日志消息写入文件。
-join:启动时要加入的另一个Agent的地址。可以多次指定,以指定要加入的多个代理。
-rejoin:类似join,但是允许重新连接,直到成功为止。一旦成功加入成员列表中,它将不再尝试加入。 
# Using a DNS entry
$ consul agent -retry-join "consul.domain.internal"
# Using IPv4
$ consul agent -retry-join "10.0.4.67"
# Using IPv6
$ consul agent -retry-join "[::1]:8301"

-node:节点在集群中的名称,在一个集群中必须是唯一的,默认是该节点的主机名

-server : 定义agent运行在server模式,如果不指定该参数则以client模式运行。
-server-port:要侦听的服务器RPC端口。这将覆盖默认的服务器RPC端口8300
-ui: 启用内置的Web UI服务器和所需的HTTP路由。
-ui-dir: 提供存放web ui资源的路径,该目录必须是可读的

 

 

Consul命令行

版本:Consul v1.8.4

#consul --help
Usage: consul [--version] [--help] <command> [<args>]

Available commands are:
    acl            Interact with Consul's ACLs 与agent交互的ACL
    agent          Runs a Consul agent  运行一个consul agent
   catalog        Interact with the catalog  用于列出条目信息
   【 
     子命令:
     consul catalog datacenters  列出所有的数据中心
     consul catalog nodes  列出所有的节点信息(包括client和server)
     consul catalog  services  列出已注册的服务列表
   】
   config  Interact with Consul's Centralized Configurations 用于与consul的配置进行交互
  【
    子命令:
    Write a config:
    $ consul config write web.serviceconf.hcl

    Read a config:
    $ consul config read -kind service-defaults -name web

    List all configs for a type:
    $ consul config list -kind service-defaults

    Delete a config:
    $ consul config delete -kind service-defaults -name web
   】

    connect        Interact with Consul Connect 用于与consul连接相关的交互
    debug          Records a debugging archive for operators 记录调试信息
    event          Fire a new event  发起新的event
    exec           Executes a command on Consul nodes  在Consul节点上执行一个命令
    force-leave    Forces a member of the cluster to enter the "left" state  强制节点成员在集群中的状态转换到left状态
    info           Provides debugging information for operators.  提供操作的debug级别的信息
    intention      Interact with Connect service intentions  与连接服务的intentions交互
    join           Tell Consul agent to join cluster  加入consul节点到集群中
    keygen         Generates a new encryption key  生成一个新的加密key
    keyring        Manages gossip layer encryption keys
    kv  Interact with the key-value store  与key-value存储进行交互
    【
	  子命令:
      delete    Removes data from the KV store
      export    Exports a tree from the KV store as JSON
      get       Retrieves or lists data from the KV store
      import    Imports a tree stored as JSON to the KV store
      put       Sets or updates data in the KV store
    】

    leave          Gracefully leaves the Consul cluster and shuts down  优雅的退出consul集群
    lock           Execute a command holding a lock  执行一个加锁的命令
    login          Login to Consul using an auth method  使用auth方法登录Consul
    logout         Destroy a Consul token created with login  销毁通过登录创建的Consul token
    maint          Controls node or service maintenance mode 控制节点或服务维护模式
    members        Lists the members of a Consul cluster 列出consul集群的成员信息
    monitor        Stream logs from a Consul agent  来自Consul代理的流日志
    operator       Provides cluster-level tools for Consul operators
    reload         Triggers the agent to reload configuration files  触发节点重新加载配置文件
    rtt            Estimates network round trip time between nodes  估计节点之间的网络往返时间
    services       Interact with services    与services交互
    snapshot       Saves, restores and inspects snapshots of Consul server state  保存,还原和检查Consul服务器状态的快照
    tls            Builtin helpers for creating CAs and certificates
    validate       Validate config files/directories  验证配置文件/目录
    version        Prints the Consul version  打印版本信息
watch          Watch for changes in Consul  实时监控consul的变化

 

Consul介绍和安装(详细版) Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value 存储、多数据中心方案,不再需要依赖其他工具(比如 ZooKeeper 等)。使用起来也较 为简单。Consul 使用 Go 语言编写,因此具有天然可移植性(支持Linux、windows和Mac OS X); 阅读详情

相关推荐

华为2019秋招笔试Java实现(2)

华为2019秋招笔试Java实现(2) 笔试日期2019年8月14日 第二题(200分) 题目描述 某程序员小A,有一种表格数据需要存储在文件中。表格中的每一行,由若干个字段组成,每个字段可以是整数或字符串(字符串只包含数字、字母以及特殊字符!@#%^&*()",)。小A设计了一种存储格式,采用文本的方式对表格数据进行存储。文本文件中的每一行,代表了表格数据中的一行数据。具体格式描述如下: 1、采用逗号分隔不同的字段(逗号前后无空格); 2、数字直接采用10进制的文本存储; 3、字符串的存储规则如下

hewhys的博客 1549

5分钟让你看懂Consul特性及搭建

一、前言 虽然说牛逼的公司都有那么几个牛逼的运维团队,牛逼的运维团队都有着神秘黑科技般敲代码的姿势;本人虽然不是一个运维工程师,但是有幸自己比较爱倒腾这些东西,也会那么一点点运维知识,虽然不算专业,但是还是可以在linux平台下敲一敲代码。去年由于自己业余时间搞了一个app项目,当时自己兼任后端开发,又同时兼任运维,经过多少个夜晚才把后端API网关 搭建起来,当时技术选型主要使用微服务架构,说到微...

Jlion 技术博客 9万+

如何利用CN3791实现太阳能电池板对锂电池的高效充电管理

本文详细介绍了如何利用CN3791芯片实现太阳能电池板对锂电池的高效充电管理。CN3791集成了MPPT(最大功率点跟踪)功能,能智能调节太阳能板的输出,确保在不同光照条件下获得最大功率。文章涵盖芯片工作原理、外围电路设计、充电全过程管理及实际应用经验,帮助开发者优化太阳能充电系统效率。

weixin_33709219的博客 499

Consul详解

Spring Cloud 支持很多服务发现的软件,Eureka 只是其中之一,下面是 Spring Cloud 支持的服务发现软件以及特性对比:FeatureeuerkaConsulzookeeperetcd服务健康检查可配支持服务状态,内存,硬盘等(弱)长连接,keepalive连接心跳多数据中心—支持——kv 存储服务—支持支持支持一致性—raftpaxosraftcapapcacpcp使用接口(多语言能力)http(sidecar)支持 http 和 dns客户端htt...

qq_40652202的博客 4万+

从智能手机到汽车电子:聊聊IPC-9702/9704A标准如何帮我们搞定不同场景下的PCB可靠性设计

本文探讨了IPC-9702/9704A标准在智能手机和汽车电子等不同场景下的PCB可靠性设计应用。通过分析消费电子、汽车电子和工业设备中的应力特征,详细解读了IPC标准在应变识别和测试方法论中的核心价值,并提供了具体的轻量化设计策略和全生命周期验证方案,帮助工程师提升PCB的长期可靠性。

weixin_30693683的博客 280

2025.06.17【WGS】|多样品VCF文件中每个样品SNP数统计方法详解(含代码与注释)

摘要:本文介绍了一种从合并后的VCF文件中统计每个样品SNP数目的方法。通过解析VCF文件中的GT字段,排除纯合参考(0/0)和缺失(./.)的基因型,准确计算各样本的SNP位点数。文中提供了完整的Python脚本,利用bcftools工具高效处理大规模VCF文件,并支持输出SNP统计结果。该方法适用于群体遗传学和RAD-seq等高通量测序数据分析的质控环节,还可扩展为统计杂合/纯合SNP等进阶需求。脚本使用简单,只需输入VCF文件即可生成样本-SNP数目的统计报表。

1701

Consul详细教程(SpringBoot案例)

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

liuerpeng1904的博客 5807

博流BL602开发二 环境搭建与固件烧录实战

本文详细介绍了博流BL602 RISC-V芯片开发环境的搭建与固件烧录全流程。从Linux/WSL系统选择、RISC-V工具链配置、SDK获取,到编译首个Wi-Fi示例并生成固件镜像,再到通过命令行或图形化工具完成烧录及串口测试,提供了完整的实战指南和常见问题解决方案。

weixin_29175469的博客 452

Consul 注册中心介绍以及搭建

Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其它分布式服务注册与发现的方案相比,Consul的方案更“一站式”,内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其它工具(比如ZooKeeper等),使用起来也较为简单。Consul使用Go语言编写,因此具有天然可移植性(支持Linux,Windows和MacOS);安装包仅包含一个可执行文件,方便部署,与Docker等轻量级容器可无缝配合。......

怪咖@的博客 1万+

CMOS传输门(互补开关)实战指南 | 设计优化 + 常见问题解析

本文深入解析CMOS传输门(互补开关)的设计优化与常见问题,涵盖导通特性、版图设计、高频应用及混合信号设计等关键领域。通过实测数据和优化技巧,帮助工程师解决衬底连接、信号完整性等实际问题,提升数字和模拟混合信号设计的效率与可靠性。

weixin_29229989的博客 162

基于YOLOv11的工业装配完整性智能检测系统

在现代工业生产中,产品质量控制是确保企业竞争力的关键环节。其中,装配完整性检查——即检测产品是否安装了所有应有的部件,是质量检测中的重要一环。传统的人工检测方法存在效率低、易疲劳、主观性强等问题。本文提出了一种基于深度学习的目标检测算法YOLOv11的工业装配完整性智能检测系统,通过计算机视觉技术自动识别和验证产品装配的完整性。本文将详细阐述从数据准备、模型训练到系统部署的完整流程,提供可执行的代码实现,并介绍一个适用于该任务的参考数据集。

YOLO 553

Consul安装到运行-Windows版

目录 1.安装consul并配置 2.配置环境变量 3.验证结果 4.出现的问题 1.安装consul并配置 选择合适的consul版本,下载地址:https://www.consul.io/downloads.html 2.解压得到 consul.exe 文件,为其配置环境变量 右键我的电脑,点击属性,其余操作步骤如下图 点击新建,将解压的路径写上去,点击确...

猾枭的博客 2981

面试问题总结——关于OpenCV(一)

整理了一下网上和我面试中遇到的关于OpenCV相关的问题。 其中因为我的简历中有个项目用到了特征点检测相关的知识,所以整理了SIFT/SURF和FLANN。 有些知识点也不深入,对于写的不对的地方,欢迎指正。 关于OpenCV的内容 1.OpenCV中cv::Mat的深拷贝和浅拷贝问题   深拷贝:分配新内存的同时拷贝数据,当被赋值的容器被修改时,原始容器数据不会改变。   浅拷贝:仅拷贝数据,当被赋值容器修改时,原始容器数据也会做同样改变。 OpenCV的Mat时,有几种赋值方式分别为:   深.

boss-dog 1万+

Consul 命令(CLI)

Consul通过一个非常简单易用的命令行界面(CLI)进行控制。Consul只是一个单一的命令行应用程序:Consul。 然后,这个应用程序将取代诸如“ agent”或“members”的子命令。子命令的完整列表位于左侧的导航栏中。   Consul CLI是一个运行良好的命令行应用程序。在错误的情况下,返回非零退出状态。就像你最期待的那样它也会响应-h和--help。而一些需要输入的命令接受“-...

silence_xiao的博客 1520

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Consul集群搭建看这篇就够了(consul cluster configuration )

Consul 是一种用于服务发现、配置和分布式一致性的开源工具和平台。它由 HashiCorp 公司开发和维护,旨在简化构建和维护分布式系统的任务。:Consul允许服务注册和发现。当服务启动时,它可以向Consul注册自己的位置和元数据。其他服务可以通过Consul查询来发现特定服务的位置,从而轻松实现服务之间的通信。:Consul可以周期性地对服务进行健康检查,以确保它们正常工作。如果服务不再健康,则Consul可以自动将其标记为不可用,并将流量路由到其他健康的实例。

别忘了微笑 4041

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

搭建 consul 集群

=============================consul 命令行工具=============================consul 支持 Windows/Linux 等多种平台, 一般生产环境部署在 Linux, 下载包中仅有一个可执行程序, 所有的服务都通过命令行开启. D:\my_program\consul\consul_1.2.3_windows_amd64&g...

weixin_30741653的博客 96

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Consul 命令行最全文档

1.启动一个带ACL 控制的Agent 首先,从这个网址下载consul,解压后发现就是个可执行文件,如果不可以执行,chmod +x consul 一下。 为了试验Consul较多的功能,这里我们打算启用一个dev模式,带ACL控制的Consul代理。 配置文件config.json如下 { "datacenter":"dc1", "primary_datacenter":"dc...

YellowStar5 4809

consul命令行查看服务_Consul 命令行最全文档

1.启动一个带ACL 控制的Agent首先,从这个网址下载consul,解压后发现就是个可执行文件,如果不可以执行,chmod +x consul 一下。为了试验Consul较多的功能,这里我们打算启用一个dev模式,带ACL控制的Consul代理。配置文件config.json如下{"datacenter":"dc1","primary_datacenter":"dc1","data_dir":...

weixin_39918043的博客 4046

使用 consul CLI 通过命令行查看consul服务状态。

一般我们查看 Consul ,直接通过在浏览器里输入IP + Consul 端口就能访问。但是有的时候服务器的端口是不对外开放的,这个时候我们又想查看 Consul 状态,就可以使用 consul 提供的命令行查看 。 在服务中直接输入 consul ,能够打印出提供的 Consul CLI 命令参数信息。 $ consul Usage: consul [--version] [--help] &...

yaos829的博客 7684

Consul 注册中心介绍

在 Spring Cloud 体系中,几乎每个角色都会有两个以上的产品提供选择,比如在注册中心有:Eureka、Consul、zookeeper、etcd 等;网关的产品有 Zuul、Spring Cloud Gateway 等。在注册中心产品中,最常使用的是 Eureka 和 Consul,两者各有特点,企业可以根据自述项目情况来选择。 前面给大家详细介绍了 Eureka ,本节给大家介绍 Co...

技术无止境 4万+

Consul常用端点介绍

前言 Consul提供的REST API可以通过访问官方网站(https://www.consul.io/api/agent.html)查看最新最详细的说明,可以用来增删查改nodes、services、checks、configguration。 本章节仅仅介绍最常用的一些端点。 本章概要 1、端点分类; 2、分类说明; 端点分类 所有的endpoints主要分为以

海锋博客 1258

Consul中文文档—Consul介绍

Consul是什么, 有哪些功能, 解决什么问题。

shuai_wy的专栏 8227

consul的介绍、安装与使用

1.consul是什么? Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。 Consul是分布式的、高可用的、可横向扩展的。它具备以下特性 : service discovery:consul通过DNS或者HTTP接口使服务注册和服务发现变的很容易,一些外部服务,例如saas提供的也可以一样注册。 health checking...

junaozun的博客 2万+

consul命令行查看服务_【Consul】Consul实践指导-Watch机制

Watches是查看指定数据信息的一种方法,比如查看nodes列表、键值对、健康检查。当监控到更新时,可以调用外部处理程序——可以自定义。比如,发现健康状态发生变化可以通知外部系统健康异常。Watches在调用http api接口使用阻塞队列。Agent会自动调用合适的API接口俩监控数据的变化。Watches可以作为Agent配置的一部分。在Agent初始化时就运行,并且支持重新载入配置——运行...

weixin_36472718的博客 533

consul原理介绍

1. consul对外暴露了4种通讯接口 1.1 RPC 主要用于内部通讯Gossip/日志分发/选主等 1.2 HTTP API 服务发现/健康检查/KV存储等几乎所有功能 默认端口为8500 1.3 Consul Commands (CLI) consul命令行工具可以与consul agent进行连接,提供一部分consul的功能。 实时上Consul CLI默认就是调用的HTTP API来与consul集群进行通讯。 可以通过配置CONSUL_HTTP_ADDR修改Consul CLI连接的目标地址

爱死亡机器人 1203
上一篇: 云计算与云原生浅析
下一篇: k8s搭建consul集群
思维的深度
博客等级 码龄11年 2万+粉丝 391原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值