常見問題 - Azure Kubernetes 機群管理員

適用於: ✔️ 車隊管理器 ✔️ 中樞叢集版車隊管理器

本文涵蓋 Azure Kubernetes 機群管理員的常見問題。

Fleet Manager 服務常見問題

機隊經理是區域或全球資源嗎?

車隊管理員是區域資源。 針對災害復原使用案例的區域故障轉移支援已位於 藍圖中。

我可以將多少個叢集加入機群管理員?

Fleet Manager(無論是否有集線器叢集)都支援加入多達 1,000 個 Kubernetes 叢集。 成員叢集可以是 AKS 和具有 Arc 功能的 Kubernetes 的混合。

如果你希望 Fleet Manager 支援超過 1,000 個叢集,請 加入回饋。

我可以加入哪些 Kubernetes 叢集成為成員?

Fleet Manager 允許已獲授權的使用者,在任何 Azure 訂閱和區域中新增任何 AKS、AKS Automatic 或已啟用 Arc 的 Kubernetes 叢集,前提是該 Azure 訂閱必須與 Fleet Manager 屬於相同的 Microsoft Entra ID 租戶。

機群管理員是否支援受控識別?

是,機群管理員同時支援系統指派的和使用者指派的受控識別。 如需詳細資訊,請參閱搭配機群管理員使用受控識別 (部分內容可能是機器或 AI 翻譯) 的文件。

當我更改連接叢集的叢集身份時會發生什麼事?

變更成員叢集的身分識別會中斷 Fleet Manager 與該成員叢集之間的通訊。 雖然成員代理程式會使用新的身分識別來與 Fleet Manager 通訊,但機隊經理仍然需要知道新的身分識別。 執行此指令以解析:

az fleet member create \
    --resource-group ${GROUP} \
    --fleet-name ${FLEET} \
    --name ${MEMBER_NAME} \
    --member-cluster-id ${MEMBER_CLUSTER_ID}

與已啟用 Azure Arc 的 Kubernetes 的關聯性

Fleet Manager 支援 Azure 託管的 AKS 叢集以及支援 Azure Arc 的 Kubernetes 叢集作為成員叢集。

與 Azure Kubernetes Service 叢集的關聯性

Azure Kubernetes Service (AKS) 藉由將作業額外負荷卸載至 Azure,以簡化在 Azure 中部署受控 Kubernetes 叢集的作業。 做為託管 Kubernetes 服務的 Azure 會處理健康狀態監視和維護等重要工作。 由於 Kubernetes 控制平面是 Azure 管理的,因此您只會維護代理程序節點。 您會在 AKS 叢集上執行實際的工作負載。

Azure Kubernetes Fleet Manager 可協助您解決 Azure Kubernetes Service 叢集的規模和多重叢集案例。 Azure Kubernetes Fleet Manager 為您的 AKS 叢集提供群組表示法,並協助使用者協調叢集更新、Kubernetes 資源傳播和多重叢集負載平衡。 使用者工作負載無法在 Fleet Manager 中樞叢集上執行。

我可以從 Fleet Manager 布建新的 AKS 叢集嗎?

新 AKS 叢集的建立和生命週期管理在我們的藍圖中。 如果支援建立叢集是您的重要案例,請提供 意見反應 。

我需要管理 Fleet Manager 中樞叢集的更新嗎?

否。 Fleet Manager 的中樞叢集是Microsoft管理的資源。 Microsoft會在 Kubernetes 或節點映像有最新版本可用時,自動更新中樞叢集。

如果您嘗試更新或修改中樞叢集 (這是名為 hub 的單一節點 AKS 叢集),則一組拒絕規則會阻止套用您的變更。

為什麼我的 Fleet Manager 中樞叢集從 Failed 轉換為 Running?

Fleet Manager 中樞叢集是由 Microsoft 管理的 AKS 叢集,由您的訂閱建立。 你不需要對集線器叢集採取任何行動。

如果在佈建或操作中樞叢集時發生問題,它可能會進入 Failed 狀態。

Fleet Manager 會在定期執行的標準服務作業中自動協調樞紐叢集,這可能會使樞紐叢集進入 Running 狀態。

當集線器叢集處於 Failed 時,不會產生費用;但當它轉為 Running 時,就會產生費用。

多重叢集更新 - 自動化或手動常見問題

多叢集更新支援哪些叢集?

叢集類型 Supported 詳細資料 藍圖
AKS in Azure ✅ 全力支持。 -
AKS 自動化系统 ⚠️ 部分支援。 你無法關閉叢集層級的自動升級,所以叢集可能會不按順序更新。 5811
AKS 與 NAP 合作 ⚠️ 部分支援。 只支援 Kubernetes 控制平面升級。 5812
AKS 連線的叢集 ❌ 在裸機、Edge Essentials 和 Azure Local 上不支援 AKS。 5813
已啟用 Arc 的 Kubernetes 叢集 ❌ 不支援。 5813

Fleet Manager 支援哪些 AKS 更新通道?

Fleet Manager 支援以下 AKS 更新通道:

  • 快速:最新 AKS 支援 Kubernetes 版本 (N) 的更新。
  • 穩定:Kubernetes 穩定通道 (N-1) 的更新,其中 'N' 是最新的 AKS 支援的 Kubernetes 版本。
  • NodeImage:節點映像 VHD 已套用錯誤修正與安全性修補,並按每週發行時程發布。
  • TargetKubernetesVersion(Kubernetes 補丁):當補丁可用時,將叢集升級至指定目標版本的最新補丁版本。 支援只能透過 AKS Long-Term 支援 (LTS) 取得的 Kubernetes 次要版本。
  • SecurityPatch(Linux 節點映像):Node 映像作業系統更新,提供由 AKS 管理的安全修補程式,適用於節點上運行的現有 VHD。

目前不支援的 AKS 通道:

  • 非受管理:透過作業系統內建的修補直接套用節點映像作業系統更新(僅限 Linux 節點)。 目前沒有計畫讓 Fleet Manager 支援此選項。

我的自動升級設定檔中的目標 Kubernetes 次要版本不在社群支援範圍內。 我能做什麼?

您可以:

  • 在自動升級設定檔中允許長期支援 (LTS),並針對您想要在特定次要版本上保留的機群中的任何叢集啟用它。 請確定您使用的更新策略中只包含 LTS 叢集。
  • 將自動升級設定檔更新為新的目標 Kubernetes 次要版本。 叢集會在指定的 Kubernetes 次要版本發行時,更新為該次要版本中的最新修補程式。

如需在自動升級設定檔中啟用 LTS 的相關資訊,請參閱 目標 Kubernetes 版本更新。 如需在受管叢集上啟用 LTS 的相關資訊,請參閱 長期支援。

備註

若要在發生失敗時檢閱詳細資訊,並瞭解要採取的特定動作,請檢查自動升級設定檔狀態。

如果我讓 AKS 叢集自動升級保持啟用,會發生什麼事?

如果您讓 AKS 叢集的自動升級保持啟用,更新會由 Fleet Manager 或 AKS 叢集自動升級執行,取決於哪一方先執行。

Fleet Manager 不會更改 AKS 叢集自動升級設定的設定。

如果你想讓艦隊管理員管理自動升級,請在每個成員 AKS 叢集上關閉自動升級。

AKS 平台發起的升級的影響

若叢集在平台支援寬限期後仍維持在不支援的 Kubernetes 版本,AKS 將直接透過 平台發起的升級進行升級。 此升級不是機群管理員更新執行或叢集自動升級。 Fleet Manager 的更新群組和策略並不控制升級順序,升級也可能發生在叢集的維護視窗之外。 透過 Fleet Manager 更新執行及自動升級設定檔,保持成員叢集在支援版本。

AKS 叢集維護時段支援

維護視窗定義叢集何時可以安全升級。

Fleet Manager 會遵循每個成員叢集的 各叢集維護時段設定。

當維護窗口開啟時,升級不會立即開始。 原因包括:

  • 並行限制:即使開啟維護視窗,叢集可能因策略的並發設定而無法升級。
  • 定期輪詢:機群管理員每 60 分鐘輪詢開放的維護時段,因此最長等待時間為從時段開始起 60 分鐘。

一致的節點映射升級範圍為何?

只有當您選擇 選項時,才會針對包含在單一 consistent image 中的所有叢集保證節點一致性。

在不同更新執行之間,節點映像版本沒有一致性保證。

如何找出更新執行中使用了哪些節點映像?

更新執行作業會列出此執行作業所使用的所選節點映像。 即使更新尚未開始,你也能取得這些資訊。

可以選取多個節點映像,因為不同節點集區會在所有已選取要更新的叢集上運作。

要找到選取的圖片,請使用這個 Azure CLI 指令:

az fleet updaterun show \
    --resource-group ${GROUP} \
    --fleet-name ${FLEET} \
    --name ${UPDATE_RUN_NAME} \
    --query "status.nodeImageSelection.selectedNodeImageVersions"

你也可以在 Azure 入口網站的「更新執行總覽」頁面使用 View JSON 選項,查看更新執行的原始資料。

我的更新執行處於擱置狀態相當長的時間。 我該怎麼做?

機群管理員更新執行可能處於擱置狀態,原因有很多。 您可以透過 Azure 入口網站或依照監控文件查看更新的狀態。

長時間擱置狀態的兩個最常見原因是:

  • 成員叢集維護視窗:若成員叢集的維護視窗未開啟,更新執行會進入暫停狀態。 此暫停會阻擋更新群組或階段的完成,直到下一個維護視窗開啟。 要繼續更新執行,請手動跳過叢集。 如果您略過叢集,它會與更新執行中的其餘成員叢集不同步。

  • Kubernetes 或節點映像版本不在 Azure 區域:如果新的 Kubernetes 或節點映像版本沒有發佈到成員叢集所在的 Azure 區域,更新執行會進入待處理狀態。 您可以檢查 AKS 發行追蹤器 以查看版本的區域狀態。 雖然你可以跳過成員叢集,但如果同一 Azure 區域內有其他叢集,它們也無法更新。

我的自動升級執行已啟動,然後立即進入擱置狀態。 為什麼?

請參閱上一個問題。

我嘗試從我的自動升級設定檔建立更新執行作業,但看不到該更新執行作業。

當你手動 從自動升級設定檔產生更新執行作業 時,所產生的更新執行作業可能已經存在。

這種情況可能發生在自動升級設定檔自動產生更新執行,或是更新執行先前是手動產生時。

產生的更新執行名稱是根據自動升級設定檔的升級規範而定,該規範僅在更新節點映像或 Kubernetes 版本等屬性時才會改變。

你最常會在 Azure 入口網站中看到此問題,其中現有的更新執行作業不是最近一次的更新執行作業。 如果你遇到這個問題且找不到更新執行,請使用 Azure CLI 產生執行,以查看更新執行檔名稱。 Microsoft 計劃未來在 Azure 入口網站中修正此問題。

如果你產生了更新執行且它存在,現有的更新執行不會被修改。

編輯更新策略並不會影響已使用此策略的現有更新執行。 為什麼不呢?

當你建立更新執行時,策略會被複製到更新執行中,這樣策略的變更就不會影響執行中的更新執行。

我要怎麼防止單一叢集失敗導致整個更新執行中斷?

請在更新策略的階段和群組上使用 maxAllowedFailures 設定(自 API 版本 2026-06-02-preview 起可用)。 此設定允許你指定容忍多少成員叢集故障,直到該群組或階段被標記為失敗。 數值可以是固定整數(例如 "3"),或百分比(例如 "25%")。 當未設定或 "0"時,單一失敗將停止整個運行。

更多資訊請參閱最大允許失敗次數(預覽)。

為什麼儘管成員操作失敗,我的更新執行或群組仍顯示為已完成?

當你設定 maxAllowedFailures時,艦隊管理員只會評估失敗的成員更新次數。 它並不強制執行最低成功率。 因此,即使部分或全部成員失敗,只要機群管理員在進行其排程決策時,未超過設定的閾值,更新執行、階段或群組就仍可以Completed結束。

這個結果是預期且刻意為之,而非錯誤。 在將部署作業視為正常之前,務必檢查 FailureCount成員層級狀態和失敗原因。 對大多數更新策略來說,基於百分比的門檻比絕對值更容易推理。

使用 maxAllowedFailures 時我應該知道哪些規則和限制?

請記住下列規則:

  • 此功能自 API 版本 2026-06-02-preview 起開放。
  • 當您未設定 maxAllowedFailures 或將其設為 "0" 時,Fleet Manager 會採用快速失敗行為,並在第一個成員更新失敗後停止。
  • 該門檻僅根據故障數量進行評估。 它並不強制執行最低成功率。
  • 即使發生故障,只要設定閾值未超過,執行、階段或群組仍可顯示 Completed 。
  • 在更新平行執行時,FailureCount 可能會大於 maxAllowedFailures,因為在 Fleet Manager 停止排程更多工作之前,可能已有多個成員更新作業失敗。
  • 階段層級與群組層級的閾值獨立評估,且階段層級的失效會匯總至該階段所有群組。
  • 對於大多數部署而言,採用百分比的門檻比固定數字更容易理解,也更容易擴展,尤其是在小型群組中。

我可以預先核准嗎?

否。 只有在確認成員叢集準備好升級或升級成功完成後,才能批准升級。 如果您想要預先核准,您可以考慮在策略中完全不設定核准。

核准會過期嗎?

不會,核准會等到其已核准後才會繼續。 您無法設定核准的時間範圍。

我可以略過核准嗎?

如果您想跳過成員叢集升級以及關卡核准流程,請跳過包含的群組或階段。 如果您想繼續升級,則必須授予核准。

如何刪除核准?

如上一個問題所示,如果您想要繼續升級,則必須授予核准。 如果你想清理底層的閘資源,必須刪除相關的更新執行,這會刪除所有與更新執行串連的閘。

我可以同時設定後期核准和後期等待嗎?

是的。 後階段等待時間與核准同時開始。 兩者都必須先完成,才能繼續更新執行。

我可以在現有的更新策略中新增批准嗎?

是的。 您可以編輯現有策略以包含核准。 不過,您使用該策略建立的現有更新執行不會更新。

排程啟動閘如何與 AKS 叢集維護視窗互動?

排程啟動閘門與 AKS 叢集的計畫維護視窗是彼此獨立的控制項。 叢集必須同時符合這兩個條件,才能開始升級。 例如,如果預定的啟動閘門在凌晨 2:00 完成,但叢集的維護視窗直到 6:00 AM 才開啟,叢集則會等到 6:00 AM 開始升級。

我該如何控制更新執行時叢集更新的順序?

成員標籤與更新群組是選擇每個階段與群組中包含哪些叢集的兩種不同方式。 每個成員叢集可以指派到一個更新群組,但也可以有多個標籤。 成員標籤(使用 memberSelector)提供更多彈性,並支援複雜的選擇情境,因此是選擇車隊成員以進行更新策略的推薦方式。 欲了解更多資訊,請參閱 使用成員標籤的群組叢集。

如果我在舞台層級設定成員選擇器,還需要指定群組嗎?

否。 當你在舞台上設定 memberSelector 但未定義任何群組時,所有匹配的叢集會被視為同一群組。 階段控制同時升級的maxConcurrency叢集數量。 只有當你想在特定階段內將相符的成員分成具有不同平行處理設定的子集時,才需要定義群組。

如果我在群組層級設定成員選取器,更新群組會發生什麼情況?

如果你在群組層級設定 a memberSelector ,群組 name 欄位僅作為狀態報告和日誌的顯示識別碼。 為群組選取叢集時,memberSelector 的優先順序高於更新群組名稱。

叢集資源放置常見問題集

我可以在命名空間內選取資源以傳播嗎?

是的。 Fleet Manager 支援叢集範圍與命名空間範圍的資源配置:

藍圖

Azure Kubernetes Fleet Manager 的路線圖可在 GitHub 上取得。 團隊歡迎功能請求、問題及錯誤回報。

後續步驟