手把手教你Spring Cloud Alibaba教程:nacos安装

news2024/11/23 22:00:01

我们在学习springCloud的时候用的注册中心是Eureka:

springBoot集成springCloud(一)注册中心

但是由于houlai Eureka2.0后续不维护,国内就需要一个可靠的注册中心。但是换了一套后,有哪些不同呢

SpringCloud和SpringCloudAlibaba技术对比
名称    SpringCloud    SpirngCloudAlibaba
注册中心    Eureka、Consul    Nacos
配置中心    SpringCloud Config    Nacos
网关    SpringCloud Zull    SpringCloud Gateway
负载均衡    Ribbon    Loadbalabcer
熔断降级    Hystrix    Sentinel
服务调用    Feign    OpenFeign
服务总线    Bus    Nacos
消息中间件    无(第三方替代方案:rabbitmq)    RecketMQ
分布式解决方案    无(第三方替代方案:2pc)    Seata

所以现在大部分都是用nacos。下面我们来说下如何安装nacos

一:前置条件

1:需要有jdk

关于安装jdk的教程,网上很多,这里给大家一篇我个人的文章:

Linux系统通过yum安装JDK

下载nacos安装包,可以从官网下载。

地址:

https://github.com/alibaba/nacos/tags

找到nacos-server-2.1.1.tar.gz的安装包下载即可。由于这个安装包的地址在国外,有时候会下载很慢,甚至是网页打不开,大家可以下载源码,然后通过maven命令打包,打成jar包之后再进行安装。

记住,下载源码的时候同样需要选择好对应的版本。

源码地址:

https://github.com/alibaba/nacos

这两个前置条件准备好之后,需要将下载好的nacos安装包上传到服务器上,上传的工具大家可以自行选择。至于上传的位置或者说是目录,这个看个人喜好吧。我个人的下载到个人的mnt目录下面新建了一个software的目录,这里专门用来存放各种安装包.

/mnt/software下有

nacos-server-2.1.1.tar.gz

二:安装nacos

1 解压

tar -zxvf nacos-server-2.1.1.tar.gz

可以看到nacos解压后的目录

 2:部署

进入到nacos的conf目录,这是nacos的配置目录。

 1.将 cluster.conf.example 文件复制一份

cp cluster.conf.example cluster.conf

 2.编辑 cluster.conf文件

vim cluster.conf

 添加你将要部署nacos服务器的ip和端口:

#example
nacos1的ip:nacos的端口
nacos2的ip:nacos的端口
nacos3的ip:nacos的端口
 

伪集群部署模式注意:

如果是在一台服务器上运行三台nacos服务实例,这样ip是一样的,但是端口是不一样的,这种部署方式我们称之为伪集群,也算是集群的一种。

端口冲突

问题如果是这种部署方式,切记,端口不能是连续的。什么意思呢?nacos默认端口是8848,如果我们部署三个nacos实例,端口号分别为:8847/8848/8849。如果是这样的话,在nacos2.0以上的版本是运行不起来的,为什么呢?因为这样会导致端口冲突。

为什么会端口冲突呢?因为:

因为nacos2.0之后,nacos会占用四个端口,如果伪集群采用的端口是连号方式,会导致端口被占用。比如,我们端口采用8848/8849/8859,则会出现端口冲突问题。nacos2.0会占用的4个端口为:
1.nacos端口:8848-nacos默认端口;
2.raft协议端口:7848-raft port,即raft协议端口;
3.grpc协议两个端口:9848-grpc协议端口(nacos端口+1000),9849-grpc协议端口(nacos+1001)

关于如何杀掉这个进行,可以参考:

Linux查看端口占用情况

3:导入nacos集群需要的库表


需要将nacos集群模式需要的库表导入到我们上面在application.properties文件中配置的数据中。

首先,我们创建一个nacos_config库;

其次,我们将conf目录下的nacos-mysql.sql文件下载到本地电脑,然后在mysql数据库中执行这个sql,这个SQL其实就是nacos集群需要的建表语句( nacos-mysql.sql)

 4:修改application.properties文件


同样在conf目录copyapplication.properties.example文件

cp application.properties.example application.properties


编辑application.properties文件:

vim application.properties


配置nacos连接的数据库:

### If use MySQL as datasource:
spring.datasource.platform=mysql

### Count of DB:
 db.num=1

### Connect URL of DB:
 db.url.0=jdbc:mysql://数据库ip:3306/nacos库名?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
 db.user.0=root
 db.password.0=数据库密码

其实,后面跟不跟.0都是一样的,因为我们只配置了一台数据库。最终我的8846是采用的默认方式,8848采用的是db.user=root的方式,结构都是可以正常运行的。

当然如果你配置了数据库的主备模式,也就是说有多台mysql的话,这里可以配置多个,此时就需要分别指定了。

5:启动nacos

进入bin目录下

sh startup.sh

然后进入logs查看是否启动正常

tail -f start.out


2022-12-14 10:47:05,970 INFO Nacos is starting...

2022-12-14 10:47:06,971 INFO Nacos is starting...

2022-12-14 10:47:07,682 INFO Nacos started successfully in cluster mode. use external storage
这样就启动成功了。

6:进入nacos界面

然后我们在浏览器打开对应的nacos的控制台地址:

http://192.168.0.1:8846/nacos

需要换成你自己的ip和端口。

 

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

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

相关文章

fl21怎么换主题flstudio皮肤怎么换?

FLstudio21如何更改皮肤主题?不光是背景,还有按键什么的? 请参考下面的步骤进行设置fl视图设置。 第1步,打开visualstudiofl视图设置。 第2步fl视图设置,打开“工具”--“选项” 第3步,在“环境”--“常…

基于SpringBoot+MySql的分页功能实现

分页功能是为了缓解数据库的压力而实现的功能,实际上是将数据库中的数据分段查询出来,避免一次性将所有的数据全部查出来,查出来的部分数据通过前端的页面中不同的页数来展现出来 实现基础 mysql数据库中的查询语句中提供的limit关键字 该关键字可以限制查询的记录数,例如 s…

【026】基于vue+springboot的教务信息管理系统(含源码、数据库、课设报告、运行教程)

文章目录一、项目介绍二、源码获取一、项目介绍 基于Vue+springbootmysql的教务信息管理系统,UI设计主要采用element-ui,也使用了echarts做学生成绩的可视化界面,使用了xlsx表导入、导出数据,超级吊的教务管理系统&…

[操作系统笔记]页面置换算法

内容系听课复习所做笔记,图例多来自课程截图 常见的页面置换算法有:最优算法、随机算法、FIFO、LRU 随机算法顾名思义 FIFO(先进先出, First In First Out)算法:可能产生抖动现象和Belady现象 LRU(最近最少使用算法&#xff09…

基于FFmpeg的视频播放器开发系列教程(二)

对于ffmpeg的架构介绍,请参考24岁“封神”雷霄骅的博客,他已离开江湖,但江湖仍有他的传说。 FFmpeg源代码结构图 - 编码:https://blog.csdn.net/leixiaohua1020/article/details/44226355 FFmpeg源代码结构图 - 解码:h…

【剪辑教程】如何给视频添加配音旁白,三种文字转语音方法教给你

视频剪辑完成,应该如何给视频配音?三种配音方法快来学 现在许多自媒体都居家创作短视频,那么给短视频配音的问题就摆着了面前,怎么给我们的短视频配音呢,接下来就教大家三种给视频添加配音的方法。 方法一&#xff1a…

Linux权限(1)

Linux权限(1) 📟作者主页:慢热的陕西人 🌴专栏链接:Linux 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 文章目录Linux权限(1)1. Linux权限的概念1.1 Linux上的用…

NLP之文本分类模型调优(模型基于tensorflow1.14)

项目链接:https://pan.baidu.com/s/1yOu0DogWkL8WOJksJmeiPw?pwd4bsg 提取码: 4bsg 复制这段内容后打开百度网盘手机App,操作更方便哦 --来自百度网盘超级会员v4的分享 1.基于上一篇文章中的文本分类项目进行精度调优,提升模型准确率&…

CET-4 week10 语法

0基础入门 point 谓语中自带 助动词 Such as ,I do like computer (强调且默认带有这个属性 大多数情况隐藏状态) 所有时态都有被动 do ->donewill do -> will be donehave down ->have been downbe doing ->be being donedid -> been downhad down ->ha…

flink-cdc-connectors-release-2.3.0自己编译

最新的cdc是2.21仅支持flink 1.13* 1.14*,而flink已经有1.15版本;自己编译支持1.15 下载官方包 https://github.com/ververica/flink-cdc-connectors/releases/tag/release-2.3.0 我下载的是source包,大家也可以去下载源码 1、下载后我们只需…

JUC并发编程第十三篇,AQS的作用与体系结构

JUC并发编程第十三篇,AQS的作用与体系结构一、AQS是什么?二、AQS在JUC中的地位与作用三、AQS体系结构一、AQS是什么? AbstractQueuedSynchronizer(抽象队列同步器),是用来构建锁或者其它同步器组件的重量级…

[附源码]Node.js计算机毕业设计高校社团管理系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

java EE初阶 — 多线程案例单例模式

文章目录1单例模式主要模式1.1 饿汉模式1.2 懒汉模式2 单例模式安全性问题1单例模式主要模式 在某些场景中,有些特定的类只能输出一个实例(对象),不应该创建多个实例,此时就可以使用 单例模式。 使用了单例模式后&…

5款轻量级小软件,第一款更是近期必备!

今天的主题是简洁,轻便,都是轻量级的小软件,界面都是非常简洁,而且无广告的。 1.自动抢火车票工具——12306Bypass 12306Bypass是一款专用于帮助用户抢购火车车票的工具,春运马上就到了,又到了抢票回家的…

Docker数据卷操作

1. 为什么使用数据卷 卷是在一个或多个容器内被选定的目录,为docker提供持久化数据或共享数据,是docker存储容器生成和使用的数据的首选机制。对卷的修改会直接生效,当提交或创建镜像时,卷不被包括在镜像中。 总结为两个作用&am…

功率放大器在压电传感器矩形阵列成像研究中的应用

实验名称:激光和压电传感器密集型矩形阵列成像质量的比较分析 研究方向:Lamb波、无损检测、缺陷成像和定位 测试目的: 将密集型矩形阵列分别与压电传感器检测技术和激光检测技术相结合,利用幅值成像和符号相干因子成像实现对铝板结…

vector模拟实现下篇及迭代器失效和深浅拷贝问题详解

文章目录1:构造函数1.1默认构造函数1.2迭代器构造1.3用n个val构造1.4拷贝构造2:operator3:析构函数和clear4:迭代器失效问题4.1:删除偶数深浅拷贝1:构造函数 1.1默认构造函数 vector():_start(nullptr),_end(nullptr),_endofstorage(nullptr){}1.2迭代器构造 template<clas…

手动安装Kylin5.0版本的过程

官方文档 https://kylin.apache.org/目前kylin3,4版本是有docker版本和安装包的,5.0只有docker没有安装包 安装包 https://kylin.apache.org/download/安装kylin5.0 Kylin5.0文档拉取镜像 docker pull apachekylin/apache-kylin-standalone:5.0.0运行镜像 docker run -d \ …

linux-jdk、nginx

一、安装nginx Nginx是一个web服务器也可以用来做负载均衡及反向代理使用&#xff0c; 目前使用最多的就是负载均衡&#xff0c;这篇文章主要介绍了centos8 安装 nginx Nginx是一种开源的高性能HTTP和反向代理服务器&#xff0c;负责处理Internet上一些最大站点的负载。 它…

数据结构——重点代码汇总

顺序表 设计算法&#xff0c;从顺序表L中删除值为x的元素。要求算法的时间复杂度为O(n)&#xff0c;空间复杂度为O(1)。设计算法&#xff0c;判断一个字符串是否是回文。如abc3cba是回文序列&#xff0c;而1331不是回文序列。从顺序存储结构的线性表a中删除第i个元素起的k个元…