参看:Nacos 快速开始
2.4.0 版本是Nacos2.X的又一个功能性版本,此版本的更新主要在 Nacos 的安全性、扩展功能和改进用户体验方面的持续努力,为用户提供了更安全、更灵活的服务管理平台。版本主要的功能如下:
- 增强安全性:Nacos 现在支持维护人员在初始化时设置管理员用户 nacos 的密码,替代默认密码,以提高 Nacos 集群的默认安全性。此外,默认情况下禁用了 Derby OPS API,以防止在单例模式部署时,未启用身份验证的用户遇到相关风险的误报问题。如果维护人员需要使用该 API 进行 Derby 数据的维护和查询,可以通过设置 nacos.config.derby.ops.enabled=true 来启用此功能。
- TLS Grpc 通信:Nacos 支持作为可选功能在集群节点间使用 TLS Grpc 通信,以增强 Nacos 的安全性。这意味着 Nacos 现在不仅支持客户端与服务器之间的 TLS 通信,还支持集群节点间的安全通信。
- 扩展功能:在注册中心模块中,Nacos 允许用户在回调 Subscriber 之前扩展 Selector,不仅可以根据健康状态和集群选择服务实例,还可以支持更多自定义逻辑。此外,Nacos 客户端通过新的事件支持回调服务差异,以减少在 Subscriber 中实现的缓存和比较逻辑。
- 控制台和插件支持:Nacos 控制台现在支持更多配置使用,并增强了插件的使用,例如支持将所有元数据添加到 Prometheus SD 协议中以及支持阿里云 RAM V4 签名。
下载
Nacos Server 下载
解压
unzip nacos-server-2.4.0.1.zip
单机启动
sh startup.sh -m standalone
启动成功
访问:http://127.0.0.1:8848/nacos/index.html
可选配置
将内置数据库换为MySQL
# 在nacos/conf/application.properties中进行如下配置
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=nacos
db.password=nacos
SQL文件:https://github.com/alibaba/nacos/blob/2.3.0/config/src/main/resources/META-INF/nacos-db.sql
开启鉴权
Authorization
nacos2.4.0模式是关闭鉴权的,可以直接进入管理页面,不需要登录。但是很多服务或者漏洞扫描软件,都要求开启鉴权。
Nacos默认是关闭鉴权,不需要用户名和密码就可以登录,开启鉴权的步骤主要是修改conf文件夹下的application.properties文件:
1、开启鉴权
nacos.core.auth.enabled=true
2、配置身份识别的key与value
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
3、配置生成用户登陆临时accessToken所使用的密钥
这个秘钥必须是base64格式,而且有长度限制,编码之前最好32个字符以上,而且复杂度高。可以通过这个网站,计算base64, https://base64.us/
nacos.core.auth.plugin.nacos.token.secret.key=U2VjcmV0S2V5MDEyMzQ1NTAxMjM0NTY3ODMzQ1TAxMjM0NTY3ODluYWNvcw==
注意:鉴权开关是修改之后立马生效的,不需要重启服务端。动态修改
token.secret.key
时,请确保token是有效的,如果修改成无效值,会导致后续无法登录,请求访问异常。