【微服务】Nacos数据持久化以及集群的搭建

本文涉及的产品
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 【微服务】Nacos数据持久化以及集群的搭建

数据持久化

  • 在单机模式时nacos使用嵌入式数据库实现数据存储,0.7版本后增加了mysql存储数据。

初始化数据库

  • 在conf目录下,提供了nacos-mysql.sqlSQL语句,进行数据库的初始化
  • 要求:5.6+ mysql
  • 注意:如果使用mysql 5.5,需要修改sql语句

image.png

  • 提供的SQL语句没有创建database,手动创建nacos_config  

image.png

开启mysql存储

  • conf目录下,提供了application.properties可以修改数据库配置信息

image.png

### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config_2_1?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=1234

测试

  • 添加配置信息

image.png

  • 检查数据库存储  

image.png

Nacos集群搭建

概述

  • 3个或3个以上Nacos节点才能构成集群
  • 配置数据源
  • 使用内置数据源

startup.cmd -p embedded

  • 使用外置数据源(MySQL,参考4.4.2)
  • 在一台主机配置多个节点的端口号==不能连续==。
  • 例如:8841/8842/8843 不可用
  • 例如:8841/8843/8845 可用

配置步骤

image.png

节点1:配置Nacos8841

  1. 配置数据源
  2. 修改端口号:8841
  3. 配置集群配置文件
  4. 启动服务:startup.cmd
  • 节点2:复制Nacos8843
  • 修改端口号:8843
  • 启动服务:startup.cmd
  • 节点3:复制Nacos8845
  • 修改端口号:8845
  • 启动服务:startup.cmd  

配置详情

1)配置节点1

  1. 拷贝nacos,并重命名 nacos-2.1.0-8841
  2. 配置数据源

image.png

修改端口号:8841  

image.png

配置集群配置文件:conf/cluster.conf

image.png

启动服务:startup.cmd

image.png

成功启动  

3.png

2)配置节点2

  • 复制节点nacos-2.1.0-8841,并重命名nacos-2.1.0-8843
  • 修改端口号

image.png

启动服务

4.png

3)配置节点3

  • 复制节点nacos-2.1.0-8841,并重命名nacos-2.1.0-8845
  • 修改端口号

image.png

启动服务

5.png

4)配置成功

6.png

常见错误

1)db.num is null

  • 错误提示:db.num is null
  • 原因:没有配置数据库

image.png

2) unable to start embedded tomcat

  • 错误提示:unable to start embedded tomcat
  • 原因1:没有编写集群配置文件

image.png

3)内存不足

  • 提示信息:
  • 原因:内存不足,修改分配内存大小

image.png

4) Cannot determine JNI library name for ARCH='x86' OS='windows 10' name='rocksdb'

  • 提示信息:Cannot determine JNI library name for ARCH='x86' OS='windows 10' name='rocksdb
  • 原因:nacos与jdk 系统位数(64位和32位,)不一致

5) JNI相关错误

  • 提示信息: C:\Users\Administrator\AppData\Local\Temp\/librocksdbjni1411968517689619912.dll: Can't find dependent libraries
  • 原因:JAVA_HOME配置的jdk安装目录,而不是jre安装目录
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
26天前
|
存储 网络协议 Nacos
高效搭建Nacos:实现微服务的服务注册与配置中心
Nacos(Dynamic Naming and Configuration Service)是阿里巴巴开源的一款动态服务发现、配置管理和服务管理平台。它旨在帮助开发者更轻松地构建、部署和管理分布式系统,特别是在微服务架构中。
294 81
高效搭建Nacos:实现微服务的服务注册与配置中心
|
2月前
|
监控 网络协议 Nacos
Nacos:构建微服务架构的基石
Nacos:构建微服务架构的基石
147 2
|
2月前
|
Java 网络安全 Nacos
Nacos作为流行的微服务注册与配置中心,其稳定性与易用性广受好评
Nacos作为流行的微服务注册与配置中心,其稳定性与易用性广受好评。然而,“客户端不发送心跳检测”是使用中常见的问题之一。本文详细探讨了该问题的原因及解决方法,包括检查客户端配置、网络连接、日志、版本兼容性、心跳检测策略、服务实例注册状态、重启应用及环境变量等步骤,旨在帮助开发者快速定位并解决问题,确保服务正常运行。
61 5
|
2月前
|
Dubbo Cloud Native 应用服务中间件
阿里云的 Dubbo 和 Nacos 深度整合,提供了高效的服务注册与发现、配置管理等关键功能,简化了微服务治理,提升了系统的灵活性和可靠性。
在云原生时代,微服务架构成为主流。阿里云的 Dubbo 和 Nacos 深度整合,提供了高效的服务注册与发现、配置管理等关键功能,简化了微服务治理,提升了系统的灵活性和可靠性。示例代码展示了如何在项目中实现两者的整合,通过 Nacos 动态调整服务状态和配置,适应多变的业务需求。
81 2
|
2月前
|
网络安全 Nacos 开发者
Nacos作为流行的微服务注册与配置中心,“节点提示暂时不可用”是常见的问题之一
Nacos作为流行的微服务注册与配置中心,其稳定性和易用性备受青睐。然而,“节点提示暂时不可用”是常见的问题之一。本文将探讨该问题的原因及解决方案,帮助开发者快速定位并解决问题,确保服务的正常运行。通过检查服务实例状态、网络连接、Nacos配置、调整健康检查策略等步骤,可以有效解决这一问题。
47 4
|
2月前
|
Java 网络安全 Nacos
Nacos作为流行的微服务注册与配置中心,其稳定性和易用性备受青睐。
Nacos作为流行的微服务注册与配置中心,其稳定性和易用性备受青睐。然而,实际使用中常遇到“客户端不发送心跳检测”的问题。本文深入探讨该问题的原因及解决方案,帮助开发者快速定位并解决问题,确保服务正常运行。通过检查客户端配置、网络连接、日志、版本兼容性、心跳策略、注册状态、重启应用和环境变量等步骤,系统地排查和解决这一问题。
62 3
|
2月前
|
安全 Nacos 数据库
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改。本文详细探讨了这一问题的原因及解决方案,包括限制公网访问、使用HTTPS、强化数据库安全、启用访问控制、监控和审计等步骤,帮助开发者确保服务的安全运行。
108 3
|
2月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
177 6
|
2月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
65 1
|
1月前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
230 69
从单体到微服务:如何借助 Spring Cloud 实现架构转型