4月24日,由SOFAStack 開源社區主辦的“ SOFA開源三周年,Let’s have fun together!”活動于北京成功舉辦。數百位 SOFAStack 社區的開發者們共同慶祝,分享社區的點點滴滴。時速云CTO王磊受邀參與此次活動,并以“服務網格在企業落地的典型場景與實踐”為題進行分享。

服務網格驅動企業創新
當前,許多企業正在進行微服務改造,微服務架構能夠使每一個微服務獨立開發、部署、升級,進行彈性伸縮,使得應用的升級在局部完成迭代更新,不會對整體應用造成影響,這是微服務的魅力所在。但是,微服務改造在帶來便利的同時也帶來許多新問題,例如:微服務數量的增多使架構更加復雜;服務故障時如何快速排查、定位故障點;服務拆分后跨網絡、跨系統甚至跨數據中心調用帶來的安全問題等。在這一背景下,服務網格應運而生。
企業希望利用服務網格技術解決環境復雜、交叉以及內部服務調用的安全問題,擁有統一的服務治理能力、對企業內部業務系統狀態的觀測能力、服務灰度發布能力,同時希望解決遷移到網絡對已有系統造成的影響,降低服務治理帶來的應用開發成本等。
服務網格本質上是一張負責微服務之間通信的網絡,它本身不與應用代碼耦合,而且還能捕獲到底層環境的動態變化并作出調整。服務網格的核心功能是解決服務間通信及治理的問題,主要有三類:
1、流量管控、服務訪問安全控制以及服務可觀察性。重要的應用場景有:在流量洪峰時用于保護服務的限流、熔斷、降級等功能;
2、在發布新服務版本時的灰度發布;
3、用于系統運行狀態觀察與排查故障原因的全鏈路監控,監控的內容包括運行指標、日志和調用鏈等,可以讓用戶全方位的了解系統的運行狀態。
王磊介紹,服務網格主要的創新點在于服務治理能力與業務開發的解耦,使開發人員更專注在業務開發與創新上。同時,這種無侵入的治理模式,允許應用開發者選擇最合適的語言;而將服務治理能力下沉到基礎設施,可以把這種專業的事情交給專業人員去做,治理能力的迭代更新也可以不依賴于業務,更有助于雙向的驅動創新。
目前主流的服務網格技術更適用運行在 Kubernetes 上的微服務應用,但經過一定改造也可以接管傳統非容器化部署的應用,主要用于以非侵入的方式對服務提供治理能力。如果業務應用已經使用了 Spring Cloud、Dubbo 等微服務治理框架,通過產品提供的解決方案,也可以很好的同服務網格融合,并減少了業務應用對服務治理 SDK 的依賴。使用服務網格技術可以在平臺層對服務提供服務治理能力,理想情況下,對服務是無感知的,所以對業務應用方向、架構等的影響是業務應用不再需要考慮服務間通信的流量控制、安全和可觀察性等方面的問題。
服務網格在企業內的應用
服務網格技術與基于 Kubernetes 的容器化 PaaS 平臺技術有很大的依賴關系。目前 Kubernetes 已經非常成熟,大量企業的生產系統運行在 Kubernetes 上,這為服務網格技術的普及創造了很好的條件。時速云是最早將服務網格技術應用到頭部企業客戶核心系統的廠商之一,擁有豐富的落地經驗。時速云基于服務網格技術打造的服務治理平臺( TDSF)具有以下能力:
1、具備企業統一的注冊中心能力,支持Spring Cloud、Dubbo等多種微服務開發框架的接入,支持多集群、多租戶、多項目以及分組的服務發現與注冊,滿足企業內環境復雜、交叉的管理問題;
2、通過將 APM agent 自動注入到容器、虛擬機服務的方式,實現基于 APM 的全鏈路監控能力,支持集群、租戶、項目多個維度的鏈路隔離及授權范圍內的鏈路查看;調用鏈引入服務版本,將服務灰度發布及調用情況進行可視化展示;支持中間件訪問性能監控;結合業務埋點數據,提供鏈路跟蹤及日志查詢能力;
3、以向導的方式接入虛擬機服務,并允許一個 sidecar 對虛擬機上的多個服務進行治理,比如 WAS、Weblogic 等傳統中間件上部署多個服務的網格接入;
4、通過 EnvoyFilter 對 istio 控制面進行標準擴展,避免直接修改 CRD 帶來的兼容性問題;通過 xDS 向 envoy 或者 mosn 的 sidecar 下發配置,在 Envoy 上通過 WASM filter 實現對擴展配置的使用,在 mosn 上通過 convertxds 進行擴展配置的使用,實現多數據面并存;
5、為了避免過大 xDS 配置的下發,通過相關 istio CRD 的 exportTo 配置以及 Sidecar CRD 的配置來限制配置下發范圍,大幅降低配置下發帶來的網絡流量;
6、同時,基于 mosn 也實現了結合實際業務需求的治理能力,包括多接口、多協議的統一限流,HTTP/Dubbo 的灰度發布、路由,熔斷降級,mTLS/RBAC,擴展指標的采集及告警,各種負載均衡算法及會話保持,故障模擬等;
7、為了方便問題定位及調試,使 mosn 適配 istio 的 config dump 及 istioctl 相關命令工具;
8、通過 MCP 及擴展實現多種注冊中心的平滑接入,包括 Zookeeper、Eureka、Nacos 等。

王磊表示,具備生產環境上線的能力是服務網格的核心競爭力。時速云服務治理平臺( TDSF)在金融領域的企業客戶中得到了很好的應用。以大家保險為例,根據集團整體發展需求,時速云基于服務網格技術,整合先進的技術設計理念,對大家保險核心系統進行全面服務治理改造,打造了高度穩定的數字化管理平臺。
平臺上線后,先后對接了大家保險多個核心業務系統,實現了傳統 Web Service 服務,Spring Cloud 微服務,Dubbo 微服務等多種服務框架,以及傳統虛擬機部署和容器化部署等多種部署形態服務的統一注冊、發現與治理。在首季營銷中分布式服務框架經受了流量洪峰的考驗,通過全鏈路拓撲告警與監控,熔斷、限流與降級等技術保障了業務服務的穩定運行與高可用。
未來,時速云服務治理平臺( TDSF)將會服務更多的企業客戶,同時也會將各項能力陸續回饋到開源社區,希望服務網格技術能夠得到更好的應用與發展。