容 我 先 说 一 句 : 节 日 快 乐 ! 永 远 九 岁 的 我 们 当 然 不 能 错 过 , 奥 里 给 ! {容我先说一句:节日快乐!永远九岁的我们当然不能错过,奥里给!}

如果你不懂jdk安装、nacos安装、云服务器操作、云数据库操作;请看1.4的总结。不会搭建nacos集群,你怎么敢说你学过nacos!

在这里插入图片描述


1、Nacos集群的讲解

nacos官网(集群搭建):https://nacos.io/en-us/docs/cluster-mode-quick-start.html

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

1.1、为什么要搭建高可用集群?

这个问题我相信都明白,如果只是单独的一台服务器,一旦出现故障,那么整个系统不就over了;所以需要配置集群环境!

1.2、搭建高可用集群需要注意的问题?

1、第一个问题就是集群中的服务器数量不能过多,否者会对性能造成一定的影响,因为数据需要保持一致性嘛!典型的CAP理论,三者不可兼得!

2、当你访问http://ip:8848/nacos/index.html会发现它让你输入用户名密码,另外当你添加配置退出,再进来配置项依然存在,所以肯定有数据库做支撑。nacos使用了嵌入式数据库derby。而在集群环境下是需要切换为mysql数据库的,为什么呢?因为需要保证数据的一致性嘛!且看下面的图片

在这里插入图片描述
如果不切换就如上面所以,一台服务器一个数据库,怎么保证数据的一致性呢?所以需要引入以下

在这里插入图片描述
这样不就保证的数据的一致性; Nacos官网已经说明了只能使用mysql作为高可用数据库!

1.3、搭建集权需要什么环境

根据官网的这一段进行分析
在这里插入图片描述

第一:推荐使64位 Linux,这个我估计你也能猜到(地表最强系统)
第二:64位 JDK1.8+(包括1.8)
第三:maven 3.2.x+这个应该都会满足
第四:最少三个nacos节点

1.4、jdk安装、nacos安装配置最全教程

云服务器Linux jdk安装详解https://blog.csdn.net/Kevinnsm/article/details/116193837?spm=1001.2014.3001.5501
2021年零基础带你走进nacos的世界之云服务器下载安装nacos-小白教程,详细到爆了!https://blog.csdn.net/Kevinnsm/article/details/117387323?spm=1001.2014.3001.5501
本地Navicat连接阿里云数据库RDS for MySQL(全网最详细,没有之一!)https://blog.csdn.net/Kevinnsm/article/details/117437544?spm=1001.2014.3001.5501
不会Nacos的配置中心?你怎么敢的呀!如何一步步实现Nacos作为服务的配置中心(全网最详系列)https://blog.csdn.net/Kevinnsm/article/details/117410495?spm=1001.2014.3001.5501
一分钟带你快速进入Nacos的世界,史上最简易教程!零基础也能看明白!谁反对?https://blog.csdn.net/Kevinnsm/article/details/117390678?spm=1001.2014.3001.5501


2、从derby切换到mysql数据库

上文我们已经了解了nacos默认使用derby数据库,如果我们要搭建高可用的集群环境,那么切换数据库必不可少!

2.1、首先使用本地navicat连接到云数据库RDS for MySQL

连接教程:https://blog.csdn.net/Kevinnsm/article/details/117437544?spm=1001.2014.3001.5501

2.2、导入nacos-mysql.sql脚本

这个sql脚本就是我们derby数据库里面的所有字段,所以我们需要将其导入进mysql

cd到conf文件夹下,将nacos-mysql.sql传输到本地(使用xftp进行传输,如果不知道,请移步:
https://blog.csdn.net/Kevinnsm/article/details/116193837?spm=1001.2014.3001.5501

在这里插入图片描述
在这里插入图片描述
打开navicat(如果没连接请看2.1),新建nacos_config(注意这个是和配置文件对应的)

在这里插入图片描述
然后运行sql脚本
在这里插入图片描述
刷新一下就会出现以下库表
在这里插入图片描述
users表中的数据就是我们默认用户名和密码(nacos、nacos)
在这里插入图片描述

2.3、更改nacos的配置文件

在这里插入图片描述

注意mysql8.0+版本url记得末尾加serverTimezone=UTC

mysql8.0+在nacos目录下建立/plugins/mysql文件夹,放入mysql驱动
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4、启动测试

访问:http://ip:8848/nacos/index.html,输入nacos 、nacos,进去之后会发现以前配置的什么都没有了,然后新建一个配置
在这里插入图片描述
查看数据库
在这里插入图片描述
成功!

3、开始搭建集群

因为我已经准备了三台云服务器和一台云数据库RDS for MySQL,并且已经安装好了nacos

3.1、更改application.properties

c d 到 n a c o s 的 c o n f 目 录 下 , 编 辑 a p p l i c a t i o n . p r o p e r t i e s {cd到nacos的conf目录下,编辑application.properties} cdnacosconfapplication.properties
在这里插入图片描述

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://ip:3306/nacos_configcharacterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=xxxxxx
db.password=xxxxxxxx

注 意 m y s q l 8.0 + 版 本 需 要 加 时 区 {注意mysql8.0+版本需要加时区} mysql8.0+

3.2、编辑cluster.conf文件

1、cd到conf目录下 ,默认情况下cluster.conf是不存在的,但是官方给出一个示例cluster.conf.example
2、cp cluster.conf.example cluster.conf ,复制一份到cluster.conf

在这里插入图片描述
编辑cluster.conf,输入你的集群ip;由于我已经弄好访问过,所以会新增一个ip,也就是第二个ip。
在这里插入图片描述

3 台 服 务 器 都 要 进 行 这 个 操 作 {3台服务器都要进行这个操作} 3

3.3、nginx下载安装

安装教程https://blog.csdn.net/Kevinnsm/article/details/114646269

3.4、nginx配置upstream组实现代理

cd到nginx的conf目录下,编辑nginx.conf文件

在这里插入图片描述

在这里插入图片描述



4、测试集群

先启动三台服务器中的nacos,然后启动nginx,下面看我的集群架构图
在这里插入图片描述

访 问 h t t p : / / i p : 80 / n a c o s / {访问http://ip:80/nacos/} 访http://ip:80/nacos/

在这里插入图片描述
输 入 用 户 名 和 密 码 n a c o s 、 n a c o s {输入用户名和密码nacos、nacos} nacosnacos
在这里插入图片描述
在这里插入图片描述
N a c o s 集 群 搭 建 成 功 ! {Nacos集群搭建成功!} Nacos

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐