随着企业业务规模扩大和复杂化及云计算、大数据等技术的不断发展,大量传统企业希望用上云来加速其数字化转型,以获得虚拟化、软件化、服务化、平台化的红利。在这个过程中,因为软件资产规模持续增大而导致的软件开发运维和IT基础设施建设运营压力,也将无法继续采用线性增加的方式来解决,且在DevOps思想的影响与引导下,企业对于改善传统IT运维职责权边界不清晰,操作过程无序、提升运维效率及业务稳定性方面也有着迫切的需求。企业必须加快整个IT架构的转型,在基础设施上云后推动应用往云上迁移,充分利用好购买的云基础设施。
企业上云挑战
通常企业在基础设施上云后,主要面临如下4个方面挑战。
第一,企业IT架构不统一,技术栈多,统一运维比较难实现。通常来说企业经过多年的发展,都存在大量功能高度重合,但是独立运行的应用。这些应用有的是自研,有的是ISV开发,甚至很多是定向采购,这些应用架构不同,语言不同,甚至运行环境也不同,同时为了这些应用的稳定运行,催生了大量的运维工具和系统,所以当企业的基础设施上云后,对这些应用统一进行运维成本极高,也是运维标准化、自动化的障碍。
第二,企业正处于深化数字化转型阶段,对云不了解,对云上运维更不了解。企业数据中心面临转型,但是缺少统一的体系化设计和建设,应用系统不知道怎么上云、运维人员不知道云化后的定位,一切都在摸索中前进。我们在和客户的交流中就会经常被问,你们在公司怎么做运维的,帮我们列下你们工作的具体操作,甚至问你们的KPI是怎么定的。
第三,基础设施上云后,在提升产研效率的同时对运维的SLA提出了更高的要求,应用系统的日益复杂、生产迭代的加快,对于应用运维系统来说,需要更智能的识别拦截风险,发生故障时更快的响应与快速恢复,保持业务的持续性运行。
第四,未来大型企业必定会存在多朵云,不同技术栈的云如何管理及运维,存在困难或者说还没有比较好的解决方案。
阿里运维的变化与发展
我们看到当前企业所面对的挑战,阿里集团在全面上云的过程中也同样遇到了,基于以上的背景及挑战,我们可以得出:基础设施上云后,企业的3大刚需分别是业务迁云、云上自动化运维、多朵云的混合云运维。那么我们建设了面向混合云场景的统一运维平台,帮助企业以应用为视角实现更易上云、更好用云,实现构建多云架构下成熟应用的统一建模、架构蓝图可视化交互驱动、集中式&场景化运维,以面对这些挑战。接下来讲一下,我们是如何一步步演进、升级至混合云新一代运维平台。
阿里巴巴的运维体系经历了脚本时代、工具时代和DevOps时代,目前正在实现自动化运维并探索智能化运维阶段。在2008-2009年,阿里巴巴的运维还处于脚本时代,大量的运维工作需要通过脚本来实现,随着业务规模扩大和复杂度提高,脚本的方式越来越难以维护,因此阿里巴巴开始引入运维工具;在运维工具时代,阿里巴巴的运维体系经历了从工具团队和运维团队并行的阶段,到了为更好保障工具质量统一的工具团队阶段;再到逐渐有 DevOps 理念和职能的偏软件的工具团队阶段;最后,阿里巴巴应用运维团队迎来了一场大变革,以前的应用运维团队全被打散,被合并到各业务软件开发团队中,全面践行 DevOps 理念。
进入 DevOps 阶段后,成熟的流程化运维工具虽然提升了一部分运维效率,但是各个工具之间实际是独立割裂的,例如监控工具和运维工具是割裂的、巡检工具和快恢工具也是割裂的,这导致日常应用持续运维过程中,从监控发现、定位并快速恢复问题的链路很长且效率低下,对运维开发来说,期望业务应用上线后可以“No Ops”,监控及运维系统能自行发现异常并自动解决,把应用及业务带回正常状态,阿里巴巴应用运维开始了“监管控一体化”的体系建设,走上了通过智能化手段提升运维效率、运维安全,从而保障业务连续性稳定。
大家都知道,阿里巴巴不但拥有众多形态各异的业务,而且体量大,特别是每年天猫双11大促,需要超大规模的 IAAS 资源支撑。2015年之前,阿里巴巴每年都要花费巨额费用来购买服务器,建设一代又一代的 IDC 数据中心;2015年至2019年,阿里巴巴走向全面云化的过程,在这个时期,阿里巴巴基础设施一部分在云下数据中心,另一部分在阿里云上的数据中心,还需要支持同城多活到异地多活,所以必须要有强大的云上云下一体化超大规模资源管理的能力;2019年阿里巴巴实现全面云化之后,又开始面对一个新的超大规模资源管理场景“混合云”管理。
混合云场景下的运维实践
上面我们提到了很多次“应用运维”,我们先来说一下什么是应用运维,讲这个之前我们先普及一下什么是“应用”,应用是指提供一组相同服务(Service)的资源集,可以对多个地域、多种资源进行全生命周期的角色、权限的统一管理,并拥有自己的代码介质如WAR、JAR、镜像, 那么应用运维即是对一组相同服务(Service)的资源集的生命周期进行运维。
那么我们所讲的应用运维平台正是处于SaaS层与PaaS层中间,与APaaS的概念有点相似,主要负责面向用户的业务/应用的运维工作。因此应用运维向上可以触达业务包括流量、GMV、营收,向下可以触达平台和系统包括资源与硬件,应用天然和人强耦合,因此也可以关联账号和权限等虚拟资源,我们通过应用很容易可以构建业务运行的各种蓝图拓扑关系,通过对应用生命周期全封闭管理,我们可以高效,准确的管理好应用依赖的各种资源,应用运维也提供呈上启下的作用,从业务研发到应用运维再到基础设施运维的分层工作流,即为云+应用一体化运维方案,基于应用三态模型建设,自上而下提供应用等级、部署架构到蓝图规划的一整套解决方案,实现从用户对应用全生命周期的管理、研运一体精细化运营到一站式运维。
至此,混合云应用运维平台诞生,通过阿里集团内部多年的经验沉淀演进,支撑了阿里集团的业务容器化、云化的重要架构演进。平台也是以ITIL理念为指导,提供云上的统一配置管理,为业务运维变更,一体化运维监控提供统一的数据,内置的安全策略以及核心资产保护,为业务变更的安全可靠提供稳定支撑,通过大数据以及算法平台,分析应用的指标、变更、日志等数据,为应用刻画智能基线和画像,通过与监控的统一事件中心联动、与应用运维自动化变更流程结合,实现基于指标和事件的异常快恢。
平台核心能力介绍
上面我们讲到企业上云后的挑战,这些挑战在阿里走向全面云化的过程中也都一一碰到,应用运维平台的演进诞生也分了几个主要核心能力的演进,下面我们讲讲这些核心能力是如何支撑业务上云的。
统一CMDB
首先我们统一了CMDB,CMDB 做为基础服务,为企业提供从团队协作、企业主数据、IT资产管理、监控等核心模块的数据交换能力,业界的解决方案也非常多,但是我们调研了业界内很多相关的产品,发现现有的CMDB都比较偏传统,面向应用管理的CMDB比较少。
所以我们构建了以应用为中心应用模型,满足混合云运维的各种需求,比如异构云元数据的统一纳管,通过自动化资源生命周期管理而不是脚本采集来保证数据的准确性。因此混合云CMDB要求拥有灵活的建模以及查询能力,要求有能力在大流量高并发的情况下,提供实时、准确数据操作能力,提供灵活可自定义和拓扑结构图形化展示能力,可自定义规范、约束状态变化等能力,并支持深度的拓扑查询能力,也提供高可用的API服务,支持被集成。我们当前混合云的CMDB,经过历年双十一的沉淀与客户场景的不断打磨成型,并采用以业务变更驱动配置数据变更的方式而不是主动采集更新的方式,更好的保障了数据的是实时性和权威性,形成了产品能力上的差异化竞争。
混合云资源管理
接下来我再介绍下,云上运维必不可少的应用混合云资源纳管。既然我们是面向混合云的管理平台,势必需要无缝对接公有云、专有云 IaaS 资源,并且可以接管用户自建 IDC 等异构云的资源。支持 IaaS 资源全生命周期管理的同时并支持混合云资源的自动化编排,计量计费,成本分析与控制,在降低企业资源使用成本的同时,满足业务快速交付的需求。
区别云平台资源纳管,以应用的视角管理应用的架构和资源,并提供一键式的资源交付能力,可以让不同的角色分工协作,例如平台规划人员提前规划好运行环境和网络,应用的架构角色可以定义应用系统的架构,平台自动创建应用系统以及应用服务的配置数据,然后应用的研发运维人员以业务的视角基于应用的部署架构,进行资源的规划,在资源编排时,业务只需关心应用运行在哪个环境中,对应用的研发运维角色屏蔽了地域、vpc等网络相关的配置信息,让业务人员更多的关注在资源配置上,平台自动进行资源申请交付,并主动维护资源和系统之间的管理关系,自动落入统一的CMDB中,这也就是前面讲到的,混合云平台的CMDB的数据的维护都是通过变更驱动的。
可视化编排
在应用运维领域,大部分的做法都是基于工作流以及工单管理来实现对应的运维变更操作,而传统的运维工作流在维护成本及可扩展性上都存在一定的不足,缺乏有效的流程生命周期管理手段。
例如应用申请云资源的场景,大多是一种复合操作,可能会涉及多个云资源间的依赖关系,比如申请一个ECS的同时需要挂载SLB,同时挂载数据盘以及OSS才能满足业务需求,如果不是通过可视化编排,那么平台的易用性和复杂性会成倍增加。那么用户(PaaS服务以及开发、运维、运营等角色)可以根据实际业务需要,对多个原子组件通过简单可视的编排的方式进行灵活装配,构造出不同的业务流程完成一个完整的运维需求,运维编排也可以帮助我们更好地规范、管理和执行自动化运维操作,以模板的方式定义所需要进行的操作,然后再通过系统运行,从而提高整体运维操作的效率、增强运维操作的安全性,并避免人工运维的错误。
自动化智能化运维
当平台具备了基本能力以后,也就需要在其他领域进行突破。我们通过在阿里集团以及客户侧的大量实践,沉淀出基于应用的智能运维框架,轻量化的架构可以完成数据采集收集,算法快速开发调优,与专业的算法团队深入合作,快速构建起智能运维领域的相关能力,比如:弹性伸缩,智能告警,智能巡检、无人值守发布等场景,对竞品形成了技术上的优势。
并且根据一些调研的数据显示,企业中70%以上的故障都是由于变更引起的,在企业应用敏捷迭代的场景下,如何体系化、自动化、智能化的保障变更安全是所有企业核心诉求。很多企业在进行生产变更时会要求双人复核,一定程度上对变更前的一些事项进行检查,降低变更风险,这就对人员的技能要求很高,而且经验不易复制,也一定程度上降低了效能。
混合云应用维平台通过系统工程化的解决方案,根据阿里的各种业务场景,提炼了变更的风险策略,与运维平台变更流程进行了有效结合,实现变更前风险监测,对于识别到的风险,会进行变更拦截,进行流程加签审批,保障运维流程的安全;变更执行中,平台会实时对业务运行态指标进行监测,与应用画像进行比对,当变更时应用指标/业务指标发生大幅度抖动时,平台会自动进行变更拦截,及时控制影响范围。
未来的运维趋势
以上我们分析了阿里运维平台上云后演进过程,同时分享了平台的几个核心能力,下面我们聊一下未来运维发展趋势是如何的。
如果说运维1.0时代,是以黑屏运维模式、主机运维技术特点,提升IT运维工作(人员)自身的效率,运维2.0时代是白屏运维模式、容器化运维技术特点,提升IT系统的效率性、降低运维成本,那么运维3.0必将是数字化时代的运维模式,这种运维模式重要的特性就是以保障业务稳定、高效为目标,提供云+应用一体化运维模式、业务可靠性的系统工程技术能力,从各个维度系统化保障业务的稳定。
在最新的十四五规划中,国家明确提出将加速推进传统企业的数字化转型,同时也明确提出,相关科技领域,电力,金融,交通等这些基础设施级别的民生企业要保证安全可靠。事实上在十三五期间,已经有越来越多的这类传统企业依赖云试水数字化数转型,而保障已经数字化转型成功的企业安全稳定运行在云上,必将是核心竞争力。
在数字化变革的浪潮中,中国作为产业规模最大和门类最齐全的经济体,迎来百年未有的崛起机会,拥抱数字基础设施,探索符合数字化时代要求的技术和管理范式,将帮助我们切实把握机会,而把握这一机会的组织,将在数字化变革的浪潮中脱颖而出。
未来我们也会和企业共同成长,提供企业用户金融级别高可用和连续性要求的应用所需各类服务,满足金融等业务场景下多活和容灾的业务需求,促进企业业务的敏态和稳态发展,切切实实帮助上云的企业客户,建立以云+应用为中心的企业数字化业务运营管理解决方案。
混合云新一代运维平台,帮助企业数字化运营可体现、管理可决策、治理可执行,让企业在敢用云的同时用好云。