在数字化转型的巨大浪潮中,越来越多的企业开始利用云计算技术,来加速技术创新和业务转型。据IDC预测,到2020年90%以上的企业将采用多云环境。企业在利用不同云环境所带来的机遇的同时,不可避免地会感受到旧有组织和业务流程所面临的挑战。面对多厂家的私有云、专有云、公有云的混合多云环境时,如何构建DevOps和运维管理体系?如何处理对传统企业组织、流程和文化的冲击?
在这一点上,IBM混合云技术经理潘雪梅在由51CTO主办的WOT 2018全球软件与运维峰会上通过实际案例,分享了IBM公司的经验。
某全球大型服务公司受到来自互联网的行业闯入者的冲击,而其现有IT系统无法灵活高效地为客户提供优质服务和创新体验,不具备行业竞争力。为此,该企业决定以客户为中心进行数字化转型,并全面实施云战略。
云战略的实施
构建公有云为先的混合云、多云环境。所有应用系统优先考虑部署在公有云上。出于高可用性、高性能和避免厂商锁定等考虑,采用包括IBM(两个云中心)和另一厂商(一个云中心)在内的两家公司三个不同城市云中心的多云环境。因为安全与合规性特殊要求,部分应用与数据仍保留在私有云中。
在应用方面,将基于IBM WebSphere Application Server 的网站应用,不加修改,直接部署到公有云上。创新型或高并发(例如每日访问量达到10亿级)业务以微服务化架构重写,利用IBM公有云中的容器服务和部署在第三方公有云中的IBM Cloud Private(IBM基于Kubernetes的企业级容器云平台产品)及相应工具,实现应用在三个云中心之间的一体化的DevOps、监控、管理。
多云环境的DevOps实践
DevOps本身是由一系列工具、方法论及管理思想所构成的复杂业务推进模式。而在这方面,IBM具备丰富理论基础、实践经验和成型解决方案。IBM在协助企业进行云转型实践中,总结出了如下的DevOps参考架构。
潘雪梅表示:在本项目中,基于IBM DevOps参考架构,构建了完整的DevOps体系。采用了Slack、Trello、Github、Jenkins、JMeter、IBM Cloud Automation Manager (基于Terraform)、IBM UrbanCode Deploy等;分别对应于DevOps过程中的协作、跟踪与计划、代码管理、应用构建、测试、多云环境交付与多云应用部署等过程。
而作为容器环境的关键,IBM的整套DevOps解决方案以IBM Cloud Private容器云平台为核心。这一PaaS平台基于Kubernetes提供了容器管理、编排、应用中间件、 AI、区块链、多云管理、安全等能力。它可以运行在主流的硬件(X86,IBM Power,IBM Z) 、IaaS平台(Open Stack, VMWare)、甚至是裸机上。
而且,在这个DevOps一体化解决方案中,涉及到三个云计算中心中的开发、功能测试、性能测试、QA、准生产、生产等多个环境,利用IBM Cloud Automation Manager多云管理工具实现了在图形化的界面上通过拖拽方式完成多平台多环境的全栈自动化交付;通过IBM的Urban Code Deploy部署工具实现应用在多平台多环境上的图形化、自动化、流程化部署,并进行容错、质量管理、监控、安全控制和审计。
另外,运维管理是多云环境管理的难点。当故障发生时,系统管理员会被从不同架构组件中发出的海量运维信息淹没,很难快速地定位问题的根源并解决问题。更因为涉及的环境与技术的多样性,难以掌握规律、提前预测问题的发生。
潘雪梅表示:针对多云环境的服务与运维管理,IBM积累了丰富的经验也总结了一系列***实践,例如:服务管理与运维参考架构、故障管理工具链、基于机器学习的智能化运维等。
本项目全面采用了服务管理与运维参考架构,并使用了自动化、智能化运维管理的关键产品IBM Netcool Operation Insight。通过它提供的事件处理引擎、多层次事件关联分析、基于专利技术的多变量因果关系分析,预先发现潜在问题、快速定位原因和加速问题的解决。
建立在DevOps之上的企业创新方法论
DevOps在实践中通常表现为一系列工具链组合。但在这些工具链之上,DevOps要在利用云计算的业务创新中真正发挥效能更需要一套全新的组织架构、管理思路和创新思维。而在长期的实践中,IBM积累出了帮助企业像初创公司一样快速创新的方法论 – IBM Cloud Garage Method (云计算车库创新方法论)。
云计算车库创新方法论结合了业界的诸多***实践 – IBM Design Thinking (设计思维)、精益创业、敏捷开发、持续交付等,帮助企业建设创新解决方案并构建持续创新能力。
本项目成功运用了云计算车库创新方法论,以用户为中心快速定义了多个创新业务场景,从中选择一个***价值的MVP(最小可用产品),并采用微服务架构、结队编程、测试驱动的开发等方法快速开发应用。通过数周的时间,不仅完成了产品开发、上线(比传统方式快了几倍),并且初步内化了***实践,形成并验证了新的组织、方法、工具,展现了新方式带来的业务价值。
持续探索多云环境的DevOps之路
由于企业采用多云环境进行数字化转型的步伐在加快,如何不断完善与精进DevOps是转型成功的一个关键因素。
为此,IBM在持续推出创新的DevOps解决方案,协助企业构建更强的DevOps能力,加速业务创新。这其中包括混合云管理方案-通过自动化和认知洞察,实现多云环境下资源与工作负载的交付、监控、管理与优化;IBM Microclimate – 容器化的端到端应用开发环境(开发、构建、测试、部署、实时性能监控、智能反馈、问题诊断等),提高开发效率;IBM Urbancode Velocity – 通过集成DevOps工具链和实时分析,协调产品发布,提升工作效率和质量等。
IBM凭借自身数十年的先进软件研发经验和不断的创新,能够带给业界的方法论和解决方案还有很多。