你知道CMP架构的原则吗?

日期:2020-12-15 18:19:00 | 人气:

CMP在云计算诸多组件中处于连接和封装作用,向下对接基础架构,向上对接租户业务,需要同时面对基础架构和用户业务的变化,因此在架构设计上需要采取相应的手段来应对。

增量化扩展:

CMP对接基础架构的能力是需要经过不断累积来达到目标,且随着基础架构的发展也会颠覆传统引入新技术,因此必须在架构设计上能够保证异构资源对接互不影响,可以通过组件之间解耦、微服务等手段解决。

通常使用分层架构模式,设计集成层专门负责底层基础架构对接,集成层可以使用微服务式架构,组件间互不影响,允许组件热插拔。上层通过服务编排引擎完成服务打包、组合、发布、管理等。

轻量级封装:

规划CMP一方面我们追求服务的标准化、规范化,通过CMP统一管理异构资源,便于管理、便于度量;另一方面,我们还需保持差异化,面对着异构资源,每种底层基础架构都有其自身的优势特性,而这些优势特性恰恰是我们选择它的理由,因此不能在追求标准化时牺牲这些优势特性,这就要求我们在架构层面采取措施,CMP切勿过度封装屏蔽底层基础架构的差异特性,保留每种基础架构的差异特性,或允许旁路手段控制基础架构配置。

CMP的职责主要包括两方面,第一、租户控制台,作为租户的服务门户;第二、管理控制台,作为云服务的管理控制门户,由此可见CMP核心职责可以简化为服务的交付和服务的编排;另外一方面CMP的在云计算体系的定位为异构基础架构之上的独立组件,可见CMP的重点是集成和整合异构资源。通过以上分析,CMP不应该过度深入到每种基础架构内部,以降低耦合,降低研发维护成本。在具体设计时也可以根据八零二零原则对于基础架构的初始化、基础参数配置、特殊策略配置等,独立于日常服务交付的和使用频度低的功能模块与CMP剥离。