共用方式為


網路隔離的 Azure Kubernetes Service (AKS) 叢集 (預覽)

組織通常會有嚴格的安全性和合規性需求,以規範來自叢集的輸出(輸出)網路流量,以消除數據外流的風險。 根據預設,Azure Kubernetes Service (AKS) 叢集具有不受限制的輸出因特網存取。 此網路存取層級可讓您執行的節點和服務視需要存取外部資源。 如果您想要限制連出流量,則必須能夠存取有限數量的連接埠和位址,才能維持狀況良好的叢集維護工作。 AKS 叢集輸出網路和 FQDN 規則的概念檔 提供 AKS 叢集 及其選擇性附加元件和功能的必要端點清單。

限制叢集輸出流量的其中一個解決方案是使用防火牆裝置來限制以域名為基礎的流量。 使用必要的輸出規則和 FQDN 手動設定防火牆是一個繁瑣且複雜的程式。

另一個解決方案是網路隔離的 AKS 叢集 (預覽),可簡化現成叢集的輸出限制設定。 接著,叢集操作員可以針對想要啟用的每個案例,以累加方式設定允許的輸出流量。 因此,網路隔離的 AKS 叢集可降低數據外泄的風險。

重要

AKS 預覽功能可透過自助服務,以加入方式使用。 預覽會以「現狀」和「可供使用時」提供,其其不受服務等級協定和有限瑕疵擔保所保護。 客戶支援部門會盡最大努力,部分支援 AKS 預覽。 因此,這些功能不適合實際執行用途。 如需詳細資訊,請參閱下列支援文章:

網路隔離叢集的運作方式

下圖顯示 AKS 網路隔離叢集相依性之間的網路通訊。

網路隔離 AKS 叢集的流量圖。

AKS 叢集會從 Microsoft 成品登錄 提取叢集及其功能或附加元件所需的映像。 此映像提取可讓 AKS 提供較新版本的叢集元件,以及解決重大安全性弱點。 網路隔離叢集會嘗試從連線到叢集的私人 Azure Container Registry (ACR) 實例提取這些映像,而不是從 MAR 提取。 如果映像不存在,私人 ACR 會從 MAR 提取它們,並透過其私人端點提供它們,而不需要啟用從叢集到公用 MAR 端點的輸出。

具有網路隔離叢集的私人 ACR 支援下列選項:

  • AKS 管理的 ACR - AKS 會建立、管理及協調此選項中的 ACR 資源。 您不需要指派任何許可權或管理 ACR。 AKS 會管理網路隔離叢集中所使用的快取規則、私人連結和私人端點。 AKS 管理的 ACR 會遵循基礎結構資源群組中的其他資源(路由表、Azure 虛擬機器擴展集 等)相同的行為。 為了避免叢集元件或新的節點啟動程式失敗的風險,請勿更新或刪除 ACR、其快取規則或其系統映射。 AKS 管理的 ACR 會持續協調,讓叢集元件和新節點如預期般運作。

    注意

    刪除 AKS 網路隔離叢集之後,系統會自動刪除 AKS 管理的 ACR、私人連結和私人端點等相關資源。

  • 自備 (BYO) ACR - BYO ACR 選項需要建立 ACR,且 ACR 資源與 AKS 叢集之間具有私人連結。 請參閱 使用 Azure Private Link 私下連線到 Azure 容器登錄,以瞭解如何為您的登錄設定私人端點。

    注意

    當您刪除 AKS 叢集時,不會自動刪除 BYO ACR、私人連結和私人端點。 如果您將自定義映像和快取規則新增至 BYO ACR,它們會在叢集對帳之後、停用功能之後或刪除 AKS 叢集之後保存。

建立網路隔離的 AKS 叢集時,您可以選擇下列其中一種私人叢集模式:

  • 私人連結型 AKS 叢集 - 控制平面或 API 伺服器位於 AKS 管理的 Azure 資源群組中,而您的節點集區位於您的資源群組中。 伺服器和節點集區可以透過 API 伺服器虛擬網路中的 Azure Private Link 服務,以及 AKS 叢集子網上公開的私人端點彼此通訊。
  • API Server VNet 整合 (預覽) - 使用 API Server VNet 整合設定的叢集會將 API 伺服器端點直接投影到部署 AKS 的虛擬網路中委派的子網。 API 伺服器 VNet 整合可在 API 伺服器與叢集節點之間啟用網路通訊,而不需要使用私人連結或通道。

限制

常見問題集

網路隔離叢集與 Azure 防火牆 有何差異?

網路隔離的叢集不需要整個叢集啟動載入程式超過 VNet 的任何輸出流量。 網路隔離叢集的輸出類型會是 noneblock。 如果輸出類型設定為 none,則 AKS 不會設定叢集的任何輸出連線,讓使用者自行設定它們。 如果輸出類型設定為 block,則會封鎖所有輸出連線。

防火牆通常會在受信任的網路和不受信任的網路 (例如網際網路) 之間建立屏障。 例如,Azure 防火牆可以根據目的地的 FQDN 來限制輸出 HTTP 和 HTTPS 流量,讓您更精細地輸出流量控制,但同時可讓您提供 FQDN 的存取權,其中包含 AKS 叢集的輸出相依性 (NSG 無法做到這點)。 例如,您可以將叢集的輸出類型設定為 userDefinedRouting ,以強制透過防火牆輸出流量,然後設定輸出流量的 FQDN 限制。

總而言之,雖然 Azure 防火牆 可用來定義具有輸出要求之叢集的輸出限制,但網路隔離叢集會藉由消除或完全封鎖輸出要求,進一步採用安全默認狀態。

我需要為網路隔離叢集設定任何允許清單端點才能運作嗎?

叢集建立和啟動載入階段不需要來自網路隔離叢集的任何輸出流量。 AKS 元件和附加元件所需的映像會從連線到叢集的私人 ACR 提取,而不是從公用端點上的 Microsoft 成品登錄 (MAR) 提取。

設定網路隔離叢集之後,如果您想要啟用需要對其服務端點提出輸出要求的功能或附加元件,則可以將私人端點設定為 Azure Private Link 所提供的服務。

我可以手動升級套件以升級節點集區映像嗎?

不支援根據輸出將套件升級至套件存放庫的套件。 相反地,您可以 自動升級節點OS映像。 僅 NodeImage 支援網路隔離叢集的節點OS自動升級通道。

下一步