Istio 宣佈引入全新的無 sidecar 資料平面模式,sidecar 模式依然保留

語言: CN / TW / HK

當地時間 9 月 7 日,  Istio 宣佈 引入了一種新的資料平面模式 Ambient Mesh,該模式取消了以 sidecar 為中心的架構,取而代之的是無 sidecar 的方法,同時保留了 Istio 的零信任安全、遙測和流量管理的核心功能。

Istio 方面認為,雖然自創立以來,Istio 架構的關鍵特徵之一就是使用 Sidecar,但 sidecar 模式並沒有在應用程式和 Istio 資料平面之間提供完美的隔離,這導致侵入性較高、資源利用不足、流量中斷等問題,使用者需要有一個侵入性更低、更容易使用的選擇。

根據介紹,在之前的模式中,Istio 在單一的架構元件 sidecar 中實現了從基本的加密到高階的 L7 策略的所有資料平面功能。這使得 sidecar 成為一個要麼全選、要麼全無的元件。即使工作負載只需要簡單的傳輸安全,管理員仍然需要付出部署和維護 sidecar 的運營成本。sidecar 對每個工作負載都有固定的運維成本,無法根據用例的複雜性進行擴充套件。

Ambient mesh 採用了不同的方法,它則將 Istio 的功能分成了兩層。在底層,有一個安全覆蓋層來處理流量的路由和零信任安全。在這之上,使用者需要時可以通過啟用 L7 處理來獲得 Istio 的全部能力。L7 處理模式雖然比安全覆蓋層更重,但仍然作為一個 ambient 元件執行,不需要對應用 pod 進行修改。

ambient mesh 的分層

這種分層方法允許使用者以增量的方式使用 Istio,從完全沒有 mesh 到安全覆蓋,再到完整的 L7 處理,使用者可以根據需要以 namespace 為操作單位進行平滑過渡。此外,ambient 模式和 sidecar 模式下執行的工作負載可以無縫地進行互動,使用者可以根據不斷變化的需求混合使用不同的模式。

Istio 官方認為,Ambient mesh 將是許多網格使用者未來的最佳選擇,但對於那些需要專用資料平面資源的場景,例如合規要求、效能調優等,sidecar 仍然是不錯的選擇。Istio 將繼續支援 sidecar,而且支援 sidecar 與 Ambient mesh 無縫互通。

據悉,這個新框架由 Google 和 Solo 團隊共同開發。

“在很多環境中,每個人都在瘋狂使用 Istio,但我們想弄清楚如何提高採用率。”Solo.io 執行長 Idit Levine 接受 TechCrunch 採訪時候說道,“我們從客戶那裡學到的是,要讓 Istio 在運營上變得更好。現在還不錯,但我們想讓它變得更好。我們希望效能會變得更好,與成本相關的任何事情都得到改進。”

谷歌和 Solo 分別開始做了自己的專案來解決這些問題,但很快意識到他們都在朝著同一個目標努力,隨後決定整合他們的資源。

谷歌首席工程師 Louis Ryan 指出,谷歌在開始開發這個專案時,非常重視新解決方案的安全問題。“服務網格很大一部分是為人們解決安全問題。我們想幫助客戶解決的這種運營摩擦,我們還要確保在這樣做時不會丟失系統的任何安全屬性。”

關於 Ambient Mesh 的安全問題,官方也釋出了部落格解釋:

Solo 的 Levine 同時強調,她的團隊專注於 Ambient Mesh 的運營方面,包括安裝、更新以及日常運營。在將 Ambient 安裝到叢集中時,現有應用程式會繼續執行。

“採用 Service Mesh 的最大敵人一直是複雜性,”T-Mobile 技術人員 Joe Searcy 說道。“即使像 Istio 這樣的專案已經在努力降低複雜性,但為大型企業管理 Service Mesh 的資源和運營開銷仍然使 Service Mesh 的採用變得很麻煩。Ambient Mesh 的出現非常令人興奮。”

Ambient Mesh 現在作為測試版提供給 Solo 使用者,在該公司推出 Gloo Mesh 2.1 後,其將普遍可用。當然,它也是 Istio 開源專案的一部分。

參考連結: