在实际应用中,PaaS 模式的重要应用场景之一是向用户交付一个支撑应用运行的应用运行平台(Applications Running Platform,以下简称 ARP)。基于 PaaS 模式构建应用运行平台,需要满足以下典型需求:
- 提供定义应用需求的接口:用户可以方便地定义满足应用功能需求所需的组件,同时可以定义应用的非功能性需求,例如可用性,服务水平等;
- 提供基于应用需求快速构建应用运行环境的能力:能将应用需求映射为物理的 IT 资源和基础设施的具体配置和拓扑结构,并进行快速部署;
- 提供运行时实时动态满足应用需求的能力:将应用需求映射为运行策略,在运行时,根据系统运行的实际状况,例如负载状况,动态地对物理的 IT资源和基础设施进行调整,例如调整负载分配或增减计算资源,使 ARP 具备足够的弹性和灵活性,以实时动态地满足应用需求。
针对上述需求,基于 PaaS 模式构建 ARP 的解决方案至少需要包括如下组件:
- 需求与运行策略库: 向用户提供定义应用需求的界面,保存应用需求,并将应用需求转化为部署及运行策略,提供给平台交付组件和运行时控制组件;
- 软件映像库: 提供应用运行平台所需的基础软件;
- ARP硬件资源池: 基于 Hypervisor,以虚拟化的方式,提供应用运行平台所需的硬件资源;
- 平台交付组件: 根据部署或调整策略,通过部署或调整软件及 APR 硬件资源池来创建或调整应用运行平台;
- 运行时控制组件: 根据运行策略和实际运行状况动态调整 ARP 资源池,并向平台交付组件动态提供调整策略。
图1 . 基于 PaaS 模式的应用运行平台