微服务: Nacos部署安装与properties配置

Nacos 是阿里巴巴开源的一款用于动态服务发现、配置管理和服务管理的基础设施。Nacos 这个名称源自于 "Dynamic Naming and Configuration Service"。它主要是用于解决微服务架构中服务发现和配置管理的问题。

Nacos 单机模式的部署安装

1. 安装(Windows环境)

Nacos是Java实现的, 所以在运行部署之前必须要求JDK 1.8以上. 其次, 要下载好Nacos的包. 然后解压该编译好的压缩包即可完成Nacos的安装。

Nacos是一个服务, 有了这个服务我们才能在它的基础上进行配置文件读取, 服务注册等功能.

安装注意事项:

  1. 不要将 Nacos 安装包放在系统盘;

  2. 安装包不能出现在中文路径下。

2. 启动

解压完成后进入 bin 路径, 可以看到一些启动程序脚本, 那么在 Windows 下我们使用 startup.cmd 来启动 Nacos. (MAC 或 Linux 使用 startup.sh 启动)

注意: 运行不是直接双击该命令脚本.

启动步骤:

如图所示, 在文件夹中输入cmd进入命令行窗口, 也就是在该启动程序的目录下 通过命令行窗口的方式启动Nacos, 打开后, 我们在命令行窗口中输入如下内容, 然后敲下回车:

复制代码
startup.cmd -m standalone

启动成功的Nacos如下图所示.

注意一定要看到

"nacos is starting with standalone"

这行字

如果没有看到就说明standalone敲错了, Nacos是启动不了的.

或者端口port: 8848被占用了, Nacos也是启动不起来的.

在窗口中我们可以看到端口号以及启动的console, 也就是Nacos的地址, 那么复制地址之后可以防访问Nacos的控制台了.

3. 开启控制台授权登录

找到 Nacos 安装目录的中的 conf/application.properties 文件:

然后找到以下几个内容的key值并将value修改为以下配置:

复制代码
nacos.core.auth.enabled=true
nacos.core.auth.system.type=nacos
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
# 访问 Nacos敏感接口的白名单,key 和 value 必须要有值
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos

然后回到已经启动的Nacos命令行窗口, Ctrl+C关闭Nacos再重新启动一次Nacos.

再次运行之后访问console的地址, 就可以通过nacos的账号密码登录控制台.

4. 配置数据源为MySQL

Nacos 单机模式默认使用的是内置的嵌入式数据库 Derby 作为数据存储的,但是 Derby 不适合承载生产环境大规模部署,因为它有以下限制:

  • 数据存储容量最大只有 2GB.
  • 不支持集群模式下数据的高可用复制;
  • 性能和并发能力有限。

因此,在生产环境中使用单机模式时,可以使用外置数据库作为数据存储,比如 MySOL

数据源切换为 MySQL

Nacos 0.7 版本增加了支持 MySQL 数据源能力,具体的操作步骤:

  1. 安装数据库,版本要求: 5.6.5+;

  2. 初始化 MySQL 数据库,数据库初始化文件: mysql-schema.sql;

  3. 修改 Nacos 安装目录中 conf/application,properties 文件,增加支持 MySQL 数据源配置,添加 MySQL 数据源的 URL、用户名和密码,配置如下:

    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
    db.user.0=root
    db.password.0=your_password

再以单机模式启动 Nacos,Nacos 所有写嵌入式数据库的数据都写到了 MySQL。

最后重启 Nacos 服务。

至此我们的Nacos就配置完成了.

相关推荐
码农飞哥10 小时前
互联网大厂Java求职面试实战:Spring Boot到微服务全景解析
java·spring boot·微服务·maven·hibernate·技术栈·面试技巧
MZWeiei10 小时前
Spark SQL 运行架构详解(专业解释+番茄炒蛋例子解读)
大数据·分布式·sql·架构·spark
#金毛10 小时前
一、HAL库的设计理念详解:从架构到实践
stm32·嵌入式硬件·架构
是麟渊10 小时前
【大模型面试每日一题】Day 17:解释MoE(Mixture of Experts)架构如何实现模型稀疏性,并分析其训练难点
人工智能·自然语言处理·面试·职场和发展·架构
好吃的肘子11 小时前
MongoDB 高可用复制集架构
数据库·mongodb·架构
TsingtaoAI11 小时前
医疗系统开发架构和技术路线建议-湖南某三甲医院
架构·医疗ai系统·医疗信息化·医疗系统架构·医疗ai机构
敲代码的 蜡笔小新11 小时前
【行为型之命令模式】游戏开发实战——Unity可撤销系统与高级输入管理的架构秘钥
unity·设计模式·架构·命令模式
码上飞扬12 小时前
MongoDB数据库深度解析:架构、特性与应用场景
数据库·mongodb·架构
九章云极AladdinEdu13 小时前
GPU SIMT架构的极限压榨:PTX汇编指令级并行优化实践
汇编·人工智能·pytorch·python·深度学习·架构·gpu算力
blues_C14 小时前
【专栏启动】开篇:为什么是 Django + Vue3?测试平台的技术选型与架构蓝图
架构·django·测试平台