IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Nacos 集群与持久化配置(2.0.+ 版) -> 正文阅读

[Java知识库]Nacos 集群与持久化配置(2.0.+ 版)

Nacos 单机版

一、基于 nacos 嵌入式数据库
1、Nacos 的下载地址:https://nacos.io/zh-cn/
2、官网开发手册说明:https://nacos.io/zh-cn/docs/deployment.html
3、Nacos Server 需要 Java 8 的运行环境。自行安装。(Linux环境下安装 JDK8
4、解压 Nacos 的安装包,直接运行 bin 目录下的 startup.cmd 或 linux 的 startup.sh。如果报错,也可以修改设置成独立模式(即单机版):修改 startup.cmd 的 set MODE = "standalone"
在这里插入图片描述

5、安装运行成功后直接访问:http://localhost:8848/nacos默认的账号密码都是:nacos。登录成功后页面如下:
在这里插入图片描述
二、Nacos 自带 derby 嵌入式数据库切换到 MySQL数据库(持久化)
1、默认 Nacos 使用嵌入式数据库(derby)实现的存储。所以,如果启动多个默认配置的Nacos节点,数据存储是存在一致性问题的。为了解决这个问题,Nacos 采用集中式存储的方式来支持集群化部署,目前只支持MySQL的存储。
2、derby 切换到 mysql 数据库步骤:
(1)首先创建 nacos_config 数据库:设置并指定 执行引擎Innodb字符编码UTF-8等。
(2)执行 sql 脚本:/nacos-server-2.0.3/nacos/conf/nacos-mysql.sql。
(3)进入 nacos 的 config 文件夹下找到 application.properties,并指定数据源配置。

# 数据源类型
spring.datasource.platform=mysql

# 数据源实例数
db.num=1
# 连接数据源信息
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456

Nacos 集群与持久化配置(重要)

一、官网开发手册说明及架构图:https://nacos.io/zh-cn/docs/deployment.html。图形解释说明如下:在这里插入图片描述

准备工作(推荐使用Linux系统)

1、64位 JDK 1.8+
2、Maven 3.2.x+
3、一个或多个高可用 Nginx:https://blog.csdn.net/qq_36763419/article/details/109534815
4、三个或以上 Nacos
5、一个或多个高可用(主从复制) MySQL

Nacos 集群配置步骤(重点)


!!!注意:nacos 按照步骤配置完成后复制两份并修改 application.properties 配置文件的 server.port 服务端口号。

1、Linux 服务器上 MySQL 数据库配置
(1)首先创建 nacos_config 数据库:设置并指定 执行引擎Innodb字符编码UTF-8等。
(2)执行 sql 脚本:/nacos-server-2.0.3/nacos/conf/nacos-mysql.sql。

2、application.properties 配置

#修改nacos 的启动端口号为8840作为集群的第一个节点
server.port=8840

# 数据源类型
spring.datasource.platform=mysql

# 数据源实例数
db.num=1
# 连接数据源信息
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456

3、Linux 服务器上 Nacos 的集群 cluster.conf

# 配置格式 ip:port ,注意:这个 ip 不能写127.0.0.1 或 localhost ,必须是 Linux 命令 hostname -i 能够识别的 IP,或通过 ifconfig 可以查到 ip。
192.168.253.130:8840
192.168.253.130:8850
192.168.253.130:8860

4、编辑 Nacos 的启动脚本 startup.sh,使它能够接受不同的启动端口
通常单机版的启动,都是 ./startup.sh 即可。但是,集群启动,我们希望可以类似其他软件的 shell 命令,可以传递不同的端口号启动不同的 nacos 实例。命令:./start.sh -p port 表示启动端口号,启动的端口号和 cluster,conf 中配置的一致。
(1)修改一:修改配置传入的参数,即 p 表示的是端口 port。
在这里插入图片描述
(2)修改二:配置安装传入的端口参数启动
在这里插入图片描述
(3)修改三:将集群模式下的堆内存与栈内存大小修改为128m。避免程序启动是,导致虚拟机无法分配内存的错误。
在这里插入图片描述
(4)启动 nacos 集群,分别进入 nacos8840、nacos8850、nacos8860 的 bin 目录下,通过指定端口启动

# ./starup.sh -p <port>
./startup.sh -p 8840
# 或
sh /.../nacos/bin/startup.sh -p <port>

# 验证三个节点,如果是 3 则表示三个 nacos 节点全部启动成功
ps -ef|grep nacos | grep -v grep|wc -l

5、Nginx 的配置,由它作为负载均衡器
(1)修改 Nginx 的配置文件:nginx.conf

http{
	# upstream 模块不能使用下划线命名,Nginx不能识别
	upstream nacosCluster{
        server 127.0.0.1:8840;
        server 127.0.0.1:8850;
        server 127.0.0.1:8860;
    }
    server {
        listen       8848;
        server_name  localhost;
        location / {
            proxy_pass http://nacosCluster;
        }
    }
}

(2)进入目录下,按照指定启动:

cd /usr/local/nginx/sbin
./nginx -c /usr/local/nginx/conf/nginx.conf

6、访问 nginx ,转发结果如下

在这里插入图片描述

7、启动我们的微服务并注册 nacos 集群

在这里插入图片描述

8、配置中心配置:在 nacos 配置管理界面中创建的配置,能够在 mysql 数据库中的 config_info 表中插入一条数据,即 nacos 集群配置中心成功。

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

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-11-15 15:42:36  更:2021-11-15 15:43:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:57:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码