摘要:華為雲DTSE團隊出品雲原生改造指南,助力輕鬆實踐OCP上雲。
本文分享自華為雲社群《【雲享專刊】開源遇上華為雲,OCP架構變身「雲原生框架」》,作者:華為雲社群精選 。
OpenStack、Docker、K8S、Hadoop……這些都是開發者耳熟能詳的開源技術。
開源技術的應用,正不斷推動新興技術和產業的發展。
作為國內知名開源託管平臺Gitee上面的優秀開源專案,open-capacity-platform微服務能力開放平臺(簡稱OCP)有著8K+的開發者關注並fork,人氣頗高。
OCP是基於layui + springcloud的企業級微服務架構,包括使用者許可權管理,設定中心管理,應用管理等功能。開發者通過OCP可以在本地搭建自己的開發環境,進行學習和二次開發。
當前,我們正處在雲原生時代,雲原生技術憑藉降本增效、提高持續交付能力、易於開發等優勢,正在不斷啟用應用構建正規化,也將開發過程帶入雲端。開源與雲原生如影隨形、協同發展。雲原生為開源帶來了更優的商業化模型,使用者能夠得到最新、最可靠的服務,開源專案正加速上雲。
如果將open-capacity-platform進行雲原生改造,將用到的傳統軟體架構替換為高可用、高效的雲上元件,不僅可以降低風險、減少維護負擔、提高安全性,更能在不擴大團隊規模的情況下增加開發效益。
正是考慮到OCP進行上雲改造後可以帶來的好處,為此華為雲DTSE團隊進行了技術探索,將這個好的實踐分享給廣大的開發者。
基於華為云云原生改造,改造完的OCP可實現一站式容器化交付,打通雲上全生命週期管理。並且,OCP基於程式碼源可以自動完成程式碼編譯、映象構建、灰度釋出、容器化部署、運維流程。對接已有CI/CD,利用雲原生的優勢服務,完成傳統應用的容器化改造和上雲部署。能夠讓開發者聚焦業務開發,提升整體開發效率。
華為雲全容器化的架構設計,能夠為開發者帶來更靈活的任務排程,更高的執行效率。OCP上雲後,運維能力轉到了華為雲側,不需要開發者再去維護運維服務,只需要使用運維服務即可。不僅如此,針對應用部署方面為開發者帶來了編譯構建能力、部署執行能力和運維能力的提升。
1、編譯構建能力:
使用編譯構服務CodeArts Build可以幫助企業利用雲端構建海量構建資源,採用多樣化的雲端構建加速手段,實現本地構建無法企及的構建速度。CodeArts Build是按照實際佔用的資源及時長支付相應費用,杜絕企業硬體資源及維護資金投入,且伺服器是由CodeArts統一維護,大幅度降低成本。
2、部署執行能力:
部署選擇雲容器引擎CCE,CCE基於在計算、網路、儲存、異構等方面多年的行業技術積累,提供業界領先的高效能雲容器引擎,支撐企業業務的高並行、大規模場景。並且,CCE可以一鍵建立和升級Kubernetes容器叢集,無需自行搭建Docker和Kubernetes叢集。部署在CCE的應用可以使用流水線CodeArts Pipeline實現自動化部署,實現縮短交付週期和提升交付質量的效果。
3、運維能力:
使用應用效能管理APM、應用運維管理AOM和雲紀錄檔服務LTS替換OCP原有的自建運維微服務,開發者不需要再去對運維微服務進行運維,只需要關注使用華為雲的運維能力。同樣可以使用華為雲運維提供的高階運維能力,如APM的智慧告警、呼叫鏈追蹤;AOM的自動化運維和告警降噪;LTS的紀錄檔查詢與實時分析、紀錄檔轉儲能力。
看了前文講了這麼多OCP上雲的好處,接下來為大家簡單介紹上雲改造思路:
OCP基於華為云云原生改造架構圖
OCP中檔案中心(file-center)模組涉及對檔案上傳、查詢、刪除等操作。以整合華為雲OBS為例,OBS的幾個優勢可以幫助開發者通過簡單的操作建立穩定可靠的雲上儲存服務:
以上方案,打通了開發–測試–部署–運維全生命週期管理,方便開發工程師和運維工程師快速體驗上雲。從而實現:
基於開源專案open-capacity-platform的雲原生改造案例,華為雲DTSE團隊經過調研,體系化的梳理技術架構,沉澱出一套完整的開發指南。從開發構建到部署再到運維,覆蓋了應用上雲的大部分流程,可供需要上雲的應用或想要開發雲上應用做流程參考,幫助應用快速上雲。
在進行OCP上元改造之前,小夥伴們首先需要了解華為雲相關產品:CSE、CodeHub、CloudBuild、SWR、CCE、RDS、DCS、OBS、ELB、DNS、APM、AOM、LTS等雲服務的功能模組檔案。我們還準備了相關的雲服務學習課程和實驗內容,如實驗運算元據庫服務實踐 、雲容器快速搭建網站 ,學習兩小時玩轉華為雲紀錄檔服務LTS 、CSE等課程 ,詳情可見文末 。
為了完成更好的開發體驗,華為雲還提供了相關的優化方案,以及在遷移的過程中會遇到的問題,華為雲專家為大家整理了貼心的Tips,如專案啟動資料庫連結、workflow-center啟動、編譯構建、打包映象、驗證碼生成等,會遇到的各種問題以及解決方案。
如今,越來越多的開發者選擇加入開源for HuaweiCloud,華為雲也將面向開源軟體工具鏈與環境、開源應用構建和開源生態元件構建這三大重點場景,提供技術支援、獎金支援、活動支援,邀請更多的開發者,攜手構建開源for HuaweiCloud。
共建開源生態,開啟產業新增長空間
開發者將開源軟體工具、開源應用和開源元件與華為雲物件儲存OBS、數倉DWS、雲容器CCE等雲服務對接,同時基於Terraform模板,上架到華為云云商店,支援其他開發者一鍵部署使用開源元件 ,我們稱為「開源xxx for HuaweiCloud」。 下圖為華為雲開源專案倉庫的範例,涵蓋Dromara社群、Java、Go、Python、C&C++及其他開源類專案,數量超過100。感興趣的開發者可以點選:華為雲開源專案倉庫 ,瞭解更多。
不僅如此,參與貢獻的開發者將有計劃會獲得華為雲沃土雲創計劃激勵,領取雲服務資源代金券,可用於開發部署。如果您有意願參與,請在issues 留下您的郵箱或者主動傳送到郵件到[email protected],我們會盡快聯絡您。
100+華為雲開源技術專案範例
華為雲開源專案倉庫:https://gitee.com/HuaweiCloudDeveloper/huaweicloud-cloud-native-plugins-kits