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

相关推荐
小猪咪piggy3 小时前
【微服务】(1) Spring Cloud 概述
java·spring cloud·微服务
尘世中一位迷途小书童5 小时前
版本管理实战:Changeset 工作流完全指南(含中英文对照)
前端·面试·架构
尘世中一位迷途小书童5 小时前
VitePress 文档站点:打造专业级组件文档(含交互式示例)
前端·架构·前端框架
m0_651593916 小时前
Netty网络架构与Reactor模式深度解析
网络·架构
xrkhy9 小时前
微服务之SpringCloud Alibaba(注册中心Nacos)
spring cloud·微服务·架构
会开花的二叉树9 小时前
C++微服务 UserServer 设计与实现
开发语言·c++·微服务
虫小宝9 小时前
Java分布式架构下的电商返利APP技术选型与架构设计实践
java·分布式·架构
唐僧洗头爱飘柔952710 小时前
【SpringCloud(6)】Gateway路由网关;zuul路由;gateway实现原理和架构概念;gateway工作流程;静态转发配置
spring·spring cloud·架构·gateway·请求转发·服务降级·服务雪崩
来旺10 小时前
互联网大厂Java面试全解析及三轮问答专项
java·数据库·spring boot·安全·缓存·微服务·面试
白衣鸽子11 小时前
RPO 与 RTO:分布式系统容灾的双子星
后端·架构