对于那些尚未开启云迁移之旅的企业来说,有一点是明确的:袖手旁观的时代已经结束。
确定哪些应用程序要迁移到云上、哪些应用程序要保留在本地并非易事。如何使用云原生技术重构这些应用程序,或者创建一个混合云设置,能够继续利用数据和应用程序,这是许多DevOps团队面临的另一个潜在难题。这是一个复杂的过程。
但是,不为重建云遗留应用程序投资的缺点有:技术债务、敏捷性和灵活性方面的竞争劣势以及因用户体验差而受挫的客户。我们别无选择,只能继续前进,接受云技术和流程。
每个组织的云原生旅程都是不同的,但任何企业都需要采取一些步骤。
一、企业要想实现云原生化需要采取以下三个步骤:
●必须为云策略系统定义一个愿景
客户的需求是什么?如何计划交付产品和服务?云设置在DevOps和交付管道中扮演什么角色?如何确保可靠的系统性能和整体健壮的最终用户体验?选择的云平台是公共的还是私有的?单云、多云还是混合云?这些问题看起来似乎很简单,但这些问题的答案形成了云原生构建块。
●全面了解现有的遗留系统
对应用程序进行概要分析,了解它们是如何工作的,并对它们的性能进行基准测试,以便稍后将它们与它们在云中的性能进行比较——并确保它们运行得更好。知道他们是如何、在哪里未达到基线也很重要。监视在这个分析阶段扮演着一个关键角色:从创建整个技术栈的拓扑映射,到映射出系统之间的相互依赖关系,到自动性能基线化,再到完整的压力测试。这些都是确保全面了解现有系统架构、服务流程和性能的必要因素。
●定义迁移策略本身
计划哪些应用程序要保留或退役,哪些应用程序要保留,哪些应用程序要迁移到云计算、重新平台或重构。每种方法都有其优缺点。提升和转移应用程序是最快的,因为不需要修改代码。这样做的缺点是基本上保留了内部架构,这意味着应用程序不能充分利用新云环境。另一方面,重构是最耗费资源的,因为要求从头开始重新构建应用程序的架构。通常,这包括将一个包含数百万行代码的单一应用程序拆分为多个更动态的微服务,这些微服务易于维护和扩展。但是,由于这个过程产生了一个专门为云计算构建的应用程序,因此它也获得了最大的投资回报率,与提升和转移相比,它具有更长期的操作和成本优势。
二、答案在于自动化和软件智能
在制定了云迁移愿景、分析了遗留应用程序并定义了迁移策略之后,接下来是实际迁移本身的具体工作。这是一个充满技术挑战和重大组织变革的过程,包括:
●将组织从高度专门化的烟囱式和瀑布式方法重新构建为灵活的DevOps团队和流程自动化
●建立持续集成和持续交付系统
●遗留组件和云原生组件的集成
●错过迁移截止日期或目标的风险,包括在现实条件下的系统性能(想想黑色星期五或全球事件)
这就是人工智能和自动化开始应用的地方。企业需要自动化一切。成功的云迁移依赖于自动化的连续构建、集成和交付(跨越所有阶段的测试);关于自动化操作、性能监控和监控仪器;从根源分析入手,提出了一种改进的方法。以及自动化性能基线化和配置。
这种“一切自动化”的方法正在利用人工智能。现代网络规模的云应用程序过于复杂,无法单独由人类操作。软件智能建立在强大的人工智能的基础上,从一端到另一端监控整个系统的健康状况。智能异常检测、实时根源分析和业务影响评估是人工智能带来支持的关键支柱。
这对于云迁移和云本地转换意味着什么?首先,软件智能和自动化创建了可见性和可操作的洞察力。这使得软件工程师对整个价值链拥有完全的所有权:从最初的编码到最终产品的部署。它推动了一种强大的、灵活的DevOps文化的创建。在这种文化中,工程师可以真正地承诺“您构建它,您运行它”。
人工智能还可以用于进一步改进CI/CD管道,以满足迁移期限并确保优秀的软件质量。软件智能有助于缩小现有的自动化差距,比如在决策门或构建验证处的手动批准步骤。它还提供了根据生产场景测试新的构建的性能识别标志。
最后,软件智能对于运营来说是提供优秀客户体验的关键。AIOps可确保实时检测性能问题及其根源,且可以自动纠正问题。
三、你准备好了吗?
开始实施云策略需要进行重大的组织上的更改。人工智能和自动化提供了使这段旅程尽量可航行和无缝的工具。通过自动化性能监控、修复、CI/CD管道、根源分析、压力测试、系统配置和更多步骤,AI为它节省了大量繁琐的手工和跑腿工作——以及随之而来的成本和令人头痛的事。更重要的是,人工智能和自动化有助于为采取DevOps和AIOps的文化奠定基础。最终,一个完全形成的、灵活的DevOps文化——由人工智能和自动化推动——是一个成功的云转换之旅的关键。