訓練
模組
使用 Azure Kubernetes Service 套用叢集升級和安全性修補檔 - Training
將最新版的升級和修補檔套用至您的 Azure Kubernetes Service 叢集。
認證
Microsoft Certified: Azure Security Engineer Associate - Certifications
示範實作安全性控制、維護組織的安全性狀態以及識別和修復安全性漏洞所需的技能。
AKS 提供多個自動升級通道,專用於即時節點層級 OS 安全性更新。 此通道與叢集層級 Kubernetes 版本升級不同,並會將其取代。
節點層級 OS 安全性更新的發行速度比 Kubernetes 修補程式或次要版本更新更快。 節點 OS 自動升級通道可提供彈性,並為節點層級 OS 安全性更新啟用自訂策略。 然後,您可以針對叢集層級 Kubernetes 版本自動升級選擇個別計劃。
最好同時使用叢集層級自動升級和節點 OS 自動升級通道。 透過套用兩組個別的維護時段 - aksManagedAutoUpgradeSchedule
,即可微調排程對叢集自動升級通道套用,對節點 OS 自動升級通道則套用aksManagedNodeOSUpgradeSchedule
。
選取的通道會決定升級的時間。 變更節點 OS 自動升級通道時,最長需要等候 24 小時以使變更生效。
注意
NodeImage
。下列是可用的升級通道。 您可選擇下列其中一個選項:
管道 | 描述 | OS 特有的行為 |
---|---|---|
None |
節點不會自動套用安全性更新。 這表示您須全權負責安全性更新。 | N/A |
Unmanaged |
系統會透過 OS 內建修補基礎結構自動套用 OS 更新。 新配置的機器一開始處於未修補狀態。 OS 基礎結構會在某個時間點對其進行修補。 | Ubuntu 和 Azure Linux (CPU 節點集區) 大約每天 06:00 UTC 左右透過自動升級/dnf-automatic 套用安全性修補程式一次。 Windows 不會自動套用安全性修補程式,因此這個選項的行為相當於 None 。 您必須使用例如 kured 的工具來管理重新啟動程式。 |
SecurityPatch |
受 AKS 測試、完全受控,並套用安全部署做法的 OS 安全性修正程式。 AKS 會定期使用標示為「僅限安全性」的映像維護工具所提供的修補程式,更新節點的虛擬硬碟 (VHD)。當安全性修補程式套用至節點時,可能會出現中斷。 不過,AKS 只會在必要時重新映像您的節點,例如特定核心安全性套件,來限制中斷。 套用修補程式後,VHD 就會更新,而現有的機器會升級至該 VHD,以接受維護時段和激增設定。 如果 AKS 決定不需要重新映像節點,它會修補節點即時,而不會清空 Pod 並執行任何 VHD 更新。 此選項會產生在節點資源群組中裝載 VHD 的額外成本。 如果您使用此通道,依預設會停用 Linux 自動升級。 | Azure Linux 在已啟用 GPU 的 VM 上不支援此通道。 只要仍支援 kubernetes 次要版本,SecurityPatch 就適用於已淘汰的修補程式版本。 |
NodeImage |
AKS 每週會使用新修補的 VHD 更新節點,該 VHD 中包含安全性修正和 Bug 修正。 新 VHD 的更新會根據維護時段和激增設定中斷執行。 選擇此選項不會產生額外的 VHD 成本。 如果您使用此通道,依預設會停用 Linux 自動升級。 只要仍支援 Kubernetes 次要版本,節點映像升級就支援已淘汰的修補程式版本。 受 AKS 測試、完全受控,並套用安全部署做法的節點影像 |
使用 az aks create
命令搭配 --node-os-upgrade-channel
參數,在新叢集上設定節點 OS 自動升級通道。 下列範例會將節點 OS 自動升級通道設定為 SecurityPatch
。
az aks create \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-os-upgrade-channel SecurityPatch \
--generate-ssh-keys
使用 az aks update
命令搭配 --node-os-upgrade-channel
參數,在現有叢集上設定節點 os 自動升級通道。 下列範例會將節點 OS 自動升級通道設定為 SecurityPatch
。
az aks update --resource-group myResourceGroup --name myAKSCluster --node-os-upgrade-channel SecurityPatch
預設頻率表示未套用計劃性維護時段。
通道 | 更新所有權 | 預設頻率 |
---|---|---|
Unmanaged |
OS 驅動的安全性更新。 AKS 無法控制這些更新。 | 對於 Ubuntu 和 Azure Linux,在每晚凌晨 6 點 UTC 左右。 對於 Windows,則為每月一次。 |
SecurityPatch |
AKS 測試、完全受控,並套用安全部署做法。 如需詳細資訊,請參閱 在 Azure 上增加標準工作負載的安全性和復原能力。 | 每週。 |
NodeImage |
AKS 測試、完全受控,並套用安全部署做法。 如需版本的詳細資訊,請查閱發行追蹤器中的 AKS 節點映像 | 每週。 |
注意
雖然 Windows 安全性更新會每月發行,但使用 Unmanaged
通道不會自動將這些更新套用至 Windows 節點。 如果您選擇 Unmanaged
通道,則必須管理 Windows 節點的重新啟動流程。
目前,當您將叢集自動升級通道設定為 node-image
時,也會將節點 OS 自動升級通道自動設定為 NodeImage
。 如果叢集自動升級通道為 node-image
,您無法變更節點 OS 自動升級通道值。 若要設定節點 OS 自動升級通道值,請檢查叢集自動升級通道值不是 node-image
。
Windows OS 節點集區不支援 SecurityPatch
通道。
注意
針對 SecurityPatch
通道使用 CLI 2.61.0 版本或更新版本。
節點 OS 自動升級的計劃性維護會從指定的維護時段開始。
注意
為確保正常運作,請使用四小時以上的維護時段。
如需計劃性維護的詳細資訊,請參閱使用計劃性維護來排程 Azure Kubernetes Service (AKS) 叢集的維護時段。
請執行 az aks show
命令並檢查「autoUpgradeProfile」,以判定將 nodeOsUpgradeChannel
設定為什麼值:
az aks show --resource-group myResourceGroup --name myAKSCluster --query "autoUpgradeProfile"
若要檢視節點 OS 自動升級的狀態,請查閱叢集上的活動記錄。 還可查閱升級 AKS 叢集中所述的特定升級相關事件。 AKS 也會發出與升級相關的事件方格事件。 若要深入了解,請參閱以 AKS 作為事件方格來源。
否。 目前,當您將叢集自動升級通道設定為 node-image
時,也會將節點 OS 自動升級通道自動設定為 NodeImage
。 如果叢集自動升級通道為 node-image
,您無法變更節點 OS 自動升級通道值。 為了能夠變更節點 OS 自動升級通道值,請確定叢集自動升級通道不是 node-image
。
在 Unmanaged
通道上,AKS 無法控制如何及何時傳遞安全性更新。 使用 SecurityPatch
,安全性更新會經過完整測試,並遵循安全部署做法。
SecurityPatch
同時負責維護期間。 如需詳細資訊,請參閱 Azure 上 Canonical 工作負載的安全性和復原能力。
AKS 只有在絕對必要時才會限制重新映像,例如可能需要重新安裝映像才能完全套用的特定核心套件。
SecurityPatch
的設計目的是盡可能最小化中斷。 如果 AKS 決定不需要重新製作節點映像,則會立即修補節點,而不會清空 Pod,且在此情況下不會執行任何 VHD 更新。
SecurityPatch
使用通道時,Linux 叢集節點必須從 ubuntu-snapshots-on-azure-ensuring-predictability-and-consistency-in-cloud-deployments 中所述的 ubuntu 快照集服務下載必要的安全性修補程式和更新。
執行下列命令以取得節點標籤:
kubectl get nodes --show-labels
在傳回的標籤中,您應該會看到類似下列輸出的行:
kubernetes.azure.com/node-image-version=AKSUbuntu-2204gen2containerd-202410.27.0-2024.12.01
在這裡,節點映像的基礎映像版本為 AKSUbuntu-2204gen2containerd-202410.27.0
。 如果適用,通常會遵循安全性修補程式版本。 在上述範例中,為 2024.12.01
。
在節點標籤檢視下,Azure 入口網站中也會查閱相同的詳細資料:
如需升級最佳做法和其他考量的詳細討論,請參閱 AKS 修補檔和升級指導。
訓練
模組
使用 Azure Kubernetes Service 套用叢集升級和安全性修補檔 - Training
將最新版的升級和修補檔套用至您的 Azure Kubernetes Service 叢集。
認證
Microsoft Certified: Azure Security Engineer Associate - Certifications
示範實作安全性控制、維護組織的安全性狀態以及識別和修復安全性漏洞所需的技能。