對于那些尚未開啟云遷移之旅的企業來說,有一點是明確的:袖手旁觀的時代已經結束。
確定哪些應用程序要遷移到云上、哪些應用程序要保留在本地并非易事。如何使用云原生技術重構這些應用程序,或者創建一個混合云設置,能夠繼續利用數據和應用程序,這是許多DevOps團隊面臨的另一個潛在難題。這是一個復雜的過程。
但是,不為重建云遺留應用程序投資的缺點有:技術債務、敏捷性和靈活性方面的競爭劣勢以及因用戶體驗差而受挫的客戶。我們別無選擇,只能繼續前進,接受云技術和流程。
每個組織的云原生旅程都是不同的,但任何企業都需要采取一些步驟。
一、企業要想實現云原生化需要采取以下三個步驟:
1.必須為云策略系統定義一個愿景。客戶的需求是什么?如何計劃交付產品和服務?云設置在DevOps和交付管道中扮演什么角色?如何確保可靠的系統性能和整體健壯的最終用戶體驗?選擇的云平臺是公共的還是私有的?單云、多云還是混合云?這些問題看起來似乎很簡單,但這些問題的答案形成了云原生構建塊。
2.全面了解現有的遺留系統。對應用程序進行概要分析,了解它們是如何工作的,并對它們的性能進行基準測試,以便稍后將它們與它們在云中的性能進行比較——并確保它們運行得更好。知道他們是如何、在哪里未達到基線也很重要。監視在這個分析階段扮演著一個關鍵角色:從創建整個技術棧的拓撲映射,到映射出系統之間的相互依賴關系,到自動性能基線化,再到完整的壓力測試。這些都是確保全面了解現有系統架構、服務流程和性能的必要因素。
3.定義遷移策略本身。計劃哪些應用程序要保留或退役,哪些應用程序要保留,哪些應用程序要遷移到云計算、重新平臺或重構。每種方法都有其優缺點。提升和轉移應用程序是最快的,因為不需要修改代碼。這樣做的缺點是基本上保留了內部架構,這意味著應用程序不能充分利用新云環境。另一方面,重構是最耗費資源的,因為要求從頭開始重新構建應用程序的架構。通常,這包括將一個包含數百萬行代碼的單一應用程序拆分為多個更動態的微服務,這些微服務易于維護和擴展。但是,由于這個過程產生了一個專門為云計算構建的應用程序,因此它也獲得了最大的投資回報率,與提升和轉移相比,它具有更長期的操作和成本優勢。
二、答案在于自動化和軟件智能
在制定了云遷移愿景、分析了遺留應用程序并定義了遷移策略之后,接下來是實際遷移本身的具體工作。這是一個充滿技術挑戰和重大組織變革的過程,包括:
• 將組織從高度專門化的煙囪式和瀑布式方法重新構建為靈活的DevOps團隊和流程自動化
• 建立持續集成和持續交付系統
• 遺留組件和云原生組件的集成
• 錯過遷移截止日期或目標的風險,包括在現實條件下的系統性能(想想黑色星期五或全球事件)
這就是人工智能和自動化開始應用的地方。
企業需要自動化一切。成功的云遷移依賴于自動化的連續構建、集成和交付(跨越所有階段的測試);關于自動化操作、性能監控和監控儀器;從根源分析入手,提出了一種改進的方法。以及自動化性能基線化和配置。
這種“一切自動化”的方法正在利用人工智能。現代網絡規模的云應用程序過于復雜,無法單獨由人類操作。軟件智能建立在強大的人工智能的基礎上,從一端到另一端監控整個系統的健康狀況。智能異常檢測、實時根源分析和業務影響評估是人工智能帶來支持的關鍵支柱。
這對于云遷移和云本地轉換意味著什么?首先,軟件智能和自動化創建了可見性和可操作的洞察力。這使得軟件工程師對整個價值鏈擁有完全的所有權:從最初的編碼到最終產品的部署。它推動了一種強大的、靈活的DevOps文化的創建。在這種文化中,工程師可以真正地承諾“您構建它,您運行它”。
人工智能還可以用于進一步改進CI/CD管道,以滿足遷移期限并確保優秀的軟件質量。軟件智能有助于縮小現有的自動化差距,比如在決策門或構建驗證處的手動批準步驟。它還提供了根據生產場景測試新的構建的性能識別標志。
最后,軟件智能對于運營來說是提供優秀客戶體驗的關鍵。AIOps可確保實時檢測性能問題及其根源,且可以自動糾正問題。
三、你準備好了嗎?
開始實施云策略需要進行重大的組織上的更改。人工智能和自動化提供了使這段旅程盡量可航行和無縫的工具。通過自動化性能監控、修復、CI/CD管道、根源分析、壓力測試、系統配置和更多步驟,AI為它節省了大量繁瑣的手工和跑腿工作——以及隨之而來的成本和令人頭痛的事。更重要的是,人工智能和自動化有助于為采取DevOps和AIOps的文化奠定基礎。最終,一個完全形成的、靈活的DevOps文化——由人工智能和自動化推動——是一個成功的云轉換之旅的關鍵。