共用方式為


關於服務網格

服務網格是應用程式中的基礎結構層,可促進服務之間的通訊。 服務網格提供流量管理、復原、原則、安全性、強式身分識別,以及工作負載可檢視性等功能。 您的應用程式會與這些操作功能分離,而服務網格會將其移出應用程式層,並向下移至基礎結構層。

案例

您使用服務網格時,您可以啟用下列案例:

  • 加密叢集中的全部流量:在叢集中的指定服務之間啟用相互 TLS。 這可以擴充至網路週邊的輸入和輸出,並提供預設安全選項,不需要變更應用程式碼和基礎結構。

  • Canary 和階段式推出:指定流量子集要路由傳送至叢集中一組新服務的條件。 成功測試 Canary 發行時,請移除條件式路由,並逐步增加全部流量到新服務的百分比。 最後,全部流量都會導向至新的服務。

  • 流量管理和操作:針對服務建立原則,以將全部流量限制為來自特定來源的服務版本,或將重試策略套用於指定服務之間失敗類別的原則。 在移轉期間將即時流量鏡像到新版本的服務,或對問題進行偵錯。 在測試環境中插入服務之間的錯誤,以測試復原能力。

  • 可檢視性:深入了解您的服務如何連線,以及在其之間流動的流量。 收集叢集中全部流量的計量、記錄和追蹤,包括輸入/輸出。 將分散式追蹤功能新增至應用程式。

選取準則

選取服務網格之前,請確定您了解需求,以及安裝服務網格的原因。 詢問下列問題:

  • 輸入控制器是否足以滿足我的需求?:有時候在輸入時具有 A/B 測試或流量分割等功能,足以支援必要的案例。 請勿讓您的環境過度複雜,這完全沒有好處。

  • 我的工作負載和環境是否可以容忍額外的負荷?:支援服務網格所需的全部元件都需要 CPU 和記憶體等資源。 全部 Proxy 及其相關聯的原則檢查都會將延遲新增至您的流量。 如果您有對延遲相當敏感的工作負載,或無法提供額外的資源來涵蓋服務網格元件,您應該重新考慮使用服務網格。

  • 這是否會增加不必要的複雜度?:如果安裝服務網格的原因是取得不一定對商務或營運小組極為重要的功能,請考量安裝、維護和設定的額外複雜度是否值得。

  • 這可以在累加方法中採用嗎?:某些提供許多功能的服務網格可以在更累加的方法中採用。 只安裝您需要的元件,以確保您的成功。 如果您日後發現需要更多功能,請撥冗加以探索。 禁止從頭開始安裝「所有項目」

下一步

Azure Kubernetes Service (AKS) 為 Istio 和 Open Service Mesh 提供正式支援的附加元件:

還有一些開放原始碼專案和第三方也提供經常與 AKS 搭配使用的服務網格。 AKS 支援原則未涵蓋這些服務網格。

如需服務網格環境的詳細資訊,請參閱第 5 層的服務網格環境

如欲了解更詳細的服務網格標準化工作,請參閱: