1. 配置隔离
1.1. Nacos配置管理模型
Nacos(Naming and Configuration Service)是一个开源的分布式系统服务发现、配置管理和服务管理平台,它支持多种语言和多种环境下的微服务架构。Nacos提供了配置管理、服务发现、动态配置、服务跟踪、流量管理等一系列功能。在Nacos中,配置管理模型是其中一个重要的功能。
Nacos的配置管理模型分为三个部分:
1.数据类型
Nacos支持多种数据类型,包括文本(TEXT)、JSON、XML、YAML等。不同的数据类型对应不同的数据解析方式,可以根据需求选择不同的数据类型。
2.数据集
在Nacos中,配置数据被组织成一个个的数据集。每个数据集都有一个唯一的ID和一个数据类型。数据集中包含了一组键值对,每个键值对对应一个具体的配置项。数据集可以用来管理一组相关的配置项,比如数据库连接参数、缓存配置等。
3.命名空间
命名空间是一个独立的配置环境,用于隔离不同的应用程序或不同的部署环境。每个命名空间都有一个唯一的命名空间ID和一组数据集。命名空间可以用来管理不同的配置环境,如测试环境、预发布环境和生产环境等。
通过配置管理模型,Nacos提供了一个灵活的配置管理方式,可以根据实际需求进行配置管理和部署,使得应用程序可以快速适应不同的部署环境和配置需求
Namespace Group DataId介绍:
Namespace: 代表不同的环境的配置隔离, 如: 开发、测试, 生产等
Group: 可以代表某个项目, 如XX医疗项目, XX电商项目
DataId: 每个项目下往往有若干个工程, 每个配置集(DataId)是一个工程的主配置文件
获取配置集需要指定:
nacos服务地址,必须指定
namespace,如不指定默认public
group,如不指定默认 DEFAULT_GROUP
dataId,必须指定
1.2. namespace隔离
前面已经介绍过,命名空间(Namespace)是用于隔离多个环境的(如开发、测试、生产),而每个应用在不同环境的同一个配置(如数据库数据源)的值是不一样的。因此,我们应针对企业项目实际研发流程、环境进行规划。如某软件公司拥有开发、测试、生产三套环境,那么我们应该针对这三个环境分别建立三个namespace。
1.2.1. 新建namespace
新建namespace
建立好所有namespace后,在配置管理与服务管理模块下所有页面,都会包含用于切换namespace的选项卡,如下图:
1.2.2. 克隆配置文件
点击左下角克隆按钮,将会弹出克隆对话框,此功能可用于将配置迁移到其他Namespace。
选择目标空间
1.2.3. 读取配置文件
1.3 group隔离
1.3.1 新建配置文件
新建配置文件并修改Group名
不同的配置分组下可以有相同的配置