315 Istio1 1 功能預告,真的假不了

2022-07-17 08:12:11 字數 2405 閱讀 5452

istio 1.0版本發布到現在,已經過去8個月。istio1.1的候選版本也到了rc5,預計近期會正式發布1.1。此版本包含了許多錯誤修復,在流量管理,安全,策略和遙測,多集群等領域新增了新的功能。

對1.0的使用者來說,感受最強烈的是:

預設關閉了策略執行功能

預設開啟了mesh外的訪問,再也不用擔心未配置serviceentry對外的訪問突然不通了。

多集群不再只是1.0那種扁平網路的簡單方案,提供了單控制面、多控制面幾種方案,可以根據自己的場景需求選擇。

安全上sds也終於來了提供更靈活的安全基礎能力。

效能上做了多點優化,總體表現值得期待。

另外1.1提供了很多新的能力,在配置使用上也會有所不同,雖然不至於像0.8到1.0引入v1alph3導致介面大變樣那麼誇張,但api的使用確實值得我們去注意。最直觀的感受將是,原來的結構上欄位突然多了很多。

istio社群對1.1發布的初步文件已經在istio.io上提供,今天我們就率先為容器魔方粉絲獻上中文版的功能預告

新的sidecar:資源:在指定命名空間中使用sidecar資源時,支援定義可訪問的服務範圍,這樣可以降低發給proxy的配置數量。在大規模的集群中,我們推薦給每個namespace增加sidecar物件。 這個功能主要是為了提公升效能,減輕proxy計算的負擔。

限制網路資源的生效範圍:為所有的網路資源增加了exportto的字段,用來表示此網路資源在哪些namespace中生效。這個字段目前只有兩個值:

更新了serviceentry的資源:指定服務的位置以及使用雙向tls關聯的san。帶https埠的service entry不再需要額外的virtualservice來開啟基於sni的路由。

細粒度的多集群路由:簡化了多集群的安裝,並支援額外部署模式,能夠利用ingress gateways連線多個集群,而不使用pod級別的vpn。在每個集群中都部署控制面以提供高可用,跨集群建立全域性的命名空間。在高可用控制面方案中,預設開啟az/region的區域感知能力,降低跨區請求造成的效能損耗。

棄用istio ingress:刪除了以前棄用的istio ingress。

readiness and liveness 探針:在雙向tls啟用的場景下支援kubernetes http readiness和liveness探針。

集群rbac配置:使用clusterrbacconfig資源物件替代原來的rbacconfig。clusterrbacconfig支援集群範圍的配置。

基於sds的身份設定:on-node秘鑰生成和動態證書替換不用重啟envoy。

tcp授權管理:除了http和grpc外,支援對tcp服務的授權管理。

最終使用者組授權管理:支援jwt中組宣告或者列表型別的宣告。

每路徑終端使用者認證:可以啟用和禁用基於訪問路徑的jwt認證。

gateway上外部證書管理:支援動態載入和替換外部證書。

整合vault pki:提供vault保護的秘鑰簽名並與現有vault pki整合。

自定義的可信域:在身份標識中支援特定org或cluster的安全域。

不可路由的l3網路:在不可路由的l3網路多集群環境中使用乙個istio 控制面。

多控制平面:在多集群環境中,支援安裝多個istio控制平面。

預設關閉策略檢查功能:為了提高多數客戶場景下的效能,安裝時預設關閉策略檢查, 後期可按需開啟此功能。

多方面降低開銷 ,提公升效能和可擴充套件性:

控制請求頭和路由:增加選項使介面卡可以修改請求頭和路由。

程序外介面卡:程序外介面卡功能生產可用,下個release棄用程序內介面卡。

多方面增強tracing的能力: 

預設的tcp指標:為追蹤tcp連線增加預設指標。

galley:galley在istio中提供主要的配置管理和分發機制。它提供了乙個健全的模型來驗證,轉換和分發配置狀態到istio各元件,使istio元件與kubernetes的細節隔離。galley使用mesh configuration protocol(mcp)和元件互動。

監控埠:galley的預設監控埠從9093改為15014。

校驗命令:為 istio kubernetes 的資源增加離線校驗命令—— istioctl validate。

驗證安裝命令:在使用指定的yaml檔案安裝istio前,可以用istioctl experimental verify-install 來預先檢驗istio的安裝狀態。

棄用的命令:棄用 istioctl create,istioctl replace, istioctl get 和 istioctl delete,使用 kubectl 代替;棄用 istioctl gen-deploy,使用helm template代替。下個版本(1.2)將刪除這些命令。

命令的縮寫: 用kubectl操作istio網路資源時可以使用縮寫,例如: gateways簡寫為gw,virtualservice簡寫為vs等等。

istio helm 配置的更改:

315 Istio1 1 功能預告,真的假不了

istio 1.0版本發布到現在,已經過去8個月。istio1.1的候選版本也到了rc5,預計近期會正式發布1.1。此版本包含了許多錯誤修復,在流量管理,安全,策略和遙測,多集群等領域新增了新的功能。對1.0的使用者來說,感受最強烈的是 另外1.1提供了很多新的能力,在配置使用上也會有所不同,雖然不...

istio的原理和功能介紹

目錄3 功能列表 4 效能評估 當前我們已經完成從單體的應用程式向微服務架構的轉型,未來還可能會面臨更多的分布式場景需求。以往只需要執行好乙個單體的應用,現在卻面臨著對整體服務網路管理,隨著規模和複雜度的不斷增長,服務網路勢必會越來越難以理解和管理。那麼我們如何去應對這些挑戰呢?這就是istio所能...

關於Istio 1 1,你所不知道的細節

本文整理自istio社群成員star在 cloud native days china 2019 北京站的現場分享 第1則主角 istio istio作為service mesh領域的明星專案,從2016年發布到現在熱度不斷攀公升。官網中istio1.1的架構圖除了資料面的envoy和控制面的pil...