在电信及IT领域,一个完整系统由各类基础物理资源和软件资源组成,基础物理资源提供了计算、存储、网络等硬件能力,而形形色色的软件则构成了各类丰富多彩的应用。这些应用由不同厂家开发、基于不同操作系统平台、采用不同软件架构、具备不同部署形态,应用的多样化必然带来软件管理的复杂度。
本文所述的软件管理,主要是指本领域的软件在运行态的生命周期管理,包括软件的发布、配置管理、分发部署、补丁管理、软件监控、合规审计、策略管理等。在现有硬件资源基础上,快速高效地完成软件部署、并确保其按照预期正常运行、实现业务运营,这也是整个系统最基础的能力之一。
中兴通讯电信软件管理系统中兴通讯在传统的电信软件管理方案基础上,借鉴业界领先的IT厂商的经验,通过引入ITSM(IT服务管理)和ITIL(IT基础架构库)等理念和方法,对软件管理要素进行重新梳理和架构优化,形成了架构统一、规范化、自动化的软件管理系统,显著提升了整体运维效率。
如图1所示,中兴通讯电信软件管理系统的优势体现在几大方面。
统一技术架构:将分散的工具按照统一的技术架构进行重新实现,演进为基于Web的集成化软件管理系统的子模块。
统一用户入口:通过统一的运维入口、基于角色的访问控制、分权分域模型等,实现各类用户的统一管理和一致的用户体验,用户行为可记录、回溯和审计。
操作策略统一化:提供统一的策略管理,确保各类功能间协调一致、避免冲突,并为各类合规性提供保障。
操作对象标准化:将文件、配置、脚本、软件包、补丁等进行对象化管理、标准化定义,为灵活可控的管理打下基础。
操作手段自动化:引入DevOps(开发运维)理念,实现复杂的操作串行化、脚本化、可编程、批量设备执行的并行化等,实现各类软件管理功能的自动化,提高维护效率。
操作角色明晰化:结合分权分域模型和基于角色的访问控制,将各类软件管理的对象、功能与人员进行关联映射,形成明确的角色定义。
图1 中兴通讯电信软件管理系统
软件管理系统在云计算及大数据场景下的演进近年来,云计算、大数据技术的蓬勃发展对软件管理提出了新的要求。
l 资源分配的动态化与弹性伸缩
传统场景下,软件运行在相对固定的计算、存储和网络环境中。云计算场景下,运行环境实现了虚拟化,软件的安装、部署、配置和升级增加了动态的特性,例如虚机网络配置的动态化、存储资源的动态分配等。
l 更加丰富的操作系统种类
传统的x86操作系统中redhat、suse、windows占据了较大份额,云计算场景下的操作系统种类更加多样化,例如Ubuntu、centos、fedora、debian等开源操作系统的应用率得到了很大提升。软件管理的实现架构需要具备良好的扩展性,以减少支持新操作系统带来的适配工作量和对软件管理架构的冲击。
l XaaS(Anything as a Service)一切皆服务概念的落地
“软件管理”即服务(Software Management as a Service)是一个相对抽象的概念,是XaaS在软件管理领域的体现。Openstack、SDN技术逐步在云计算中实现落地应用,软件管理功能不仅提供给运营者使用,也需要提供给租户甚至最终用户使用,这就要求软件管理具备“服务暴露”的特性。软件管理不再是一个相对封闭的系统,而应该作为面向任何用户的服务提供者。
中兴通讯作为领先的云计算技术方案提供商和OpenStack组织成员,引领云计算及大数据的发展趋势,提供了面向云计算及大数据的软件管理解决方案。
软件管理的几大特点
l 软件管理即服务
中兴通讯软件管理系统包含如下与软件管理密切相关的模块。
软件管理公共服务:具备软件管理的核心功能,通过RESTful接口及JSON数据封装等实现原子服务的封装与暴露,为其它各模块提供基础资源服务,是软件管理即服务的典型体现。
软件及模板仓库:将原子服务组合成软件/模板的仓库,并进一步提供给软件供应与管理模块使用。
软件的供应与管理:软件自动化部署的执行实体,通过工作流编排,将各类基础资源组装成资源模板,利用公共服务提供的自动化能力,完成数据中心的资源创建与维护。
服务目录管理:通过服务目录将软件管理服务及其它服务暴露给各类用户。
l 分布式部署与协同
典型的云计算及大数据场景,例如虚拟化数据中心,一方面数据规模较大且跨地域,对软件服务的性能、服务等级有较高要求,另一方面各数据中心的网络互通性受到约束,因此必须采用分布式的软件管理系统。
图2 中兴通讯软件管理的分布式部署与协同
如图2所示,中兴通讯软件管理系统在管理域中部署一套软件管理服务器和软件仓库、软件分发服务器,具备软件管理及对外服务暴露等全部功能。每个子中心只部署软件分发服务节点,负责执行各类软件管理策略,完成文件、配置、脚本的中转、下发及生效。分发服务器承担的策略执行者角色非常重要,除具备基本的软件部署功能外,还可以按照策略的要求进行节点合规性检查与修正。
l 更大规模、更快速度、高度自动化的部署
中兴通讯软件管理系统具备更加自动化的软件管理策略和快速的软件部署与维护能力,能更好地适应云计算及大数据场景下系统组网动态的scale-in、scale-out等4V(Volume、Variety、Velocity、Value)特性。
l 与Openstack体系的技术融合
Openstack是当前最热门的云计算基础平台,中兴通讯软件管理系统对Openstack中软件管理相关子模块进行了较好的吸收和融合。引入Heat子模块提供了一种通过模版定义的协同部署方式,实现云基础设施的自动化部署。引入Ironic子模块则提供面向裸机的通用软件管理技术,如基于PXE的裸机自动化安装、基于IPMI实现裸机的底层管理等。
中兴通讯软件管理系统通过在Heat模板定义中应用软件管理公共服务,可更加快速高效地完成Openstack体系中虚机软件的部署;在Ironic中引入软件管理服务,可在完成裸机部署后,进一步实现应用软件的部署,从而实现裸机软件的一体化部署。