微服务: 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就配置完成了.

相关推荐
Nile8 小时前
解密openclaw底层pi-mono架构系列一:3.pi-tui
架构
幂律智能8 小时前
Agent × 流程引擎融合架构:从静态流程到智能流程编排
人工智能·架构·agent
Python小老六8 小时前
冯诺依曼架构 vs 哈佛架构 对比
stm32·单片机·嵌入式硬件·架构
xiaodaidai丶8 小时前
解决Sa-Token在 Spring MVC + WebFlux 混合架构中流式接口报错SaTokenContext 上下文尚未初始化的问题
spring·架构·mvc
wuchen10049 小时前
网狐的定时器引擎架构理解
架构·定时器·网狐
@PHARAOH9 小时前
HOW - Moleculer 微服务构建分布式服务系统
微服务·云原生·架构
KKKlucifer9 小时前
零信任架构下的安全服务:动态防御与持续合规双驱动
安全·架构
偷吃的耗子9 小时前
大数据报表系统技术方案与业务方案设计
大数据·架构
Nile10 小时前
解密openclaw底层pi-mono架构系列一:1.从架构到实战
架构
霖霖总总10 小时前
[Redis小技巧5]Redis Sorted Set 深度解析:从跳表原理到亿级排行榜架构
redis·架构