consul安装集群搭建.doc

上传人:小飞机 文档编号:4219522 上传时间:2023-04-10 格式:DOC 页数:7 大小:123.50KB
返回 下载 相关 举报
consul安装集群搭建.doc_第1页
第1页 / 共7页
consul安装集群搭建.doc_第2页
第2页 / 共7页
consul安装集群搭建.doc_第3页
第3页 / 共7页
consul安装集群搭建.doc_第4页
第4页 / 共7页
consul安装集群搭建.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《consul安装集群搭建.doc》由会员分享,可在线阅读,更多相关《consul安装集群搭建.doc(7页珍藏版)》请在三一办公上搜索。

1、Spring Cloud Consul1 consul的安装和配置 consul agent 命令介绍下载解压,里面只有一个consul可执行文件,其中,consul最常用到的命令是agent 输入consul agent -h 可以查看帮助。其中常见的参数解释如下:l -advertise:通知展现地址用来改变我们给集群中的其他节点展现的地址,一般情况下-bind地址就是展现地址 l -bootstrap:用来控制一个server是否在bootstrap模式,在一个datacenter中只能有一个server处于bootstrap模式,当一个server处于bootstrap模式时,可以自己

2、选举为raft leader。 l -bootstrap-expect:在一个datacenter中期望提供的server节点数目,当该值提供的时候,consul一直等到达到指定sever数目的时候才会引导整个集群,该标记不能和bootstrap公用 l -bind:该地址用来在集群内部的通讯,集群内的所有节点到地址都必须是可达的,默认是 l -client:consul绑定在哪个client地址上,这个地址提供HTTP、DNS、RPC等服务,默认是 l -config-file:明确的指定要加载哪个配置文件 l -config-dir:配置文件目录,里面所有以.json结尾的文件都会被加载

3、l -data-dir:提供一个目录用来存放agent的状态,所有的agent允许都需要该目录,该目录必须是稳定的,系统重启后都继续存在 l -dc:该标记控制agent允许的datacenter的名称,默认是dc1 l -encrypt:指定secret key,使consul在通讯时进行加密,key可以通过consul keygen生成,同一个集群中的节点必须使用相同的key l -join:加入一个已经启动的agent的ip地址,可以多次指定多个agent的地址。如果consul不能加入任何指定的地址中,则agent会启动失败,默认agent启动时不会加入任何节点。 l -retry-j

4、oin:和join类似,但是允许你在第一次失败后进行尝试。 l -retry-interval:两次join之间的时间间隔,默认是30s l -retry-max:尝试重复join的次数,默认是0,也就是无限次尝试 l -log-level:consul agent启动后显示的日志信息级别。默认是info,可选:trace、debug、info、warn、err。 l -node:节点在集群中的名称,在一个集群中必须是唯一的,默认是该节点的主机名 l -protocol:consul使用的协议版本 l -rejoin:使consul忽略先前的离开,在再次启动后仍旧尝试加入集群中。 l -ser

5、ver:定义agent运行在server模式,每个集群至少有一个server,建议每个集群的server不要超过5个 l -syslog:开启系统日志功能,只在linux/osx上生效 l -ui-dir: 提供存放web ui资源的路径,该目录必须是可读的 l -pid-file: 提供一个路径来存放pid文件,可以使用该文件进行SIGINT/SIGHUP(关闭/更新) agent 要想利用consul提供的服务实现服务的注册与发现,我们需要建立consul cluster。在consul方案中,每个提供服务的节点上都要部署和运行consul的agent,所有运行consul agent节点

6、的集合构成consul cluster。consul agent有两种运行模式:server和client。这里的server和client只是consul集群层面的区分,与搭建在cluster之上的应用服务无关。以server模式运行的consul agent节点用于维护consul集群的状态,官方建议每个consul cluster至少有3个或以上的运行在server mode的agent,client节点不限。 安装我们这里以安装三个节点为例,环境配置如下: 以server模式运行,以client模式运行 配置consul(三个节点依次按照下面的步骤配置consul)将下载好的安装包上传

7、到linux上,存放在/home/user/tools/cluster目录。1) 把下载的文件解压unzip -o -d ./ #解压到当前路径2) 并把解压后的consul拷贝到/opt/consul目录,然后把/opt/consul目录加入到环境变量。(如果不是root用户,执行下面命名之前需要加上sudo)。mkdir /opt/consulcp consul /opt/consulvim /etc/profile 加入:export PATH=/opt/consul:$PATH source /etc/profile 运行1:在节点上面进行cd /opt/consulmkdir dat

8、aconsul agent -server -bootstrap -bind= -client= -data-dir=data -ui -node=这样,就启动了一个server节点2:在节点上面进行cd /opt/consulsudo mkdir datasudo consul agent -bind= -client= -data-dir=data -node= -join= -ui如果linux系统的防火墙没关,可能会报下面的错,需要将server跟client的防火墙都关闭:centos7系统:#查看默认防火墙状态(关闭后显示notrunning,开启后显示running)firewa

9、ll-cmd -state 使用如下命令关闭firewall:systemctl stop #停止firewallsystemctl disable #禁止firewall开机启动3:在另一个linux服务节点上面进行 验证全部节点启动完之后访问 即可查看consul集群的管理页面在任意节点执行consul members 即可查看集群节点信息。这里在节点执行consul members -http-addr=” members -http-addr=:8500也可用:curl localhost:8500/v1/catalog/nodes等同于浏览器访问 关闭节点1、consul leave

10、 -http-addr=:85002、停止agent服务,在第一个终端中,你可以使用ctrl-c来优雅的停止agent,如果你停止的是client,当你优雅的离开后,consul会通知集群中的其他成员你这个节点以及处于left状态。如果你是强制killed掉agent,集群中的其他成员会认为你是failed了。当成员leaves后,该成员的services和checks会从catalog被移除,当成员fails后,该成员的健康状态会被简单的标记为critical,但是不会从catalog删除。consul会自动的尝试链接failed的节点,这样允许节点在某些网络状况中恢复,如果节点是left状

11、态,则不会再联系该节点。注意:之前版本中默认server的http端口是8400,次的http是8500 创建文件夹/etc/ .d代表有许多配置文件在里面2. 将服务配置文件写入文件夹内如 $ echo service: name: web, tags: rails, port: 80 /etc/3. 重启consul,并将配置文件的路径给consul$ consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -config-dir /etc/4. 查询ip和端口DNS方式:dig -p 8600 SRVHttp方式:cu

12、rl 更新通过http api能对service配置文件增删改查,如果更新完成后,可以通过signup命令来生效consul agent -server -bootstrap -bind= -client= -data-dir=data -ui -node= -config-dir /etc/consul agent -server -bootstrap -bind= -client= -data-dir=data -ui -node= -config-dir /etc/Issue:如果在配置 Consul 的时候,出现了下面错误:= Error decoding /etc/: invalid character looking for beginning of value错误的原因是文件编码问题,需要将 Encoding 修改为ANSI编码(可以用 TXT 修改)。使用curl操作 K/Vconsul还提供了键/值存储的功能。如 查询 所有K/Vcurl -v , flags 为42, 值为true的记录。curl -X PUT -d test -X DELETE -X PUT -d newval 结果:CreateIndex:98,ModifyIndex:101,Key:web/key2,Flags:42,Value:dGVzdA=精心搜集整理,只为你的需要

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号