Linux安装consul的两种方式(在线和离线)

2024-01-02 13:43:46

📚第一章 前言

📗背景

在研究基于Kettle开发的web版数据集成开源工具部署中发现需要用到服务注册软件
在这里插入图片描述

📗软件概述

Consul 是由 HashiCorp 公司开发的一款开源工具,它主要用作服务发现配置中心和分布式系统的服务治理平台,核心功能包括:

  • 服务发现Consul 提供了服务注册与健康检查机制,使得微服务架构中的各个服务实例能够自动注册到 Consul 中,并通过 DNSHTTP API 实现服务间的互相发现。
  • 配置共享与管理Consul 可以作为配置中心存储和分发配置信息给各个应用节点,支持 KV 存储,允许动态更新配置并在集群中快速传播。
  • 健康检查:通过健康检查机制,Consul 能够持续监控服务的健康状态,确保只有健康的实例才能被调用。
  • 多数据中心支持Consul 使用基于 RAFT 协议的强一致性保证,可以实现跨多个数据中心的服务发现和配置同步。
    在这里插入图片描述

Spring Cloud 是一个为简化在 Java 平台上构建分布式系统的框架,其中包含了一系列子项目来整合云原生应用所需的常见模式和最佳实践。Spring Cloud ConsulSpring Cloud 体系中专门用于与 Consul 集成的模块,它可以方便地将 Consul 的服务发现与配置管理能力接入到基于 Spring Cloud 构建的微服务架构中。通过 Spring Cloud Consul,开发者能够轻松地让 Spring Boot 应用程序与 Consul 进行交互,从而实现服务注册与发现、配置管理等功能,大大简化了微服务架构下的服务治理工作。

📚第二章 部署

📗在线部署

📕需要root权限

📕执行安装命令

安装工具命令包(命令包括下面用到的yum-config-manager):

sudo yum install -y yum-utils

在这里插入图片描述
添加consul仓库地址:

sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo

在这里插入图片描述
安装consul

sudo yum -y install consul

在这里插入图片描述

安装验证:consul -v
在这里插入图片描述

📕启动consul服务

启动命令(后台运行):nohup consul agent -dev -ui -node=consul-dev -client=xxx.xxx.xxx.xx &
在这里插入图片描述

📕验证consul服务

登录验证:http://localhost:8500
在这里插入图片描述
在这里插入图片描述

📗离线部署

📕下载安装包

参照确认系统架构方法x86_64就是amd86,下载amd86安装包

[opensource@bigdata02 ~]$ uname -m
x86_64
[opensource@bigdata02 ~]$ lscpu |grep Architecture
Architecture:          x86_64
[opensource@bigdata02 ~]$ 
[opensource@bigdata02 ~]$ 

在这里插入图片描述

📕上传解压

博主重新找了一台虚拟机进行离线安装,解压后,把文件放到/usr/bin目录下面即可
在这里插入图片描述
命令参考如下(放到/usr/bin需要root权限,这样所有用户都可以用):

[dolphinscheduler@bigdata03 ~]$ ll consul_1.17.1_linux_amd64.zip 
-rwxr-xr-x. 1 dolphinscheduler dolphinscheduler 64867108 12 11:39 consul_1.17.1_linux_amd64.zip
[dolphinscheduler@bigdata03 ~]$ 
[dolphinscheduler@bigdata03 ~]$ unzip consul_1.17.1_linux_amd64.zip 
Archive:  consul_1.17.1_linux_amd64.zip
  inflating: consul                  
[dolphinscheduler@bigdata03 ~]$ 
[dolphinscheduler@bigdata03 ~]$ ll
总用量 232428
-rwxr-xr-x.  1 dolphinscheduler  dolphinscheduler  173137598 1213 03:55 consul
-rwxr-xr-x.  1 dolphinscheduler  dolphinscheduler   64867108 12 11:39 consul_1.17.1_linux_amd64.zip
drwxrwxr-x. 12 dolphinscheduler  dolphinscheduler        247 322 2023 dolphinscheduler
drwxrwxr-x.  3 assets_masterdata assets_masterdata        45 327 2023 rsfiles
[dolphinscheduler@bigdata03 ~]$ 
[dolphinscheduler@bigdata03 ~]$ 
[dolphinscheduler@bigdata03 ~]$ sudo cp consul /usr/bin
[dolphinscheduler@bigdata03 ~]$ 
[dolphinscheduler@bigdata03 ~]$ consul -v
Consul v1.17.1
Revision 9bcafa24
Build Date 2023-12-12T19:55:27Z
Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents)

[dolphinscheduler@bigdata03 ~]$ 

📕启动验证(同在线安装)

在这里插入图片描述
在这里插入图片描述

??其它

?一:yum-config-manager命令解释

通过yum-config-manager工具将一个指定的仓库地址添加到系统已有的软件源列表中:

  • sudo:以超级用户权限执行该命令,因为修改系统级别的软件源通常需要管理员权限。
  • yum-config-manager: 是Yum(Yellowdog Updater, Modified)的一个子命令,用于管理Yum的配置选项和软件仓库
  • --add-repo: 参数表示要添加一个新的软件仓库
  • https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo: 这是待添加仓库的配置文件URL

执行这条命令不会直接删除或覆盖现有的其他软件仓库配置,而是会在/etc/yum.repos.d/目录下创建或更新一个repo文件,使得系统在后续使用yum installyum update等命令时能从新添加的仓库获取软件包信息。

?二:Consul代理启动命令解释

nohup consul agent -dev -ui -node=consul-dev -client=xxx.xxx.xxx.xx &用来启动Consul代理,命令各部分的含义如下:

  • nohup: 当用户退出终端时,使用nohup启动的程序仍会继续在后台运行。
  • consul agent: 启动Consul的代理进程,它是Consul服务的核心组件,负责服务发现健康检查以及集群内部的通信和管理
  • -dev: 标志表明 Consul 代理将以开发者模式启动。在该模式下,Consul将会在单节点内创建一个完整的Consul集群,数据存储在内存中,重启后数据将丢失,适用于快速测试和开发环境。
  • -ui: 开启内置的Web用户界面,这样可以通过浏览器访问Consul提供的管理界面,默认监听在本地8500端口的 /ui 路径下。
  • -node=consul-dev: 设置当前Consul代理节点的名称为consul-dev,用于标识集群中的唯一节点。
  • -client=xxx.xxx.xxx.xxx: 指定Consul代理监听客户端请求的IP地址为xxx.xxx.xxx.xxx,这意味着其他服务或者工具需要通过这个IP地址与Consul代理进行交互,比如注册服务查询服务等。
  • &: 在命令末尾加上&符号表示让命令在后台运行,即以守护进程的方式启动Consul代理,不会阻塞终端的进一步操作。

文章来源:https://blog.csdn.net/qq_36434219/article/details/135335009
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。