标题 | 基于弹性分布式容器云架构的敏捷开发运维体系 |
范文 | 丁之彦 摘要:随着银行业务创新产品的不断涌现,传统的开发运维模式已经难以满足大规模用户的访问和需求的快速迭代,基于弹性分布式容器云架构的敏捷开发运维体系,能为银行业务提供系统的解决方案,具有一定的研究意义。 Abstract: With the continuous emergence of innovative banking products, the traditional development operation and maintenance model has been difficult to meet the rapid iteration of large-scale user access and demand. The agile development operation and maintenance system based on flexible distributed container cloud architecture can provide a system solution for banking business. So it has certain research significance. 关键词:容器云;分布式;敏捷开发 Key words: container cloud;distributed;agile development 中图分类号:TP311.5;TP393.09? ? ? ? ? ? ? ? ? ? ?文献标识码:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章编号:1006-4311(2019)34-0172-02 根据2019年第44次《中国互联网络发展状况统计报告》,我国网民规模达8.54亿,互联网普及率达61.2%,手机网民规模达8.47亿,网民使用手机上网的比例达99.1%。互联网用户行为具有“不可预测、爆发式增长、峰谷明显”等特点,为银行互联网产品开发和运维带来新的挑战,随着面向互联网用户的银行业务创新产品不断涌现,涵盖了网银、支付、理财等核心业务及抢购、优惠券等拓展业务,逐渐成为银行重点业务方向之一。尤其随着“互联网+”的深入发展,银行创新业务产品对产品的上线时间、迭代周期、运营质量要求极高。采用传统的开发运维模式将难以满足需求的快速迭代及大规模用户的访问,引入基于弹性架构的敏捷DevOps体系是支撑互联网金融产品创新的有效方式。 2009年在速度大会(Velocity)上首次提出DevOps概念,提出通过加强开发团队与运维团队之间的协作,来加快应用部署频率。不同于传统敏捷开发与运维作为两个独立的流程执行易导致流程混乱状态,DevOps是一组过程、方法与系统的统称,以促进开发、测试和运维部门之间的交流与合作,大幅减少整个软件生命周期中出现的重复工作,提升开发效率、提升产品运营的稳定性。 目前,国内外对于敏捷DevOps投入大量的研究与实践,研究软件系统开发、测试、运维各阶段的需求,实现开发与测试阶段的融合,如将开发延伸至生产中(持续集成和交付)、将开发嵌入到IT运维中(应用端到端管理)、向开发中加入生产反馈(可视化监控和运维)、将IT运维嵌入到开发(运维分析及预测)等。IBM、微软等国内外知名公司纷纷推出自己的DevOps解决方案和实施工具,巴克莱银行已经将敏捷和DevOps扩展到全企业范围内,取得了很好的效果,高盛在Docker研发和应用领域投巨资来实现其微服务架构。国内,招商银行与青云合作打造新一代DevOps应用云,将开发运营和质量保障紧密结合,加速应用产品和功能迭代,中国工商银行和上海浦发银行等已经将DevOps试点到其创新应用中。 本项目深入研究银行业的持续集成、持续运维需求,研发了基于弹性分布式容器云架构的开发运维体系及其相关支撑平台,并结合银行业互联网应用创新的特点,开展针对性的实践应用,为金融科技快速发展提供了支撑。根据Amazon Apollo平台数据统计,平台每分钟推送95-100个部署,平均部署时间仅11.6秒,部署失败的停机率为0.001%,这些是敏捷开发运维(DevOps)课题关注的重要指标。敏捷开发运维(DevOps)不仅关注产品的快速开发上线,还注重产品的快速部署、持续集成、高效运维等。其中,敏捷开发弥补了业务需求频繁变更与开发测试长周期之間的差距,提升了开发和交付效率,而DevOps在敏捷开发模式基础上,有效解决开发运维一体化的问题。目前国内外都非常关注DevOps,包括传统的运维服务、传统工具厂商等。研究显示引入DevOps的企业中,开发和运维人员通过在产品设计、构建、测试等方面的协作,将产品交付效率提升30倍、变更失败率降低50%。 DevOps在互联网领域的成功引起了国内外金融机构的关注,纷纷开展DevOps试点应用实践。高盛投巨资开展基于Docker的开发运维架构研发,计划将其大量应用信息系统迁移至云平台,提升开发运维效率。中国工商银行、招商银行、上海浦发银行等已将DevOps试点至信用卡、优惠券等面向互联网用户的应用领域,加速了公司产品开发效率和开发运维融合速度。 以Docker为代表的容器技术的发展,加速了敏捷开发运维模式的发展。以Docker为核心的弹性分布式云架构,采用Docker镜像方式将需交付的产品或组件及其所需运行环境打包,镜像可以在开发、测试、生产环境中重复使用,改变了传统软件产品的交付模式。Docker容器云平台提供的弹性扩展、高可用性部署优势,有效支撑银行信息产品的持续集成、持续部署需求,大幅降低开发运维成本。 在项目中解决了一些关键技术:实现银行业务系统开发和运维融合,提升银行信息系统尤其是创新产品的开发效率和运营质量;实现基于Docker、Kubernetes技术的银行业微服务开发框架,提升银行业务产品的开发、运维和质量保障效率。实现基于Docker、Kubernetes技术的银行业务产品的高效运维,支持产品发布、升级、回滚、运行监控、弹性伸缩、高可用性保障等功能。实现Docker容器的安全性。在保持Docker容器轻量级特性的基础上,克服Docker容器共享宿主机内核带来的安全隔离性弱的问题。实现Docker容器的故障隔离。克服Docker容器共享宿主机内核带来的故障扩散问题。开展面向银行业务创新产品的敏捷运维开发体系实施和管理。 项目研究的意义在于:研究适用银行创新产品的敏捷开发运维体系,实现开发、测试和运维的融合,加强对敏捷化产品的全生命周期管理,大幅减少重复部署环境的工作量;实现基于Docker的敏捷开发运维平台架构设计,包括微服务开发框架和业务产品运维支撑架构。实现业务产品的微服务化,支持产品的自动化上线技术、安全扫描、自动更新、灰度发布、版本回滚、基于多指标的弹性伸缩等。尤其根据目前银行创新产品的开发与运维过程中的难题,结合弹性分布式容器云技术,研发基于Docker容器云架构的敏捷开发运维架构,提出基于Docker微服务开发框架及其实现方案,实现产品自动化上线、安全扫描、灰度发布、版本回滚、多指标监控等运维支撑能力。 由于银行业务系统对产品稳定性要求极高,弹性容器云架构和敏捷DevOps在银行业务中的应用大都还处于研究或试点应用的阶段。基于弹性分布式容器云架构的敏捷开发运维体系,将为银行业务提供系统的解决方案和实践案例,具有一定的研究价值和行业推广意义。 参考文献: [1]刘沙.顺势而为,让Docker帮到业务[J].It经理世界,2016(16). [2]孙海洪,邱旻骏,郑位威.探路新技术,把脉容器化[J].金融电子化,2016(9):57-58. [3]Sandoval R M S E. A case study in enabling DevOps using Docker[J]. 2015. [4]孙海洪.微服务架构和容器技术应用[J].金融电子化,2016(5):63-64. [5]石琎.基于Jazz平台与 IBM UrbanCode 产品实现端到端的 DevOps[J].2014. [6]王男.面向证券业务系统的虚拟化测试平台的研究[D].吉林大学,2015. [7]Kenefick S. Become More Agile and Get Ready for DevOps by Using Docker in Your Continuous Integration Environments [TR], Gartner, 2015. [8]Duvall P. Agile DevOps: The flattening of the software release process [TR]. IBM Corporation, 2012. [9]孫海洪.微服务架构和容器技术应用[J].金融电子化,2016(5):63-64. [10]佚名.数人云发布容器管理面板Crane[J].金融电子化, 2016(9):95. [11]董莉.蚂蚁爬上金融云[J].It经理世界,2015(21):20-22. [12]Jullian A. R, Sangeetha M. From Dev to Ops - Introduction to Devops on understanding Continuous Integration and Continuous Delivery[J], International Journal of Innovative research in Computer and Communication Engineering, 2016(4): 12567-12572. |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。