深入浅出讲解 MSE Nacos 2.0 新特性|学习笔记(二)

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
简介: 快速学习深入浅出讲解 MSE Nacos 2.0 新特性

开发者学堂课程【深入浅出讲解 MSE Nacos 2.0新特性深入浅出讲解 MSE Nacos 2.0 新特性】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/962/detail/14883


深入浅出讲解 MSE Nacos 2.0 新特性

Nacos2.0 性能对比:

版本

规格

节点数

场景:每秒处理服务注册的请求数(TPS)

最大支撑实例数

最大支撑连接数

基础版

2 Core 4 GiB

3

2000

6000

5

2300

10000

4 Core 8 GiB

3

6000

11500

8 Core 16 GiB

3

11200

18000

5

16800

30000

专业版

2 Core 4 GiB

3

6000

42000

8000

4 Core 8 GiB

3

12000

72000

16000

8 Core 16 GiB

3

22000

110000

24000

 

此表的最大实例数和TPS都是能够保证服务能够稳定运行的数据,在基础版3节点4GIB的情况下,最大实例数为6000,则在实测时最大值能达到10000+,如果挂掉一台机器,整个两级联系不能稳定进行。整体专业版对比基础版,规模大概提升了十倍,最大值情况大概提升了7-10倍左右。

2.Nacos2.0 性能一升级前后 CPU 性能曲线:

图片4.png

第一阶段使用客户端1.X版本,属于基础版本,整体实例数从0增加6000最后增加10000,最后值增加14000无法继续增大CPU使用率达到80%-90%会报错,降低实例数到6000

第二阶段将mse基础版升级到专业版,实例数增加14000无法继续增加,此时性能压测曲线与之前无较大差异,因为服务端依旧使用1.X版本。

第三阶段将客户端分批升级到2.0版本,保持实例数在14000的状态下,此时CPU的指标曲线不断下降到百分之20左右,整体服务状态处于稳定态无报错的情况。

从上图可看出,在升级前后,基础版和专业版性能差别较大,在14000左右的规模下,基础版已经压满客户端存在报错,升级后,在14000实例下,CPU保持在20%以上,出于稳定状态无抖动

3. Nacos2.0 性能一配置管理

配置管理通常情况下出于读多少写的情况,相对简单。主要为单服务器独的请求及连接数。

l 压单台

l 配置读写

l SDK连接数

图片5.png

4.Nacos2.0 性能一结论

服务发现:Nacos2.0相较于1.X提升约10倍

配置管理:提升约7倍

图片6.png

四、Nacos 平滑升级专业版

1.如何升级:

对于新用户,可以直接创建专业版实例。老用户可以通过对低版本的Nacos实例进行实例变更一键升级MSE可以在后台被迫升级,但由于NacosV1V2版本数据结构不同,开始Nacos结构默认双写,在升级过程中,数据从V1同步V2版本。升级完成后,数据从V2同步至V1,最后MSE会关闭双写逻辑MSE会在后台自动完成。

随后mse的端口会增加9848(GRPC)端口。当Nacos 完全升级到2.0版本之后,应用SDK1.X升级2.0版本。应用升级完成后,应用端和摄入端运行于2.0架构以下。

图片7.png

2.版本间的渐入情况:

整体原则为高版本的服务端键入低版本的客户端,但高版本的客户端不一定能访问低版本的服务端。因此1.X客户端可以访问基础版及专业版。由于1.X不支持GRPC协议,因此Nacos2.0客户端不能访问基础版只能访问专业版。

五、Nacos 配置安全管理

1、Nacos 配置加解密一数据安全

用户在使用配置数据时,可能会将用户信息、数据库密码等敏感信息存放在Nacos中,而Nacos存储配置数据为明文传输明文存储,当数据库内容泄露或者传输过程中被抓包时导致敏感配置向数据泄露,安全风险非常高,常用的http协议可以解决传输中安全问题,但解决不了存储安全问题。解决方式为直接在客户端对数据进行加密,在传输存储过程中为加密数据

图片8.png

2、Nacos 配置加解密一加密算法

为了对整体加密算法和流程的安全性引入第三方的加密系统。阿里云使用KMS加强整体加密的安全性。为了整体加密效率,使用对称加密算法。由于对称加密在传输密文的过程中同时传输密钥,因此对密钥加密,整体采用二级加密方式。

当SDK发布数据时,首先从KMS得到密钥及加密密钥,同时使用密钥进行数据加密,并将加密数据及加密密钥存储至nacos。另一侧SDK从nacos中得到储存的加密数据及密钥,通过得到的密钥访问KMS 从而获得明文密钥,使用明文密钥对加密数据解密,获得明文数据。此过程解决nacos数据存储、传输的数据安全问题。

图片9.png

整体Nacos为了键入之前明文数据的逻辑并且不是所有全部需要加密,只有少量的敏感数据需要加密Nacos只对固定的前缀的数据进行加密,即带有前缀cipher-kms-aes-256-、cipher-kms-aes-128-算法。开源侧可用SDK SPI插件实现。可自行扩展。

在使用加密数据时可以使用SDK以及MSE控制台加解密,首先访问KMS对数据加密存储。数据解密后明文展示,过程与明文存储过程基本一致。

图片10.png

使用SDK进行加密功能时,要求SDK版本在1.4.2以上,同时引入MSE内部实现nacos-client加解密插件。在初始化SDK时授权KMS 加解密权限,因为SDK首先访问KMS的权限。

引入加解密插件:

com.alibaba.nacos

nacos-client

1.4.2

com.alibaba.nacos

nacos-client-mse-extension

1.0.1

SDK加解密:

Properties properties = new Properties();

properties.put(”serverAddr”,“mse-xxxxxx-p.nacos-ans.mse.aliyuncs.com”);

properties.put("accessKey”,“XXXXXXXXXXXXXX”)

properties.put(“secretKey”,“XXxXxXXxXXxXxx”)

properties.put("keyIa”,“alias/acs/mse”);

properties.put(“regionrd”“en-hangzhou”);

ConfigService configService=NacosFactory.createConfigService(properties);

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
2月前
|
存储 Java Nacos
谈谈Nacos Stream 作为微服务异步消息框架相关特性
【5月更文挑战第21天】在本篇技术文章中,我们将深入探讨 Nacos Stream 作为微服务异步消息框架的关键特性,包括服务发现与健康监测、动态配置服务的概念、原理以及如何在实际应用中利用这些功能。
44 6
|
2月前
|
人工智能 Serverless 测试技术
nacos常见问题之Serverless 应用引擎2.0不支持 MSE nacos如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
|
2月前
|
运维 监控 安全
MSE Nacos 配置变更审计平台使用指南
MSE Nacos 配置变更审计平台使用指南
|
2月前
|
负载均衡 网络协议 数据管理
深入解析Nacos:服务发现、配置管理与更多特性解析
深入解析Nacos:服务发现、配置管理与更多特性解析
271 0
|
2月前
|
Kubernetes Nacos 开发者
Nacos 官网重大升级,提供官方发行版下载包,3.0 里程碑版本新特性预告
Nacos 官网重大升级,提供官方发行版下载包,3.0 里程碑版本新特性预告
1070 5
|
2月前
|
网络协议 Nacos 数据安全/隐私保护
MSE微服务引擎注册问题之nacos注册失败如何解决
MSE(MicroService Engine)微服务引擎是阿里云提供的一种微服务治理平台,它通过提供服务注册、发现、配置管理等功能来支撑微服务架构的稳定运行;本合集旨在梳理MSE微服务引擎的核心特性、部署流程,以及实践中可能遇到的问题和相应的解决方案,以助力用户优化微服务架构的实施和管理。
|
2月前
|
弹性计算 Dubbo 应用服务中间件
MSE微服务引擎安装问题之nacos-sync安装失败如何解决
MSE(MicroService Engine)微服务引擎是阿里云提供的一种微服务治理平台,它通过提供服务注册、发现、配置管理等功能来支撑微服务架构的稳定运行;本合集旨在梳理MSE微服务引擎的核心特性、部署流程,以及实践中可能遇到的问题和相应的解决方案,以助力用户优化微服务架构的实施和管理。
|
1天前
|
缓存 负载均衡 Java
Nacos 集群部署时性能优化配置
Nacos 集群部署时性能优化配置
|
1天前
|
存储 关系型数据库 MySQL
Nacos 的配置过程
Nacos 的配置过程
|
5天前
|
缓存 监控 Java
深入解析Nacos配置中心的动态配置更新技术
深入解析Nacos配置中心的动态配置更新技术