《Istio官方文件》什麼是Istio——設計理念
阿新 • • 發佈:2018-12-22
原文連結 譯者:carvendy
設計理念
這頁概述了Istio的核心設計理念。
Istio的架構裡有一些關鍵的設計理念,是在服務在一定規模上和高效能的標準上,系統必備的能力。
- 公開透明。為了適應Istio,運維人員和開發人員應該做一些最小限度的工作從系統中獲取真實值。為此,Istio可以自動注入在服務間的所有網路路徑。Istio使用了sidecar代理獲取流量,通過代理而無需任何程式碼,就可以在自動的應用網路層來路由流量。在Kubernetes,代理注入到了pods,而流量是通過iptables的規則來獲取的。在sidecar代理會注入,而流量路由是程式化的,Istio是可以協調所有流量的。此原則也可以適應於效能。當使用Istio開發時,運維人員在保證效能的可用性下,應該檢視在源消耗的最小增長。元件和API必須設必須考慮效能和規模。
- 增長率。作為運維人員和開發人員,在系統必須增長到他們需要的數量時,將會越來越依賴Istio提供的功能。當希望加入自己的新特性,更加需要地可以自己擴充套件策略系統,使得源策略更加完整,可以控制和傳輸關於網格行為的訊號量來分析其他系統的行為。策略在執行的的時候,提供標準的擴充套件機制可以插入到其他服務中。除此之外,它可以基於網格產生的新訊號量,來擴充套件更多的策略。
- 可移植性。生態中,Istio可以在多個維度中使用。Istio必須執行在雲或在預上線環境可以有最小的影響。可以容易地移植Istio的基礎服務到新環境,並且這可以使用Istio操作單個服務釋出到多種環境(在多個雲上冗餘來做例子)。
- 策略一致性