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