前言
为了推进企业数字化转型,实现企业战略目标,企业上云是趋势,从IaaS、PaaS、SaaS到混合云,而且占据比例越来越高,运维工作量越来越大,运维难度越来越大,运维架构越来越复杂,如何有效实现云平台运维、提升运维效率?本文就云模式下总体运维架构演进进行探讨。
1、IaaS运维架构
IaaS云管平台领域分类如下:
云管平台在企业IT云化过程中有着独立的角色定位和使命。越来越多的企业IT部门面临着IT能力云化/服务化的诉求。这种诉求的背后面临着几个关键性的技术挑战,即IT资源服务化、IT资源全生命周期管理和异构IT及多云对接。
■IT资源服务化:
如果需要对企业内部各种IT资源进行服务化,那就需要有一个独立的用户/租户体系,这个用户/租户体系需要超越任何IT资源自带的用户/租户体系。这就是独立云管平台一个重要的产品特征。
另外,IT资源服务化还需要能够建立起IT产品及能力的标准服务目录,这需要IT产品及能力服务目录定义、抽象以及相关的自动化能力。但是,当面对现实,你会发现企业内部不同IT产品及能力在服务化支持能力上参差不齐,这要求云管平台能够针对不同IT产品及能力的现状建立合适的IT资源服务化模式。独立云管平台则可以保障这个模式得以灵活构建。
■IT资源全生命周期管理:
企业IT内部的资源形态非常多样化,有云主机这样的计算资源,也有块存储、对象存储和文件存储,还有备份、监控、安全等运维管理能力。每种IT产品及能力因为其定位不同,使用场景不同,其生命周期管理模式也不同。云管平台需要能够提供足够的扩展能力,让不同的IT产品及能力的生命周期管理模式在其框架内实现。而这种扩展能力也要求云管平台能够有独立的角色定位。日常绑定特定IT产品和能力的云管平台很难担当起这个独立角色。
■异构IT及多云对接:
企业内部的IT异构主要来自于两个方面,一是企业IT的演化和迭代是一个长期的过程,这就意味着不同阶段的IT产品及能力会长时间共存。最为典型的代表就是很多企业内部IT计算资源会同时存在有大型机、小型机、X86服务器、X86虚拟化、IaaS乃至容器云等。因为这个原因,绑定一种IT产品及能力的云管平台很难承担起整个企业IT能力云化/服务化的使命。
云管平台运维架构演进:
一是对基础设施的混合IT整合,形成一体化的资源池;二是混合IT的对接与管理,包括与原有ITSM流程的自动化对接,IT数据流转与自服务的对接等。以云管平台为纲,向兼顾稳健性和敏捷性的混合IT基础平台转型,全面推进基础架构的升级。
2、PaaS运维架构
基于业务发展的需要和快速进步的金融科技技术,越来越多的传统银行希望从技术层面更有效地支持业务创新,如微服务架构、更好的灵活性、扩展性、高可用性、更高效的业务上线效率等,因此建设并推广适合自身的基于容器技术的云平台是关键任务。
基于Kubernetes集群节点的运维可以从以下几点考虑并灵活运用:
主要资源指标监控、告警
Node affinity/taint
镜像、容器gc策略
扩展节点设备类型-ListAndWatch/Allocate
节点维护状态
时间同步
节点故障、自定义agent上报异常情况
节点资源不足时的处理
在不同的底层IaaS平台基础上,还可以充分发挥IaaS的一些能力来简化或者改善容器PaaS的运维工作。随着Kubernetes自身的快速迭代,升级也就成了不得不考虑的一方面,目前提供两种升级路径,in-place或者data migration,分别适合小版本升级和跨度较大的版本升级。PaaS架构用户不需要去关心底层的基础设施,只需要专注业务应用本身,容器PaaS以应用为中心,标准化、自动化应用的构建(Build)、交付(Ship)、部署运行(Run)流程,支撑应用的完整生命周期管理。通过容器云PaaS提供的丰富基础服务及之上的SaaS服务,提高IT设施自服务能力以及新业务的交付效率。
3、DevOPS运营
云原生价值的最大体现之一在于对企业DevOps的支持,它将企业开发运维部门很好地结合起来,DevOps将打破开发、测试、运维部门之间的隔阂,让整体的应用交付变得更快速。从技术角度看,DevOps涵盖了应用的开发、编译、构建、测试、打包、发布的自动化流程,并包含了很多DevOps工具链。
Devos的构想蓝图如下:
DevOps落地:
DevOps起于规划,行于设计,终于运营:
1、规模组织的DevOPS转型是个系统工程,任何单方面和局部的调整收效都将有限;
2、DevOPS不会让运维消失,但运维必须在工作思维、工作模式和软件工程能力上跃进;
3、快速发展的业务域是开展DevOPS模式的优选;
4、研发开始就要必须入局,从设计之初就开始为系统的稳定性考虑;运维也需要和研发一起提高对业务的交付效率和质量;
5、资源和组件服务团队、CI/CD工具团队及OPS工具团队在技术战略规划、战术展开都要参与并通力协作;
6、工具链的建设必须服务于用户,工具链设计需要场景化,非场景化的设计会割裂完整的工作,损失工具链在提效上的效果;工具链研发战线不要拉得太长,以敏捷的思维优先解决让用户最痛的刚性场景需求;
7、研发进入生产环境在初期可能带来系统稳定性质量的风险,做好管控,不要止步于恐惧;
8、系统上云工作需把握好节奏和规划好逃生通道并做有效演练;
9、转型初期见效可能不明显,甚至会出现效能和质量的下降,需要及时分析问题所在并优化,要有耐心。
4、业务运营
银行数据中心的重点不再仅仅是提供基础资源和维护,而是提供产品和服务来支持和实现企业的业务战略。在当前环境下如何利用人工智能、网络SDN、容器等技术,来支持快速增产的基础资源并满足业务需求。
运维中心在保证安全运营的基础上,持续打造自身核心竞争力,提出了将运维工作敏捷化、数字化、智能化、服务化的目标,具体包括以下内容:
5、展望未来
随着DevOps的深化、普及,将会形成更加标准化的应用交付流程。PaaS会逐步弱化IaaS层的一些概念,在某些需求场景下甚至舍弃IaaS,在物理资源上直接部署PaaS。微服务、服务网格、APM等应用侧工具逐步繁荣,用户的重心向业务架构及其治理方向转移。随着云的类型增多及其复杂性的增加,多云管理、云管平台也会出现强烈需求,另外用户对“云原生”的更多理解,会带动新的开发模式、开发框架的产生,比如Serverless等,最终实现企业高效、敏捷、管理、精益IT服务管理的目标。