2 版权声明 本案例集版权属于云优化能力提升计划,并受法律保护。转载、摘编或利用其它方式使用本报告文字或者观点的,应注明“来源:云优化能力提升计划”。违反上述声明者,将追究其相关法律责任。 前言 云计算作为数字化转型的技术底座,是企业数字化转型的必然选择。近年来,各行业企业上云进程不断深入,数据和核心应用逐步迁移到云端。然而,企业最初上云希望获得云计算的灵活性、创新性以及节省成本,但如果云迁移方式不当,云计算的效能可能无法实现。一方面,传统思路建设的虚拟化平台、IaaS平台、PaaS平台侧重于单体系统建设的思路,企业缺乏整体的融合与创新。另一方面,当IT基础设施加速向云进化,企业应用系统需要现代化改造优化以适配云计算IT环境。 为促进新一代云优化服务能力的创新发展,交流业内先进经验,推广云上优化最佳实践,云优化能力提升计划现开展“云迁移质效优化”案例征集活动。本次活动旨在征集企业在云迁移中,对业务应用做现代化改造、对基础设施和平台做融合创新治理的标杆案例。通过推广一批成熟度高、具有示范作用的优秀案例,引导企业在上云用云过程中,对云环境做持续优化和治理,释放最佳云效能。本次案例征集历时4个月,得到了业界的热烈响应。在案例申报阶段,共收到43 个申报案例,通过材料初评、专家复审环节,总计评审出16个优秀案例。 本案例集按照“云迁移质效优化”优秀案例的申报类别进行划分,充分征求企业意见后汇集成册,希望能对上云迁移及改造领域相关人员有一定的启发和指引。 4 第一部分:应用现代化改造类 1.金洋化工物流架构优化项目 一、申报单位 中国移动通信集团浙江有限公司 二、用户简介 宁波金洋化工物流作为国内危险货物道路运输行业标杆企业,总结多年的管理经验,围绕物流运输三点一线过程中人、车、路、物四大管理要素,打造出爱路捷专业物流管理平台。爱路捷专业物流管理平台致力于危险货物道路运输企业提供给予云端、灵活可配置的模块化应用,以轻便高效的方式帮助企业提高物流生产安全、降低经营成本、打通信息孤岛,用数据驱动管理,给企业带来管理手段上的革新,真正实现管理过程安全、环保、高效。 三、需求分析 客户系统采用B/S架构,当前架构模式下,通过两台主机来承载所有租户业务,一台主机堆叠租户web服务,一台主机堆叠租户数据库。同时,由于租户应用具有相似性,因此客户选择用Docker进行部署,但未编写Dockerfile维护私有镜像,每次部署新租户应用都需要从已有租户应用上剥离租户属性后再进行容器创建。 通过对客户系统现状摸排,总结出以下三项业务痛点: 1.扩容便捷性差、影响面广:通过扩容主机规格来解决资源不足问题,最终会受制于主机规格上限,且云主机规格变更需要关机,整体操作既繁琐又会给租户带来巨大业务影响。 2.容器使用能力偏低:对容器的使用停留在初级阶段,未维护私有容器镜像。未引入任何容器管理服务,导致运维繁琐。 3.长期规划带来短期资源浪费:由于现有扩容模式复杂,因此客户扩容时会 按照中长期规划容量来进行扩容,导致短期内大量资源处于空载状态,造成资源浪费。 四、实施方案 针对客户现状和需求痛点,结合云原生能力,使用云容器服务、容器镜像服务、云数据库Mysql为客户设计了一套新的系统架构。架构基于云容器服务,业务部署模式仍然以Docker为基础,使客户系统从自建Docker过渡至新架构更为平滑。 在新架构中,云容器服务以Kubernetes为基础,为客户提供集群化Master节点,节点具有调度管理、任务处理等管理能力。客户原有web服务主机算力拆分为多个工作Node,通过私有业务镜像部署租户web服务。放弃原有数据库主机,改为直接使用云数据库RDS-Mysql服务。 MSP团队为客户提供的架构优化方案,通过移动云容器服务优化了扩容模式,将升级云主机规格的纵向扩展方式调整为订购Node节点的水平扩容方式,当已有Node资源不足以创建新Pod时,可以直接订购新节点来扩展资源池,操作更加简便。使用该模式扩容,已有Node节点无需停机,彻底解决了客户的扩 容问题。 MSP团队以本次容器服务改造方案为切入点,向客户推荐了云原生服务。团队了解到客户目前需求开发模式较为原始,直接通过在线IDE进行编辑,不经任何管控。该开发模式曾给客户带来过严重故障,例如某次公共代码变更导致全租户的账务模块页面打开报错,查找问题耗时近1天。 针对该开发流程问题,我们为客户提供了一套以Gitlab、Jenkins为基础,配合容器服务使用的DevOps解决方案,为客户规范了开发流程。方案通过Gitlab代码仓库管理代码,将业务需求映射到代码分支进行需求开发,使整个需求开发流程可追溯。Jenkins则主要负责代码构建、镜像生成、管理各客户代码流水线,同时也是编译、发布脚本的触发点,该主机编译完成后推包至容器镜像仓库,并通知云上Kubernetes节点进行滚动发布。 通过DevOps方案,MSP团队帮助客户确立了敏捷开发流程,使客户的需求上线流程可管控、可追溯,为代码变更导致的业务问题找到了一条快速恢复通道。 除开发模式外,在本次项目中,MSP团队在调研时还发现,原系统架构下,每日业务早晚高峰之间以及业务量大的时期,会出现间断性系统卡顿情况,用户直观感受到业务界面打开十分缓慢、信息提交等操作响应慢,体验较差。 经MSP团队抓包分析后得知,整个页面的构建需要从数据库中动态获取组件依赖,结合数据交互响应问题,故障点均指向应用与数据库之间的网络连接,而所有租户的应用与数据库之间又都通过仅有的两台云主机的网络IO交互。在高峰期时分析主机状态发现,数据库所在主机Recv-Q间断性处于积压状态,而web应用Socket连接未设置超时时间,导致web应用主机连接等待时间过长,引发卡顿状况。 因此在新架构设计时,采用了k8s高级调度特性podAffinity,配置同租户应用pod与数据库pod之间的亲和性,使同租户的数据库和web应用尽量处于同工作节点上,利用节点本地网络进行交互,降低了原系统架构中同租户web应用与数据库之间的网络损耗,并建议客户为应用设置了连接超时时间。 五、改造创新点 云原生化:采用云容器服务、容器镜像服务等云原生服务能力,代替原有云主机自行部署Docker的模式,提升管理、使用上的便捷性。同时利用云平台自身的稳定性保障减少客户运维工作,为客户运维团队带来极大运维效率提升。云原生能力的引入,同时也为客户带来更贴合于云的业务持续发展模式。 业务敏捷化:为客户诊断需求、开发、运维端到端业务体系,挖掘开发流程问题,引入DevOps体系,从原有的在线IDE编辑模式变更为需求可控的管理模式。使客户整个需求开发流程可追溯、可还原,提升客户需求管理便捷性、需求开发效率,以及开发问题定位、问题溯源的能力。 系统架构优化:深入客户业务系统,为客户进行系统部署架构的优化,同时针对系统运行状况提供运行诊断,排查应用系统各个模块、环节,为客户解决生产遗留问题。通过系统架构调优、部署架构优化等方式,提升了客户云上系统的稳定性、健壮性。 提升资源利用率:在原架构下,一旦遇到容量问题,则需要扩展主机规格、数据盘,该模式,不仅操作十分复杂,也容易对业务产生影响,导致了前期规划时需要冗余大量存储、计算资源的必要性,直接表现为资源利用率较低。现将扩容模式转为横向的WorkerNode扩容,消除了大量冗余,提升整体资源利用率, 同时更便于扩容。 六、改造收益 对比原有架构,新架构除了对扩容模式进行了优化外,还带来了以下提升: 1.管理能力增强:客户自建Docker未引入容器管理工具,无法实现对容器的运行状态监控,移动云容器服务基于Kubernetes为客户带来容器监控、管理能力,同时能够通过配置心跳检测、存活检测来进行容器自愈,提升运维便捷性,使故障得以自动发现、快速处理,故障处理及时率提升60%。 2.资源利用率提升:将原云主机的算力拆分到多个节点,每个节点的利用率得到提升,CPU平均利用率从15%提升至45%。 3.故障影响面缩小:云主机故障影响面从原来的全租户影响缩小到只影响单租户,故障影响范围缩小80%。此外,得益于容器自愈能力,能够将故障节点容器在其他节点快速自动拉起。 2.湖州市绿色采购服务平台改造 一、申报单位 中国移动通信集团浙江有限公司湖州分公司、中国移动通信集团浙江有限公 司 二、用户简介 湖州市联合产权交易有限公司是一家专业从事国资交易服务、企事业单位采购服务的地方性国有企业。经营范围包括资产转让、股权转让、资产租赁、企业增资等国资交易服务和企业采购、绿色交易服务等。公司在湖州市产权交易规范化、市场化、信息化、统一化发展中发挥了重要作用,其应用的绿色采购服务平台加快推进了要素资源市场化配置,是助力国资监管、国企改革和数字化产业发展的关键之举。后续将进一步致力于建设统一、规范、高效的全省国有资产交易平台。 三、需求分析 客户业务选择上云,主要需求有如下三点: 1.高可用需求:湖州市绿色采购服务平台涉及市内重要项目的招投标业务、企业大型采购业务,因此平台的稳定性非常重要。迁移上云采用云原生理念部署之后,所有业务均部署在容器集群之中,具备高可用性,可以满足业务的灾备、负载均衡和弹性伸缩需求。同时屏蔽底层计算资源差异,避免因此带来的业务适配风险。 2.扩展性需求:平台需要不断迭代新功能和对接第三方平台,因此功能更新频繁,用户要求尽量降低新功能开发周期和新功能发布对于正常业务的影响范围。传统软件架构为单体应用,发布周期长,而且代码改动造成的影响也比较大。而迁移上云采用云原生理念部署之后,各模块独立部署、改动和发布新功能,业务敏捷性更高。 3.运维需求:平台的平稳运行离不开日常的运维巡检,但是用户缺乏软件运维能力和底层设施运维能力。迁移上云采用云原生理念部署之后,用户可以将所 有运维工作移交给云上开发运维一体化DevOps体系,可以更加专注于采购平台业务本身的内容。 四、实施方案 湖州移动联系省公司云计算支撑中心基于云原生理念,采用了微服务、Docker和容器化等技术,为用户构筑了一个应用可快速迭代、资源可弹性扩展、部署快速高效的智能化采购交易服务平台。 湖州市绿色采购服务平台首页 架构介绍 如下图所示,本方案设计了一个基于云原生理念的一体化业务平台。交易、网站、电商等主要软件业务经过拆分改造升级为微服务版本,均匀分布在Kubernetes集群中的各个pod上。原有物理服务器全部拆分改造为Kubernetes的管理、工作节点,形成集群化的高可用方案。用户可以通过dashboard智能面板监测业务信息和软件运行指标。常见的各类中间件、数据库等可以在容器之间进行调用共享,提高资源利用率。 平台架构图 关键能力 1.微服务架构 微服务是将应用的颗粒度做到最小,使之承担对外服务的职责,实现软件开发中一直追求的低耦合+高内聚。该架构的好处就是按功能拆分后,服务解耦,内聚更强,变更更易。 2.企业级容器云平台 容器是一个开源的应用容器引擎,将每个服务都被无差别地封装在容器里,可以无差别地管理和维护。容器云平台自下而上分别覆盖了云计算的IaaS层和PaaS层涉及的各类问题。既对接云计算底层资源池(例如IaaS),遵从云计算资源的统一管理和分配,又包括资源调度、服务编排、应用部署、监控日志、配置管理、存储网络管理、安全等。重点实现应用开发、应用托管和应用运维的能力,使企业专注于业务逻辑开发,缩短业务迭代上线周期,优化资源利用率,提高服务响应效率。同时通过可视化的编排工具简化应用部署流程、缩短上线周期。该平台还提供自动化运维能力,减少人工成本、保障业务连续性。 3.DevOps开发运维一体化平台 针对前期开发需求和后期运维实际需求,方案打造了DevOps后台管理平台,实现于开发运维一体化协同运行。平台提供了需求管理、CICD流水线、代码配置管理、制品管理、质量管控等功能,提供了从计划到测试的