任何参与软件产品创建的人都应该熟悉DevOps,这是一套将软件开发和IT运营结合在一起的实践,其目标是缩短开发生命周期并提供持续交付和高质量的产品。
随着企业越来越多地将应用程序开发和工作负载转移到云上,以及这些云上支出变得越来越复杂,一个与此相关的概念CloudOps(即“云运维”)出现了。
在这里,我们将研究什么是CloudOps,它将如何使你的企业受益,以及在你的企业中实现CloudOps时应该牢记什么关键事项。
什么是CloudOps?
CloudOps是一种用于管理在云环境中运行的IT服务和工作负载的交付、优化和性能的操作实践。
无论企业是采用多云、混合云还是私有云策略,CloudOps都旨在为基于云的流程建立流程和最佳实践,就像DevOps为应用程序的开发和交付所做的一样。
CloudOps:一种用于云运维的多层框架
“Holistic CloudOps是一个多层次的框架,可以用于帮助企业管理云生态系统的各个方面,”咨询公司Capgemini
Americas的副总裁兼卓越云中心主管Jason Hatch表示。
一个是治理层,包括了财务运营(也称为FinOps)等活动,用于控制成本和管理云预算。“治理层还应该包含关于如何在云中部署什么内容的架构标准,并拥有一种方法能够以编程的方式执行这些标准。”Hatch说。
其他框架层还包括了云应用层,它涵盖了企业将如何部署和管理/监控云中应用程序和特定于应用程序的服务;云操作层,用于部署、管理、监控和操作云服务;以及云基础层,其中包括了身份、网络管理、日志记录、中央备份管理、作为代码的基础设施和中央监控功能等核心服务。
“跨越所有这些层的是‘安全层’,它包括了漏洞和威胁管理、工作量保护以及与公司更大的网络安全管理功能的集成。”Hatch说。
CloudOps在企业中的应用
CloudOps模型与应用程序的交付有着特殊的相关性,这是许多企业通过旨在增加销售额和增强客户体验的数字计划所关注的。
“CloudOps能够将构建、部署、运行、监控和管理云中的应用交付功能的五大职责结合在一起,”云服务提供商Replicon负责工程和运营的执行副总裁Suresh
Kuppahally表示。
网络、计算、安全和存储是在最初的构建和设计阶段必须牢记的四个关键组成部分,Kuppahally说。“这样,公司就可以自动部署他们的应用程序,或者可以进行持续的集成和持续的交付了。”他说。
一个企业的CloudOps团队应该从工程或产品团队中明确分离并独立运作,这样做可以使CloudOps在企业中实现“透明度和服务质量[QoS]的责任制”,Kuppahally说。
CloudOps的好处
从一个企业对云服务的整体部署开始,CloudOps的业务好处是相当可观的,来自Capgemini的Hatch表示。
CloudOps有助于推动企业进一步的采用和使用云计算。如果企业能够有效地部署、管理和保护他们的云环境,就应该增加他们对云的使用,并提供试验和创新服务和技术的能力,他说。“这反过来又可以使他们更灵活,提供更快的上市时间,并有助于推动创新。”
利用CloudOps的企业还可以更好地管理他们所使用的越来越多的云服务,Hatch补充道。
“我们不断听到客户说,他们正在超出自己的云预算,但他们要么是不知道原因,要么是无法实施控制来进行管理,”Hatch表示。“一个有效的CloudOps有将助于缓解这一问题。在治理层,我们可以实施更好的预算和财务跟踪及优化。这也促进了在操作层面,更好的实现自动化部署和管理。”
咨询公司Protiviti的董事总经理Will
Thomas表示,Protiviti的客户所提到的另一个最大好处是能够在云中自动释放授权资源,这会有助于企业管理日益复杂的云环境。
Thomas说,增强的安全性是CloudOps的另一个关键好处,因为该模型可以“确保与安全控制、标准或框架保持一致,并制定策略,在报告云内的健康和活动的同时限制不合规的行为。”
Thomas还认为,那些实施CloudOps的公司能够更好地优化其云环境,因为“CloudOps工程师将专注于利用云中的授权资源,以最新和最好的服务实现应用程序的现代化。”他说。
此外,部署CloudOps的企业还可以根据性能和成本来考虑建立合理的资源分配时间表;持续报告和审查云运行状况指标;并支持资源的主动配置,同时保持云内的法规遵从性,他说。
Replicon的Kuppahally指出,CloudOps能够在不影响QoS的情况下经济高效地扩展云服务。“将QoS目标和CloudOps投资结合起来是非常具有战略意义的,”他说,“因为一个专门的CloudOps团队可以被激励去管理运营成本,因此在降低运营成本方面也会有既得利益。”
实践中的CloudOps
Stretto是一家受益于采用CloudOps的公司。这家为企业和消费者的破产部门提供服务的破产服务和技术公司在早期就发现了对CloudOps实践的需求,并将关键原则纳入了其在云中运行的应用程序和系统中,其首席技术官George
Tsounis表示。
“例如,我们制定了严格、快速的规则,即我们只用基础设施即代码[IaC]的实践来进行部署,”Tsounis说。“我们决定通过所有应用程序/系统将始终跨两个可用性区域运行来实现冗余,因此我们利用了云提供商内置的高可用性能力。”
Stretto战略的关键部分是利用CloudOps的实践,来确保其技术运营拥有更积极主动的方法,Tsounis说。“我们更愿意授权我们的架构师和工程师为我们的内部和外部客户创建高性能、自愈性和弹性的云本地解决方案,而不是继续以一种被动的方式运营。”他说。
云服务的引入,甚至是过渡到无服务器功能的过程,都带来了独特的挑战,Tsounis说。“CloudOps是帮助我们应对这些挑战的策略。” 他说。
CloudOps最终为Stretto带来的好处包括了降低成本、可伸缩性、自动化、简化灾难恢复,以及作为应用程序一部分的基础设施的无缝集成。
“我们的团队受益于应用程序的全面改进,这些CloudOps的理念已经被完全采纳了,”Tsounis说。“CloudOps的实践也提高了软件质量。这是通过利用IaC方法使云基础架构的部署和配置可重复来实现的。我们减少了配置错误,因为在我们的各种环境中推出应用程序时,利用IaC实现了一致的基础设施配置。”
通过取消云基础设施的手动配置,Stretto的质量问题减少了约20%,Tsounis表示。
“利用CloupOps实践为工程师提供了所需的信心,让他们知道在预生产环境中的应用程序/系统行为在发布到生产环境时将是相同的,”他说。“此外,由于我们的应用程序的质量提高,服务台和内部票证的减少,我们也看到了总体IT运营的改善。”
跟上不断发展的方法论
当涉及到云服务及其使用方式时,没有什么是一成不变的,所以使用CloudOps的企业需要定期调整他们的方法,以跟上变化。
对于许多企业来说,这仍然是一个新的领域,它们需要克服一个学习曲线。“随着越来越多的企业采用真正的多云部署,他们的CloudOps实现也需要成熟和规模化,”Capgemini的Hatch说。“许多客户在以竖井的方式管理着他们的云原生地图,使用了不同的工具和流程,并且从整体上查看其整个云原生地图的能力微乎其微。”
为了提高效率和效果,“公司需要开发他们自己的CloudOps框架,以便能够轻松地集成新的云提供商和服务,同时仍然提供正确级别的管理、监控和操作严密性。”Hatch说。
公司在云中处理事件管理的方式也可以改进,Kuppahally说。
“这是大多数CloudOps团队难以解决的问题,”他说。“他们被内部和外部事件淹没了,失去了有效管理这些事件的方法。而建立一个专门的项目管理流程来简化事件管理的筛选和优先排序是降低风险的方法之一。”
与此同时,各企业也需要降低事件的误报率。“当CloudOps团队无法跟上高误报率时,他们就会陷入困境,”Kuppahally说。“拥有有效的策略和计划来减少或消除误报,是非常关键的成功因素。”
CloudOps可以从AI和机器学习等技术中受益,研究和教育服务提供商Wiley的执行副总裁兼首席技术官Aref Matin表示。
“通过机器学习,CloudOps工具可以帮助定义企业范围的策略,进行检测和报告异常,并能够以自动化的方式采取纠正措施,以维护云环境的最佳实践策略。”Matin说。
CloudOps文化
像DevOps一样,CloudOps的成功很大程度上也依赖于开发一种有利于充分利用框架和工具的文化。随着越来越多的企业将更多的工作和流程转移到云上,他们也将需要专注于构建CloudOps专业知识。
“在处理云计算时,大多数客户处于一种被动反应状态,他们无法对事件、更改或新服务的请求做出响应,”Protiviti的Thomas表示。“CloudOps通过自动化建立的部署结构,允许监控、审查和优化现有资源,并检查公司策略以便与云环境保持一致。”
Stretto的Tsounis也同意企业需要 “对CloudOps真正起作用的适当组织结构,专业知识和对协作的适当调整有更广泛的了解”。
“CloudOps不是一个单独的团队或部门。IT、安全、架构和应用团队都需要在通用的CloudOps实践上协作并保持一致,”CTO说。“如果这些团队在孤岛中工作,CloudOps就不能很好地工作。”
基于他将CloudOps投入实践的经验,Tsounis认为,为了获得成功,企业也需要更好地定义CloudOps所需的基本技能,而不是重新发明轮子。
“技术团队需要了解基于云的架构、网络、安全和自动化,”他说。“如果缺乏基本技能,团队就可能会在已有云服务的地方冒险实施解决方案。”