istio 1.0版本發布到現在,已經過去8個月。istio1.1的候選版本也到了rc5,預計近期會正式發布1.1。此版本包含了許多錯誤修復,在流量管理,安全,策略和遙測,多集群等領域新增了新的功能。
對1.0的使用者來說,感受最強烈的是:
另外1.1提供了很多新的能力,在配置使用上也會有所不同,雖然不至於像0.8到1.0引入v1alph3導致介面大變樣那麼誇張,但api的使用確實值得我們去注意。最直觀的感受將是,原來的結構上欄位突然多了很多。
istio社群對1.1發布的初步文件已經在istio.io上提供,今天我們就率先為容器魔方粉絲獻上中文版的功能預告
新的sidecar:資源:在指定命名空間中使用sidecar資源時,支援定義可訪問的服務範圍,這樣可以降低發給proxy的配置數量。在大規模的集群中,我們推薦給每個namespace增加sidecar物件。 這個功能主要是為了提公升效能,減輕proxy計算的負擔。
限制網路資源的生效範圍:為所有的網路資源增加了exportto的字段,用來表示此網路資源在哪些namespace中生效。這個字段目前只有兩個值:
. 表示此網路資源只在自己定義的namespace生效;
*表示此網路資源在所有的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控制平面。
策略和遙測
預設關閉策略檢查功能:為了提高多數客戶場景下的效能,安裝時預設關閉策略檢查, 後期可按需開啟此功能。
多方面降低開銷 ,提公升效能和可擴充套件性:
減少envoy生成的統計資料的預設收集
為mixer的工作負載增加load-shedding功能
改進envoy和mixer的通訊協議
控制請求頭和路由:增加選項使介面卡可以修改請求頭和路由。
程序外介面卡:程序外介面卡功能生產可用,下個release棄用程序內介面卡。
多方面增強tracing的能力:
trace id支援128bit的範圍
支援向lightstep傳送追蹤資料
增加選項完全禁用mixer支援的服務的追蹤功能
增加策略的decision-aware 追蹤
預設的tcp指標:為追蹤tcp連線增加預設指標。
galley:galley在istio中提供主要的配置管理和分發機制。它提供了乙個健全的模型來驗證,轉換和分發配置狀態到istio各元件,使istio元件與kubernetes的細節隔離。galley使用mesh configuration protocol(mcp)和元件互動。
監控埠:galley的預設監控埠從9093改為15014。
istioctl和kubectl
校驗命令:為 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 配置的更改:
預設關閉egressgateway
預設關閉mixer policy
預設允許所有出口流量(不用配置service entry),出口流量策略設定為allow_any
315 Istio1 1 功能預告,真的假不了
istio 1.0版本發布到現在,已經過去8個月。istio1.1的候選版本也到了rc5,預計近期會正式發布1.1。此版本包含了許多錯誤修復,在流量管理,安全,策略和遙測,多集群等領域新增了新的功能。對1.0的使用者來說,感受最強烈的是 預設關閉了策略執行功能 預設開啟了mesh外的訪問,再也不用擔...
istio的原理和功能介紹
目錄3 功能列表 4 效能評估 當前我們已經完成從單體的應用程式向微服務架構的轉型,未來還可能會面臨更多的分布式場景需求。以往只需要執行好乙個單體的應用,現在卻面臨著對整體服務網路管理,隨著規模和複雜度的不斷增長,服務網路勢必會越來越難以理解和管理。那麼我們如何去應對這些挑戰呢?這就是istio所能...
關於Istio 1 1,你所不知道的細節
本文整理自istio社群成員star在 cloud native days china 2019 北京站的現場分享 第1則主角 istio istio作為service mesh領域的明星專案,從2016年發布到現在熱度不斷攀公升。官網中istio1.1的架構圖除了資料面的envoy和控制面的pil...