如何安装与配置consul
如何安装和配置consul?很多新手对此不是很清楚。为了帮助您解决这个问题,本站将在下面向您详细解释。有这方面需求的人可以借鉴一下,希望你能有所收获。Consul简化了分布式环境中服务的注册和发现过程,并通过HTTP或DNS接口进行发现。支持外部SaaS供应商等。输入consultagent-h查看帮助。当提供该值时,consul将不会引导整个集群,直到达到指定的服务器数量。以server模式运行的consul agent节点用于维护consul集群的状态,官方建议每个consul cluster至少有3个或以上的运行在server mode的agent,client节点不限。把上面下载的文件解压,并把consul拷贝到/opt/consul目录,然后把/opt/consul目录加入到环境变量
如何安装和配置consul?很多新手对此不是很清楚。为了帮助您解决这个问题,本站将在下面向您详细解释。有这方面需求的人可以借鉴一下,希望你能有所收获。
Consul简化了分布式环境中服务的注册和发现过程,并通过HTTP或DNS接口进行发现。支持外部SaaS供应商等。
consul提供的一些关键特性:
服务发现:consul通过DNS或HTTP接口使服务注册和服务发现变得容易,一些外部服务,如saas,也可以注册。
运行状况检查:运行状况检查使consul能够快速提醒集群中的操作。服务发现可以防止服务转发到失败的服务。
键值存储:存储动态配置的系统。提供一个简单的HTTP接口,可以在任何地方操作。
多数据中心:它可以支持任意数量的区域(数据中心),无需复杂的配置。
官网:https://www.consul.io/
系统环境:CentOS release 6.5 (Final) x64
领事最新版本的下载地址
https://releases . hashicorp.com/consult/0 . 6 . 4/consult _ 0 . 6 . 4 _ Linux _ amd64 . zip
下载解压,里面只有一个consul可执行文件,执行
[root @ localhost领事-0 . 6 . 4]#领事
usage : consult[-version][-help]命令[args]
Availablecommandsare:
agentRunsaConsulagent
configtestValidateconfigfile
eventFireanewevent
execExecutesacommandonConsulnodes节点
force-leave force samember of clusters进入“左”状态
操作员信息提供调试信息
jointellconsulagent to joincluster
密钥生成新加密密钥
密钥管理器密钥
leavegracefullyleavetheconsultlusterandshutsdown
lockExecuteacommandholdingalock
maintControlsnodeorservicemaintenancemode维护模式
消费者集群成员列表
monitor streamlogsfomaconsulagent
重新加载触发代理加载配置文件
节点之间的RTTestMatesNetworkRoundTriptime
版本打印版本
其中,最常用的命令是代理
输入consultagent-h查看帮助。常见参数解释如下:
-广告:通知呈现地址用于更改我们呈现给集群中其他节点的地址。通常,-bind地址是演示地址
-bootstrap:用于控制服务器是否处于bootstrap模式。数据中心中只有一台服务器处于引导模式。当服务器处于引导模式时,它可以自己被选为raft领导者。
-bootstrap-expect:数据中心中预期提供的服务器节点数。当提供该值时,consul将不会引导整个集群,直到达到指定的服务器数量。此标志不能与引导共享
-绑定:该地址用于集群内的通信。集群中的所有节点都必须可以到达该地址,默认值为0.0.0.0。
-客户端:咨询绑定到哪个客户端地址,该地址提供HTTP、DNS、RPC等服务,默认为127.0.0.1
-config-file:显式指定要加载哪个配置文件
-config-dir:配置文件目录,所有文件都以。json将被加载
-data-dir:提供用于存储代理状态的目录,这是所有代理权限所必需的。该目录必须稳定,并在系统重新启动后继续存在。
-dc:该标志控制代理允许的数据中心名称,默认值为dc1
-encrypt:指定密钥,以便consul在通信时可以加密,密钥可以由consulkygen生成,consulkygen在同一个集群中
节点必须使用相同的key -join:加入一个已经启动的agent的ip地址,可以多次指定多个agent的地址。如果consul不能加入任何指定的地址中,则agent会启动失败,默认agent启动时不会加入任何节点。 -retry-join:和join类似,但是允许你在第一次失败后进行尝试。 -retry-interval:两次join之间的时间间隔,默认是30s -retry-max:尝试重复join的次数,默认是0,也就是无限次尝试 -log-level:consul agent启动后显示的日志信息级别。默认是info,可选:trace、debug、info、warn、err。 -node:节点在集群中的名称,在一个集群中必须是唯一的,默认是该节点的主机名 -protocol:consul使用的协议版本 -rejoin:使consul忽略先前的离开,在再次启动后仍旧尝试加入集群中。 -server:定义agent运行在server模式,每个集群至少有一个server,建议每个集群的server不要超过5个 -syslog:开启系统日志功能,只在linux/osx上生效 -ui-dir: 提供存放web ui资源的路径,该目录必须是可读的 -pid-file: 提供一个路径来存放pid文件,可以使用该文件进行SIGINT/SIGHUP(关闭/更新)agent
要想利用consul提供的服务实现服务的注册与发现,我们需要建立consul cluster。
在consul方案中,每个提供服务的节点上都要部署和运行consul的agent,所有运行consul agent节点的集合构成consul cluster。
consul agent有两种运行模式:server和client。这里的server和client只是consul集群层面的区分,与搭建在cluster之上的应用服务无关。
以server模式运行的consul agent节点用于维护consul集群的状态,
官方建议每个consul cluster至少有3个或以上的运行在server mode的agent,client节点不限。
我们这里以安装三个节点为例,环境配置如下
192.168.1.100 以server模式运行
192.168.1.101,192.168.1.102 以client模式运行
一:配置consul
把上面下载的文件解压,并把consul拷贝到/opt/consul目录,然后把/opt/consul目录加入到环境变量(三个节点依次配置)
二:运行
1:在192.168.1.100节点上面进行
cd/opt/consulmkdirdataconsulagent-server-bootstrap-bind=0.0.0.0-client=192.168.1.100-data-dir=data-ui-node=192.168.1.100
这样,就启动了一个节点
2:在192.168.1.101节点上面进行
cd/opt/consulmkdirdataconsulagent-bind=0.0.0.0-client=192.168.1.101-data-dir=data-node=192.168.1.101-join=192.168.1.100
3:在192.168.1.102节点上面进行
cd/opt/consulmkdirdataconsulagent-bind=0.0.0.0-client=192.168.1.102-data-dir=data-node=192.168.1.102-join=192.168.1.100
全部节点启动完之后
访问http://192.168.1.100:8500/ 即可查看consul集群的管理页面
在任意节点执行consul members 即可查看集群节点信息
这里在192.168.1.100节点执行
[root@localhostconsul-0.6.4]#consulmembers-rpc-addr=192.168.1.100:8400NodeAddressStatusTypeBuildProtocolDC192.168.1.101192.168.1.101:8301aliveclient0.6.42dc1192.168.1.102192.168.1.102:8301aliveclient0.6.42dc1192.168.1.100192.168.1.100:8301aliveserver0.6.42dc1
关闭节点
consulleave-rpc-addr=192.168.1.100:8400
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
《如何安装与配置consul》来自互联网同行内容,若有侵权,请联系我们删除!