Istio

可連結、監控和保護微服務的開放式平台。

總覽

Istio 是開放原始碼的獨立服務網格,可提供成功執行分散式微服務架構所需的基本要素。隨著越來越多機構採用雲端平台,開發人員必須使用微服務進行架構,藉此提高可攜性;操作人員則必須管理日趨龐大的分散式部署系統,而且這些部署系統通常採用混合和多雲端的部署方式。Istio 以統一的方式來管理微服務的安全、連結和監控作業,能夠降低管理微服務的複雜度。

Istio Security

減輕安全負擔,可讓開發人員專注於其他關鍵工作。

Istio Monitoring

通過完善可靠、易用的監控功能,迅速有效地偵測和修復問題。

Istio Connect

在您的部署作業進行資源調度時,Istio 會簡化流量管理作業。

由於提升了應用程式資料的可見度,當問題發生時,排解問題所需的時間也大幅減少。在 K8 上使用 Istio,讓我們有把握能將應用程式安全遷移到公用雲端,並提升平台的可靠度、穩定度和效能。

Autotrader 基礎架構部門主管 Russell Warman
安全的服務通訊

保護服務通訊的安全

Istio 可調度資源,管理微服務之間的驗證作業、授權作業以及通訊內容的加密。Istio 還提供基礎安全通訊管道,讓開發人員專注於應用程式層級的安全。

服務通訊

保護通訊安全

Istio 加強了微服務和通訊 (包含服務對服務和使用者對服務的通訊) 的安全機制,卻不需要更改服務程式碼。這可讓每項服務都具備識別角色和身分的優異功能,進而促進叢集和雲端之間的協同整合。

深入防禦機制

深入防禦機制

當您將 Istio 與 Kubernetes (或基礎架構) 網路政策搭配使用時,Pod 對 Pod 或服務對服務通訊在網路層或應用程式層都會受到保護。Istio 以 Google 的深入防禦策略為基礎保護微服務通訊。在 Google Cloud 中使用 Istio 時,我們的基礎架構可讓您建立真正安全的應用程式部署作業。

預設將安全性納入考量

預設將安全性納入考量

只要稍微變更甚至不須變更應用程式,Istio 會預設讓服務通訊受到保護,而且您可以針對不同的通訊協定和執行階段,實施一貫政策。

記錄

記錄、監控和維持服務順利運行

Istio 會透過追蹤、監控和登入資訊,針對您服務網格的部署作業,提供深入分析。瞭解您的服務成效,以及該項成效如何影響其他流程,以及迅速有效地偵測和分類問題。

一覽無遺

一覽無遺

Istio 的自訂資訊主頁可讓您清楚瀏覽所有服務的行為狀態,快速察覺問題並有效進行分類。

瞭解服務

瞭解服務效能

Istio 的監控功能讓您瞭解服務成效對上下游的影響,以便您更有效地設定、監控及履行服務水準目標。

指標

協助您適時取得需要的指標

開發人員不必在應用程式中手動加入任何工具,即可從所有執行中的應用程式取得統一的指標和追蹤項目。

流量管理

流量管理和政策控制

Istio 流量管理可讓您控制服務間的流量和 API 呼叫。您將獲得更全面的流量資訊,並可因此防患未然。呼叫將更加可靠、網路也將更加健全,即便遇到不良狀況,也能隨機應變。

簡單的規則配置

簡單的規則設定

Istio 可讓您設定斷路器、逾時和重試等服務等級屬性,並設定常見的連續部署任務,例如初期推出版、A/B 版本測試,以及根據流量拆分百分比的階段發佈。

放置內容

輕鬆駕馭您的內容

您可以指定流量必須遵循的規則,以便將流量轉送至服務版本 (與支援該版本的執行個體數量無關)。舉例來說,您可以指定將所有流量的百分之五轉送到特定的初期版本,或者根據要求的內容將流量轉送到特定版本。

故障復原

立即可用的故障復原功能

健全且立即可用的故障復原功能,其中包括逾時預算和多變誤差的逾時、重試、對上游服務的並行連線和要求限制、針對負載平衡集區中每個成員的主動定期健康狀態檢查,以及被動式健康狀態檢查 (例如完善控管的斷路器)。

Istio 安全防護功能

完善的服務驗證機制

Istio 驗證功能可確保只有通過嚴格驗證及授權的用戶端,才能存取包含機密資料的服務。

驗證政策

根據 Istio 的設定政策,系統必須為伺服器端進行平台驗證,但不會在用戶端強制執行此政策,並允許您指定服務的驗證要求。

依不同的角色授予存取權控制 (RBAC)

針對 Istio 服務網格中的服務,Istio RBAC 提供命名空間層級、服務層級和方法層級的存取權控管。這項功能包括易於使用的角色式語意、服務對服務和使用者對服務的授權,並為角色和角色綁定提供豐富便利的自訂屬性支援。

雙向 TLS 驗證

Istio 加強了微服務和通訊,包含服務對服務和使用者對服務的通訊安全機制,卻不需要更改服務程式碼。這可讓每項服務都具備識別角色和身分的優異功能,進而促進叢集和雲端之間的協同整合。

金鑰管理

Istio 的金鑰管理系統會自動進行金鑰和憑證的產生、發佈、輪替以及撤銷作業。

Istio 監控功能

後端抽象層

Mixer 是提供政策控制項和遙測集的 Istio 元件,會將 Istio 的其餘部分與各個基礎結構後端的實作詳情隔離開來。

中繼

針對網格和基礎架構後端之間的所有互動,Mixer 提供完善的細部控制。

低延遲

跟網格中每個位於服務執行個體旁、且必須節制使用記憶體的補充 Proxy 不同,Mixer 獨立存在,因此可使用相當大的記憶體和輸出緩衝區;對補充 Proxy 而言,是擴充性和可用性都很高的第二層快取。

高可靠性

Mixer 旨在為每個 Mixer 執行個體提供高可用性。其本機快取和緩衝區可以減少延遲,但也會遮蔽基礎架構的後端故障,即使後端沒有回應也是如此。

Istio 連結功能

將流量管理和基礎架構的資源調度加以分離

將流量管理與基礎架構的資源調度分離開來,可提供存在於應用程式碼之外的功能,例如 A/B 版本測試的動態要求轉發、逐步推出和初期推出版,它還使用逾時、重試和斷路器以及容錯植入來處理故障復原,測試跨服務故障復原政策的相容性。

容錯植入

由於錯誤配置的故障復原政策可能導致應用程式中的關鍵服務持續無法使用,因此端到端故障復原測試至關重要。Istio 可為網路啟用通訊協定專用容錯植入,而不是在 TCP 層刪除 Pod、延遲或損壞的封包。

負載平衡

Istio 目前允許 Envoy 支援的三種負載平衡模式:循環配置 (每個健康上游主機會以循環順序選擇)、隨機 (隨機負載平衡器會選擇隨機健康主機),以及最少加權要求。

微服務的發展越來越成功,而且受到各個工作負載的廣泛採用,因此我們越來越難持續掌握是什麼人在提供哪些微服務。但只要部署 Istio,不論我們的服務是使用哪種語言建立而成,都能透過統一的方法即時洞察這些服務並取得相關深入分析。持續掌握服務的運作情況,有助於我們更快解決問題,以及提升服務的可靠性。

Descartes Labs 共同創辦人 Tim Kelton

說明文件

搭配 Compute Engine 使用 Istio

將 Compute Engine VM 整合至部署於 Kubernetes Engine 的 Istio 服務網格。

Istio 存放區

將您的程式資料提交至 OSS 程式碼集來協助改善 Istio。

資源

探索教學課程、學習快速入門導覽課程及瀏覽評論。

下載最新版 Istio

適用於 Kubernetes、Nomad、Consul 和 Eureka 的 Istio 快速入門導覽課程

瞭解如何為 Google Cloud Endpoints 服務設定 Istio

部署範例應用程式,進一步瞭解 Istio 服務網格

隨時掌握 Istio 最新功能的相關消息

指令列和設定選項的詳細資訊

整合

Istio 適用的企業支援

針對內部部署和非 GCP 雲端部署作業,Google Cloud 提供 Istio 適用的企業支援。支援等級各有不同,提供多樣化的選擇。支援服務項目具有可用於測試 Kubernetes 配置的 Google 認證映像檔、VM 的安裝以及維護作業等等。額外選項還包括 Google Cloud 專家提供的專業服務。

Istio 適用的 Apigee API 管理

一旦微服務需要與合作夥伴或客戶進行外部通訊,或在內部需要與其他組別進行通訊,就會成為 API。Google Cloud 提供 Istio 適用的 Apigee API 管理,以提供 API 管理與微服務的本機整合。無論 API 位於雲端或內部部署環境,機構皆可透過 Apigee 以安全的方式進行管理及監控。