微服务命名空间管理

在微服务场景下,为了对不同环境下的微服务应用、接口作出隔离和区分,MSE微服务治理将微服务组织分为微服务命名空间、应用两层概念,分别实现对环境的隔离、授权。本文介绍如何通过微服务命名空间在MSE上组织您的微服务,以及如何管理微服务命名空间。

什么是微服务命名空间

通常情况下,用户有生产、测试、开发环境,各环境的资源是隔离的。在MSE微服务治理中,不同微服务命名空间下,应用的微服务治理配置严格隔离,不跨命名空间生效。同样的微服务应用,在不同的环境部署会需要不同的微服务治理配置。此类情况下,您可以使用微服务命名空间将不同环境中的应用隔离。

命名空间.png

微服务命名空间和Kubernetes命名空间是独立的概念。在接入应用时,您可以通过在Pod或者对应的Kubernetes命名空间上设置LabelmseNamespace: ${命名空间名称}参数来指定应用接入MSE时的命名空间。

93b2bbc2d754f96583c011d2625f202b..png

例如,在实际场景中,您可以将测试环境的应用全部接入微服务命名空间test(例如test/example-app),将生产环境的所有应用全部接入微服务命名空间prod(例如prod/example-app)。当您需要使用MSE微服务治理功能时,您可以在test/example-app应用上设置并验证。验证通过后,再返回prod/example-app应用设置同样的功能。

说明

在不同微服务命名空间下,推荐您使用独立的数据库、消息队列集群、Kubernetes集群和Nacos注册配置中心实例,以防止测试环境的变更影响生产环境,保障稳定性。

什么是MSE中的应用

微服务应用一般指提供了一组微服务的Java进程,一个微服务应用可以独立完成某些比较内聚的微服务业务逻辑,同时有固定的运维、开发人员。

对应到部署模式上,一个MSE微服务应用对应一组Deployment。

在接入应用时,如果您在Pod上添加labelmseNamespace: prodmsePilotCreateAppName: ${应用名称},则会接入到prod微服务命名空间下的对应应用。应用名最大长度为63个字符。

应用场景

例如,您在同一个VPC内有三套环境,分别用于应用开发、测试和生产,可以为这三套环境分别创建一个微服务空间(如Dev、Test和Prod)。在这三个微服务空间中分别创建集群并部署应用,不同微服务空间下的应用互相隔离。

由于MSE不同版本功能不同,价格也不一致。对于企业版用户来说,有些时候并不是所有应用都需要运行态防护能力(比如Dev环境),可以按需将部分命名空间降级为专业版,其他命名空间默认为企业版(比如Prod环境),从而满足不同环境接入MSE的需求。

image

说明
  • 关于计费详情,请参见计费概述

  • 关于微服务治理不同版本的功能说明,请参见版本选型

创建微服务命名空间

  1. 登录MSE控制台

  2. 在左侧导航栏,选择治理中心 > 运维中心 > 微服务命名空间

  3. 微服务命名空间页面,单击创建微服务命名空间

  4. 创建微服务命名空间对话框配置微服务空间参数,然后单击确定

配置项

描述

名称

微服务空间的名称。

描述

微服务空间的描述。

编辑微服务命名空间

  1. 微服务命名空间页面,单击需要编辑的微服务命名空间操作列下的编辑

  2. 编辑微服务命名空间对话框,修改微服务命名空间的描述,编辑完成后,单击确定

降级微服务命名空间至专业版

微服务命名空间降级至专业版操作需要满足以下前提条件:

  • 当前用户版本为企业版。

  • 当前用户命名空间为企业版。

  1. 微服务命名空间页面,单击需要降级的微服务命名空间操作列下的降级至专业版

  2. 在确认对话框,单击确定

说明
  • 降级前企业版规则,不需要删除,后续系统也不会自动对其删除。但需要注意,企业版能力将会在应用重启后失效。降级后,当前命名空间下的应用将按照专业版计费。

  • 如果降级至专业版后,应用需要尽快重启,确保企业版能力不产生作用,如果不重启MSE可能会影响企业版能力SLA。

升级微服务命名空间至企业版

微服务命名空间升级至企业版操作需要满足以下前提条件:

  • 当前用户版本为企业版。

  • 降级为专业版的命名空间才有升级至企业版操作。

  1. 微服务命名空间页面,单击需要升级的微服务命名空间操作列下的升级至企业版

  2. 在确认对话框,单击确定

说明
  • 只有企业版用户,并且有降级为专业版的命名空间,才有升级至企业版操作。

  • 升级后,当前命名空间下的应用将按照企业版计费。

  • 如果命名空间从专业版升级至企业版后,需要应用进行重启,企业版的规则才会生效。

删除微服务命名空间

删除微服务命名空间需要满足以下前提条件:

  • 微服务空间下无任何应用。

  1. 微服务命名空间页面,单击需要删除的微服务命名空间操作列下的删除

  2. 删除对话框,单击确定

相关文档

您可以将应用接入微服务治理空间。具体操作,请参见ACK微服务应用接入MSE治理中心