EDAS 4.0 助力企业一站式实现微服务架构转型与 K8s 容器化升级
作者:安紹飛
審核&校對:營火
編輯&排版:雯燕
前言
近年來,企業的數字化隨著互聯網的普及發展越來越快,技術架構也是幾經更迭,尤其是在線業務部分。最開始企業的需求就是將業務盡可能在線化、線上化,產生了早期的在線業務應用架構,即單體應用,主要就是由 Web 應用中增加業務邏輯及后端數據存在數據庫。
隨著在線業務的增加,以及更多的訪問增長,發現單體應用已經支撐不了業務了,進而逐步演進到分布式應用。同時,前端加上了負載均衡來承接日漸增長的請求,中間也引入了更多消息、緩存等中間件和數據庫。
隨著云計算的發展演進到云原生時代,企業的應用也開始面向云進行容器化、微服務化的構建,在這個過程中,就帶來了和之前階段不同的變化,抽象來看主要是應用的開發設計、應用交付、線上運維方面的變化。
云原生應用服務的新訴求
在云原生應用日益成為主流的技術架構下,云原生應用如何更好的利用云服務,實現面向云服務的架構設計、讓業務更敏捷的研發,快速的聯調驗證就尤為重要。這就要求平臺可以提供一站式的 PaaS 產品來進行支撐。
1)首先是開發設計:從原來的層次化/模塊化單體架構,演進到全面的微服務化,使用 SpringCloud、Dubbo、Servicemesh 這一些技術棧來構建微服務,那這個過程中,研發人員需要進行面向微服務的架構設計、測試人員需要面向微服務架構設計測試用例,編寫實現自動化測試、同時隨著環境上云,也要求著開發環境與云端環境能夠實現聯通調試。
2)接著是應用交付:從之前的虛擬機&批量腳本來完成部署交付,到通過容器、K8s 等技術實現通用的標準化交付,這個過程中,也出現了一些新的需求,比如批量的通過應用模板來快速部署交付、以及通過應用跨集群來實現多場景的管理交付。
3)第三部分是線上運維的變化:從原來的虛擬機維度運維,演進到容器集群維度的運維,需要有更高的視角來幫助企業的開發運維同學,這里我們提出鳥瞰式運維理念,通過應用視角鳥瞰 K8s 所有資源,運維管理的不再是單獨針對 Deployment、Service、Ingress 這些 K8s 原子資源進行,而是鳥瞰式的統一監管控實現運維。
EDAS 4.0 全面升級 &ADD 1.0 重磅發布
針對上面提到的生命周期三個階段新場景演進產生的新訴求,EDAS 正式發布了 4.0 版本,新增多集群應用管理、微服務 API 管理與測試、端云聯調 3.0 等新能力。同時重磅發布新產品 — 云原生應用開發設計平臺 ADD v1.0,大大提升云原生應用的開發效率。
接下來將為大家逐一詳細介紹。
云原生應用設計開發平臺 ADD 1.0發布
針對開發設計階段的需求,云原生應用設計開發平臺 ADD 這個產品應運而生。ADD 產品的設計初衷就是為了提升企業在云原生應用開發設計階段的工作效率,提高生產力。它有 6 大特色:
可視化應用架構設計:幫助企業方便的沉淀與維護原來在線下白板上的架構討論設計;
前端網頁應用拖、拉、拽設計:實現前端“無代碼”開發;
后端代碼在線開發與調試:保證代碼安全;
一站式集成面向接口的測試用例管理與自動化執行配置能力:實現在線自動化測試;
集成主流項目管理工具:提高云原生化開發項目管理效率;
業務應用組件高效復用:借助應用組件商店,實現全面的資產復用;
EDAS 4.0 全新升級——微服務 API 管理與測試
在微服務化的過程場景里,我們總結出這樣三個挑戰:
多環境的適配挑戰:由于微服務有不同的研發團隊,環境也是多種多樣,在面對相應的微服務環境時,就需要做專門的配置適配,比如測試的參數、自動化用例的選擇等等。
應用的可測性挑戰:隨著企業的資源逐漸云化管理,應用也大都部署在公共云或現在專有云環境,這樣就帶來了很多可測性挑戰,比如阿里云的 VPC 環境內無法直接外網訪問,需要彈性 IP 或其他打通方案;并且隨著應用容器化,在 K8s 內的網絡拓撲也會帶來相應的復雜度。
用例生成的挑戰:很多情況下,開發會專注于業務研發,無形中給測試同學帶來了溝通協作的成本,由于不理解微服務接口的契約,就無法很快的實現用例生成。
為了解決以上挑戰,我們提供云上微服務一鍵測試工具(API 管理與測試)針對性的解決相應問題:
通過 API 快速測試能力,可以直接打通 EDAS 應用,發起測試,并且測試歷史記錄可以快速生成 API 模板。
然后是通過測試環境管理,打通云內微服務,提供了 API 模板與測試環境參數的設置能力,可以直接實現一套測試配置映射一個微服務環境下的應用。
提供一個用例管理功能,統一模板化管理用例,實現用例自適應,也就是這個用例可以按照運行的微服務環境來選擇相應配置執行。
所以,EDAS 的微服務一鍵測試工具,相當于為用戶提供了一個面向微服務的云上私網 Postman,一鍵自動化執行用例,完成云上微服務測試,提升微服務測試效率。
EDAS 4.0 全新升級——端云聯調 3.0
針對開發測試的部署架構變化,EDAS 4.0 將微服務的端云聯調能力進行了全面升級,也是從 2020 年以來的第三次升級。這次升級,可以支持企業用戶在容器化開發過程中,快速的將本地代碼跑起來,和云上微服務打通聯調。本地可以是容器,也可以是進程,很好的實現一套云上微服務環境,多個研發協同開發微服務的需求場景。
端云聯調 3.0 主要升級了 3 大能力:
微服務的雙向聯調:日常開發中,研發本地可能寫的是 Consumer 服務消費者,也可能是 Provider 服務提供者,所以實現雙向互調就顯得非常必要。本地的應用拉起后,借助工具提供的通道服務,可以輕松打通云上代理,進行互調。
橫向產品支撐:因為微服務化應用啟動或運行時,往往需要依賴 DB、MQ、Redis 等資源,端云聯調 3.0 也進行了相應的支持,除了微服務,數據庫、緩存、消息隊列等也都可以給本地訪問。
PaaS 層能力支持:對于開發常用的一些診斷、觀測能力, 端云聯調 3.0 也提供服務鑒權、流量控制、鏈路的診斷這樣的能力,更好地提升開發聯調效率。
EDAS 4.0 全新升級——多集群應用管理
我們看到隨著業務的發展,一些企業逐漸有了應用的集群級容災、多地域部署、業務同發這樣的挑戰和需求,還有一些企業的業務要同時部署在境外保證合規,以及一些政企客戶需要中央統一管控各個地方的應用。
為了應對這樣的應用交付新業務場景挑戰,EDAS 4.0 也是提供了全新的多集群應用管理支持,借助一個統一的應用模板,來實現通用的跨集群的應用部署管理。比如創建應用、更新應用、變更應用配置等左側這些原來單集群下的管理能力,全部升級為多集群維度的能力。也就是說可以站在多集群應用視角來對一個多集群應用實體,進行統一的治理、統一的觀測,不再需要多個集群間來回跳轉,解決前面提到的業務場景新挑戰,幫助客戶實現集群容災、多地部署等訴求。
EDAS 4.0 全新升級——“鳥瞰式”運維
最后針對線上運維的變化,EDAS 4.0 升級提供了鳥瞰式運維的支持。
云原生的應用,在微服務和容器化之后,顆粒度會更加小,所以再去進行精細化管控,已經不再合適,需要放養,需要鳥瞰式管理運維。我們認為鳥瞰式運維,主要可以從業務、應用、資源幾個維度逐層遞進來展開。
業務維度:通過提供流量無損、流量控制能力,保證業務應用的穩定運行,然后提供面向業務的灰度發布能力實現應用的可控上線,再加上按業務指標進行彈性的觸發實現業務的靈活負載。
應用維度:支持按照應用拓撲來觀測上下游調用情況,借助應用觀測與告警,來保證應用級服務接口問題的及時發現。并且可以直接進行應用級的統一變更,不用再深入到底層的工作負載維度去操作。
資源維度:提供一鍵檢索快速定位到 EDAS 的任意應用關聯的資源。并新增資源畫像能力,應用的資源畫像是直接關聯應用實例的,可以幫助用戶一鍵檢測出錯配、空轉的具體實例資源,同時提供動態調度,實現更可靠的資源動態分配。
總結
EDAS 是一款非常成熟的產品,從 1.0~2.0 時代圍繞企業業務中臺建設,更好的幫助企業實現資源集群化和業務彈性可伸縮,并提供標準的服務化開發框架,同時也很好地支持了一些企業業務在線化和中臺化。到了 2020 年,我們發布了 EDAS 3.0,實現了業務應用的監管控一體,并提供無侵入的雙模微服務的支持(也就是 Java+ 多語言微服務)。
現在,EDAS 正式來到 4.0 時代,發布了多項重磅新能力;同時聯合新產品—云原生應用設計開發平臺 ADD 1.0,一起發布云原生應用研發&運維 PaaS 產品家族,助力企業應用架構現代化升級。
點擊此處,即可查看 EDAS 相關介紹~
總結
以上是生活随笔為你收集整理的EDAS 4.0 助力企业一站式实现微服务架构转型与 K8s 容器化升级的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ALB Ingress 发布,轻松应对云
- 下一篇: 聚焦云原生,阿里云与 CNCF 共话「云