consul部署

news/2024/9/27 12:11:29

 

 

下载二进制包

下载地址:https://developer.hashicorp.com/consul/install

 https://releases.hashicorp.com/consul/1.18.1/consul_1.18.1_linux_amd64.zip

 

下载解压

wget https://releases.hashicorp.com/consul/1.18.1/consul_1.18.1_linux_amd64.zip
[root@mcw12 mcw]# ls
consul_1.18.1_linux_amd64.zip
[root@mcw12 mcw]# unzip consul_1.18.1_linux_amd64.zip 
Archive:  consul_1.18.1_linux_amd64.zipinflating: consul                  
[root@mcw12 mcw]# ls
consul  consul_1.18.1_linux_amd64.zip
[root@mcw12 mcw]# 

复制到指定位置

[root@mcw12 mcw]# ls
consul  consul_1.18.1_linux_amd64.zip
[root@mcw12 mcw]# 
[root@mcw12 mcw]# ls /usr/local/bin/
[root@mcw12 mcw]# cp consul /usr/local/bin/
[root@mcw12 mcw]# ls /usr/local/bin/
consul
[root@mcw12 mcw]# 

服务部署

下面三个机器都是consul节点

 

创建启动文件

[root@mcw12 mcw]# cat /etc/systemd/system/consul.service
[Unit]
Description=consul
Wants=network.target
After=network.target[Service]
LimitCORE=infinity
LimitNOFILE=65535
LimitNPROC=65535
Environment="GOMAXPROCS=2" "PATH=/usr/local/bin:/usr/bin:/bin"
ExecStart=/usr/local/bin/consul agent -config-dir=/etc/consul.d
ExecReload=/bin/kill -HUP $MAINPID
KillSignal=TERM
Restart=on-failure
RestartSec=1s
User=root
Group=root[Install]
WantedBy=multi-user.target
[root@mcw12 mcw]#

创建配置文件并启动。下面的token随便写的

[root@mcw12 mcw]#  mkdir /etc/consul.d
[root@mcw12 mcw]# vim /etc/consul.d/config.json
[root@mcw12 mcw]# cat /etc/consul.d/config.json
{"acl": {"default_policy": "deny","down_policy": "extend-cache","enabled": true,"tokens": {"agent": "m1896af6-xiao3-3e89-6dcc-6eab0dd031c0mcw","master": "m18pVDL3+4TxiaodNSqY4pqAx1G40WLVSDlfOQI4cKwmcw="}},"bind_addr": "10.0.0.22","bootstrap_expect": 3,"client_addr": "10.0.0.22","data_dir": "/var/consul","datacenter": "mcwdatacenter","enable_debug": false,"encrypt": "","log_level": "info","rejoin_after_leave": true,"retry_interval": "15s","retry_join": ["10.0.0.22","10.0.0.23","10.0.0.24"],"server": true,"start_join": ["10.0.0.22","10.0.0.23","10.0.0.24"],"ui": true
}
[root@mcw12 mcw]# systemctl start consul
[root@mcw12 mcw]# systemctl status consul
● consul.service - consulLoaded: loaded (/etc/systemd/system/consul.service; disabled; vendor preset: disabled)Active: active (running) since Sun 2024-05-12 10:52:24 CST; 4s agoMain PID: 2411 (consul)Tasks: 8CGroup: /system.slice/consul.service└─2411 /usr/local/bin/consul agent -config-dir=/etc/consul.dMay 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.382+0800 [INFO]  agent: Starting server: address=10.0.0.22:8500 network=tcp protocol=http
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.382+0800 [INFO]  agent: Starting server: address=scada::core_api network=scada protocol=http
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.382+0800 [INFO]  agent: Started gRPC listeners: port_name=grpc_tls address=10.0.0.22:8503 network=tcp
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.382+0800 [INFO]  agent: Retry join is supported for the following discovery methods: cluster=LAN discovery_methods...ton vsphere"
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.382+0800 [INFO]  agent: Joining cluster...: cluster=LAN
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.382+0800 [INFO]  agent: (LAN) joining: lan_addresses=["10.0.0.22", "10.0.0.23", "10.0.0.24", "10.0.0.22", "10.0.0...."10.0.0.24"]
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.400+0800 [INFO]  agent: started state syncer
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.400+0800 [INFO]  agent: Consul agent running!
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.403+0800 [INFO]  agent: (LAN) joined: number_of_nodes=2
May 12 10:52:24 mcw12 consul[2411]: 2024-05-12T10:52:24.403+0800 [INFO]  agent: Join cluster completed. Synced with initial agents: cluster=LAN num_agents=2
Hint: Some lines were ellipsized, use -l to show in full.
[root@mcw12 mcw]# consul members
Error retrieving members: Get "http://127.0.0.1:8500/v1/agent/members?segment=_all": dial tcp 127.0.0.1:8500: connect: connection refused
[root@mcw12 mcw]# 

访问网页

10.0.0.22:8500,目前另外两个节点还没启动,复制一下consul命令和配置到其它节点,修改配置为当前机器的ip,然后启动一下,agent token 和mastertoken,三个节点一样就可以

 启动另外两个节点之前没有leader

[root@mcw12 mcw]# curl http://10.0.0.22:8500/v1/status/leader
""[root@mcw12 mcw]#

 

启动另外两个节点

[root@mcw13 ~]# cat /etc/consul.d/config.json
{"acl": {"default_policy": "deny","down_policy": "extend-cache","enabled": true,"tokens": {"agent": "m1896af6-xiao3-3e89-6dcc-6eab0dd031c0mcw","master": "m18pVDL3+4TxiaodNSqY4pqAx1G40WLVSDlfOQI4cKwmcw="}},"bind_addr": "10.0.0.23","bootstrap_expect": 3,"client_addr": "10.0.0.23","data_dir": "/var/consul","datacenter": "mcwdatacenter","enable_debug": false,"encrypt": "","log_level": "info","rejoin_after_leave": true,"retry_interval": "15s","retry_join": ["10.0.0.22","10.0.0.23","10.0.0.24"],"server": true,"start_join": ["10.0.0.22","10.0.0.23","10.0.0.24"],"ui": true
}
[root@mcw13 ~]# systemctl restart consul
[root@mcw14 ~]# cat /etc/consul.d/config.json
{"acl": {"default_policy": "deny","down_policy": "extend-cache","enabled": true,"tokens": {"agent": "m1896af6-xiao3-3e89-6dcc-6eab0dd031c0mcw","master": "m18pVDL3+4TxiaodNSqY4pqAx1G40WLVSDlfOQI4cKwmcw="}},"bind_addr": "10.0.0.24","bootstrap_expect": 3,"client_addr": "10.0.0.24","data_dir": "/var/consul","datacenter": "mcwdatacenter","enable_debug": false,"encrypt": "","log_level": "info","rejoin_after_leave": true,"retry_interval": "15s","retry_join": ["10.0.0.22","10.0.0.23","10.0.0.24"],"server": true,"start_join": ["10.0.0.22","10.0.0.23","10.0.0.24"],"ui": true
}
[root@mcw14 ~]# systemctl restart consul
[root@mcw14 ~]# 

再次curl访问,可以找到leader节点了

[root@mcw13 ~]# curl http://10.0.0.23:8500/v1/status/leader
"10.0.0.22:8300"[root@mcw13 ~]#

consul页面使用

再次访问页面,提示要登录

 登录一下

 试试这个

 用上面的登录成功了,点进去查看

是所有的节点,再点进去一个节点看看

 

 

 

 

 再看这里,点进去leader查看下

 

 

 

 

 现在还没有键值对

 

 看下token

 

 

点击进入

 

 点击这里,复制出我这里登录用的token

 

 只读

 

 

 

 

 

 

 常用命令

 查看集群leader

任一节点,用当前节点ip看

[root@mcw13 ~]# curl http://10.0.0.23:8500/v1/status/leader
"10.0.0.22:8300"[root@mcw13 ~]# 
[root@mcw13 ~]# 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/30505.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

TCP的四次挥手过程

TCP连接是双向传输的对等的模式(全双工模式),就是说双方都可以同时向对方发送或接收数据。而断开的时候,也是双方都可以主动断开,此时需要经过四次挥手的过程,流程如下图所示...TCP连接是双向传输的对等的模式(全双工模式),就是说双方都可以同时向对方发送或接收数据。…

Android开发Kotlin学习笔记

为了做《基于安卓定位的考勤系统》,学了一些杂乱的知识,在这里简单记录一下。除了在C#桌面应用开发中感性的体会到了些XML布局的知识以及课上学习的Java知识,其他也算是零基础了。 Google Android Developer的课程 2023/10/25 :跟着官方文档先快速入门一下基本内容。截至目…

SpringBoot速记

本篇以SpringBoot快速构建一个基础项目,在构建的同时记录相关的知识。常见的架构图: 其中, config中可以引入第三方的jar包 controller中存放控制类一个简单的例子如下: mapper中存放对数据库的操作接口 pojo中是实体对象类,常与数据表对应 service中存放服务类: xml中…

容器技术:优化软件测试流程的利器

前言 你是否曾想过,如何让你的应用程序在任何地方都能够运行,而无需担心各种环境的兼容性问题?之前,我们可能是想着用虚拟机,但是现在我们有了其他选择,不知道你是否听说过容器技术,乍一听却感到有些晦涩难懂?别担心,本文将为你揭开容器技术的神秘面纱,让你轻松理解这…

【攻防技术系列】-- Python沙箱逃逸

Python 是一种强大而灵活的编程语言,但在某些情况下,可能需要运行不受信任的代码,同时又希望限制它的行为,以防止对系统的不良影响。这时,Python 沙箱就成为一种有用的工具,它可以帮助你在安全的环境中运行不受信任的代码。本文将探讨 Python 沙箱的概念、常见的沙箱技术…

掌握 Playwright:元素操作技巧大揭秘

简介 在自动化测试和网页爬取中,与页面元素的交互是至关重要的。Playwright 提供了丰富的 API 来执行各种元素操作,包括点击、输入文本、获取属性等。在本文中,我们将介绍如何使用 Playwright 进行元素操作。 点击元素 点击页面元素是最常见的操作之一。Playwright 提供了 l…

实验4——代码审查

一、实验题目 :代码审查 二、实验目的1、熟悉编码风格,利用开发环境所提供的平台工具对代码进行自动格式审查;2、根据代码规范制定代码走查表,并按所制定的审查规范互审代码。 三、实验内容1、IDEA环境和PyCharm环境二选一;IDEA环境(1)预先准备在IDEA环境下实现对输入的…

使用 Playwright 进行元素定位

前言 在自动化测试和网页爬取中,定位页面元素是一项重要的任务。Playwright 提供了多种方式来定位页面元素,包括通过 CSS 选择器、XPath 和文本内容等。在本文中,我们将介绍如何使用 Playwright 进行元素定位。 CSS 选择器定位元素 使用 CSS 选择器是一种常见且灵活的方式来…