SpringCloud Nacos集群环境搭建+持久化(Linux)

前言

Nacos被越来越广泛的应用,简单的单击模式只适用于测试和单机的使用,但是用在生产上就万万不可靠了,Nacos官方支持三种部署模式:

  • 单击模式-用于测试和单击试用
  • 集群模式-用于生产环境,确保高可用
  • 多集群模式-用于多数据中心场景

今天我们来尝试搭建Nacos的集群模式。

在搭建之前我们首先要了解的是,nacos使用了嵌入式数据库实现数据的存储,即自身带的数据库derby作为数据存储,这样的话数据并不安全,并且如果启动多个默认配置下的nacos节点,数据存储也存在一致性的问题。为了解决这个问题,nacos采用了集中式存储的方式来支持集群化部署,目前只支持Mysql的存储。意思就是说,集群环境搭建好后,多个nacos节点共用一个mysql数据库。

准备

准备好至少三台服务器,1 nginx+ 3 nacos+ 1 mysql

每台nacos服务器上都需要有JDK环境的支持。

1、安装好JDK环境:JDK安装
2、安装好MySQL:Mysql安装
3、安装好nginx:Nginx安装
3、准备Nacos安装包
Nacos下载地址:下载地址
在这里插入图片描述

安装

我的nacos放在了 /usr/local/nacos 目录下了,执行解压缩:

解压

tar -zxvf nacos-server-1.1.4.tar.gz

在这里插入图片描述
查看目录:
在这里插入图片描述

集群环境搭建

MySQL数据库配置

进入nacos官网,找到集群搭建对应的mysql执行语句
https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html
在这里插入图片描述
复制执行语句源文件,在自己的mysql服务器中执行,用来新建自己的nacos集群使用的数据库。
在这里插入图片描述
打开config_info表,会发现目前为空。

集群环境配置

三台nacos服务器都需要进行以下操作

1、拷贝文件

进入配置文件目录,找到cluster.conf文件和application.properties文件,并拷贝

cd conf/

cp cluster.conf cluster.conf.bk
cp application.properties application.properties.bk

在这里插入图片描述

2、文件配置

cluster.conf文件中进行集群环境配置

vim cluster.conf

在这里插入图片描述
application.properties文件中进行数据库的配置

vim application.properties

在文件的最后,写明nacos集群需要使用的数据库地址,以及账号密码。

spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://192.168.237.148:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456

在这里插入图片描述

3、启动三台 nacos服务

cd ..
cd bin/
ls

在这里插入图片描述
启动命令

./startup.sh

停止命令

./shutdowm.sh

启动成功之后访问三台服务地址:http://服务ip:8848/nacos,查看效果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看到三个节点成功启动,并且使主从机制。

nginx虚拟ip地址配置

三台nacos,我们在项目中全部配置是非常麻烦的,不便于维护,这里我们引入nginx做反向代理,进行一个虚拟ip的映射,这样就可以项目中只访问一个虚拟地址,路由到nginx,由nginx为我们做负载访问具体的nacos服务。

修改nginx配置文件nginx.conf
在这里插入图片描述

vim nginx.conf

在这里插入图片描述
使用nginx地址进行访问:http://192.168.237.148:1111/nacos
在这里插入图片描述
配置成功

测试

我们在界面上手动添加配置文件,查看数据是否存放到mysql中。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看到数据已经入库。

我们启动项目,再次进行测试访问:
在这里插入图片描述
在这里插入图片描述
访问结果,拿到数据:
在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是 Spring Cloud Alibaba + Spring Boot + Nacos + Mybatis Plus + MySQL 项目搭建步骤: 1. 创建 Spring Boot 项目 使用 Spring Initializr 创建一个新的 Spring Boot 项目,选择需要的依赖,例如 Web、MySQL、Mybatis Plus 等。 2. 集成 Spring Cloud Alibaba 在 pom.xml 中添加 Spring Cloud Alibaba 的依赖: ``` <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2.2.1.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> ``` 3. 集成 Nacos 在 pom.xml 中添加 Nacos 的依赖: ``` <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> ``` 在 application.properties 中添加 Nacos 的配置: ``` spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 ``` 4. 集成 Mybatis Plus 在 pom.xml 中添加 Mybatis Plus 的依赖: ``` <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version> </dependency> ``` 5. 集成 MySQL 在 pom.xml 中添加 MySQL 的依赖: ``` <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> ``` 在 application.properties 中添加 MySQL 的配置: ``` spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8 spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver ``` 6. 编写代码 在 src/main/java 目录下创建包和类,编写业务逻辑代码和数据访问代码。 7. 启动项目 运行项目,访问 http://localhost:8080 可以看到项目的首页。 以上是 Spring Cloud Alibaba + Spring Boot + Nacos + Mybatis Plus + MySQL 项目搭建步骤,希望能对你有所帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值