centos 8 安装consul

1.下载Consul
wget https://releases.hashicorp.com/consul/1.8.0/consul_1.8.0_linux_amd64.zip

2.解压安装包
unzip consul_1.8.0_linux_amd64.zip

3.删除压缩包
rm consul_1.8.0_linux_amd64.zip

4.创建data、log目录

5.启动consul (启动前先开通安全组端口)
./consul agent -dev -client 0.0.0.0 &

/* 1. 下载二进制安装文件 */
下载地址:https://www.consul.io/downloads.html

/* 2. 解压缩安装包 */
unzip consul_1.6.2_linux_amd64.zip

/* 3. 解压之后将consul复制到我们的自定义文件目录中,比如:/usr/local/consul */
cp consul /usr/local/consul

/* 4. 设置环境变量 */
vim /etc/profile

/* 在profile中增加一行CONSUL_HOME并更改PATH
(放置位置:一般是在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL语句的起那么)
*/
# Consul
export CONSUL_HOME=/usr/local/consul
export PATH=$PATH:$CONSUL_HOME;

/* 使配置生效 */
source /etc/profile

/* 检验是否成功,说明:这里应该是解压缩之后的包路径 */
/usr/local/consul

/* 5. 以上步骤,可以在3台虚拟机中完成,然后执行以下语句 */
192.168.80.100>consul agent -server -ui -bootstrap-expect=3 -data-dir=/tmp/consul -node=consul-1 -client=0.0.0.0 -bind=192.168.80.100 -datacenter=dc1

192.168.80.101>consul agent -server -ui -bootstrap-expect=3 -data-dir=/tmp/consul -node=consul-2 -client=0.0.0.0 -bind=192.168.80.101 -datacenter=dc1 -join 192.168.80.100

192.168.80.102>consul agent -server -ui -bootstrap-expect=3 -data-dir=/tmp/consul -node=consul-3 -client=0.0.0.0 -bind=192.168.80.102 -datacenter=dc1 -join 192.168.80.100

/*
注意:
a. 101和102的启动命令中,有一句 -join 192.168.80.100 => 有了这一句,就把101和102加入到了100所在的集群中。
b. consul 使用的端口 8300,8301,8500(192.168.80.100机器) 需要进行开放,执行以下命令:
firewall-cmd --zone=public --add-port=8300/tcp --permanent
firewall-cmd --zone=public --add-port=8301/tcp --permanent
firewall-cmd --zone=public --add-port=8302/tcp --permanent 
firewall-cmd --zone=public --add-port=8500/tcp --permanent
firewall-cmd --zone=public --add-port=8600/tcp --permanent
systemctl restart firewalld.service
*/

/*
启动之后,集群就开始了Vote(投票选Leader)的过程,通过下面的命令可以看到集群的情况:
在 192.168.80.100 机器执行
*/
/usr/local/consul members

/* 6. 启动客户端 (192.168.58.100 为agent机器,192.168.80.100为server机器)
参考资料:https://www.consul.io/docs/agent/basics.html
*/
/usr/local/consul agent -bind 0.0.0.0 -client 192.168.58.100 -data-dir=/tmp/consul -node consul-agent -join 192.168.80.100

 

参考资料:

这是一个系列

https://www.cnblogs.com/viter/p/11006875.html

https://www.cnblogs.com/viter/p/11018953.html

https://www.cnblogs.com/viter/p/11024984.html

一、安装Consul

1. 下载二进制安装文件

下载地址:https://www.consul.io/downloads.html

#安装wget
yum install wget

#下载Consul
wget https://releases.hashicorp.com/consul/1.8.0/consul_1.8.0_linux_amd64.zip

  

2. 解压缩安装包

unzip consul_1.8.0_linux_amd64.zip

  

3. 解压之后将consul复制到我们的自定义文件目录中

#创建目录
mkdir /usr/local/consul_1.8

#拷贝到新创建的目录中
cp consul /usr/local/consul_1.8/consul

#删除现在和解压后文件
rm consul
rm consul_1.8.0_linux_amd64.zip

  

3. 启动服务和客户端

参考资料:https://www.consul.io/docs/agent/basics.html

为agent机器和server机器 同为 192.168.2.171 为例。

#创建data、log目录
mkdir /usr/local/consul_1.8/data
mkdir /usr/local/consul_1.8/log


#启动
/usr/local/consul_1.8/consul agent -server -bootstrap-expect 1 -data-dir=/usr/local/consul_1.8/data/ -node=n1 -bind=192.168.2.171 -client=192.168.2.171 -ui

  -server 表示是server模式
  -bootstrap-expect=3 表示是集群中有3台服务器 bootstrap该模式node可以指定自己作为leader ,如果是非leader可不加该参数
  -data-dir=/tmp/consul 目录
  -node=n2 该服务器节点名
  -bind=127.0.0.1 节点绑定的ip
  -ui 非必须 webui的路径 用web来管理consul

 

           如下图启动成功。

 

              打开浏览器访问 http://192.168.2.171:8500/  出现下图,启动成功。

 如果不能访问查看一下是否防火墙影响,Ctrl + C 退出Consul,关闭防火墙,再重新执行启动试试。

防火墙相关命令

#查看状态     
systemctl status firewalld.service

#打开防火墙 
systemctl start firewalld.service

#关闭防火墙 
systemctl stop firewalld.service

#开启防火墙 
systemctl enable firewalld.service

#禁用防火墙 
systemctl disable firewalld.service

  

二、配置Consul 开机自启动

1. 创建服务脚本

 路径/usr/lib/systemd/system/,新建一个service命名为,consul.service

cd /usr/lib/systemd/system/
vi consul.service

  在vi编辑器,编写如下写脚本:

[Unit]
Description=ConsulServer
After=network.target
    
[Service]
ExecStart=/usr/local/consul_1.8/consul.start.sh
KillSignal=SIGTERM
    
[Install]
WantedBy=multi-user.target

2. 创建启动脚本

    创建启动脚本文件

cd /usr/local/consul_1.8/
vi consul.start.sh

  写入启动脚本

#!/bin/bash

/usr/local/consul_1.8/consul agent -server -ui -bootstrap-expect=1 -node=192.168.2.171 -data-dir=/usr/local/consul_1.8/data/ -log-file=/usr/local/consul_1.8/log/consul_log-$(date +%Y-%m-%d--%H-%M) -client=192.168.2.171 -bind=192.168.2.171 -datacenter=dc1

echo "consul startup"

  

2. 尝试服务启动

重新加载配置

systemctl daemon-reload

 

Consul 启动

systemctl start consul

查看服务状态

systemctl status consul

如果出现下图,服务启动成功。

如果失败,这是因为用户没有权限,而导致无法执行。

用命令chmod 修改一下.sh权限就可以了,这里的u 这里指文件所有者,+x 添加可执行权限,*.sh表示所有的sh文件。

chmod u+x *.sh

  

3. 设置开机自启动

systemctl enable consul.service

  

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值