共用方式為


使用 Azure 備份來管理 Azure Kubernetes Service 備份

本文說明如何在您的訂用帳戶上註冊資源提供者,以使用備份擴充功能和信任存取。 此外,其也提供 Azure CLI 命令對其進行管理。

Azure 備份現在可讓您使用必須安裝在叢集中的備份擴充功能來備份 AKS 叢集 (叢集資源和連結至叢集的永續性磁碟區)。 AKS 叢集需要啟用備份保存庫的信任存取權,讓保存庫可以與備份擴充功能進行通訊,以執行備份和還原作業。

此外,它也有助於說明如何從 Azure 入口網站 管理 Azure Kubernetes Service 叢集的備份。

資源提供者註冊

需要資源提供者註冊才能安裝備份延伸模組,以及起始任何備份和還原作業。 您可以作為訂閱服務擁有者進行此註冊。 一般而言,資源提供者已在 Azure 訂用帳戶中註冊。 如果沒有,請註冊 Microsoft.KubernetesConfiguration 資源提供者。

註冊完成後,您可以在訂用帳戶下的所有叢集上執行備份和還原作業。

註冊備份擴充功能

若要安裝備份擴充功能,您必須在訂用帳戶上註冊 Microsoft.KubernetesConfiguration 資源提供者。 若要執行註冊,請執行下列命令:

az provider register --namespace Microsoft.KubernetesConfiguration

註冊最多 可能需要 10 分鐘的時間。 若要監視註冊程序,請執行下列命令:

az provider show --name Microsoft.KubernetesConfiguration --output table

本節提供一組 Azure CLI 命令,可在備份擴充功能上執行建立、更新或刪除作業。 您可以使用 update 命令來變更基礎備份擴充功能 Pod 的計算限制。

安裝備份擴充功能

若要安裝備份擴充功能,請執行下列命令:

az k8s-extension create --name azure-aks-backup --extension-type microsoft.dataprotection.kubernetes --scope cluster --cluster-type managedClusters --cluster-name <aksclustername> --resource-group <aksclusterrg> --release-train stable --configuration-settings blobContainer=<containername> storageAccount=<storageaccountname> storageAccountResourceGroup=<storageaccountrg> storageAccountSubscriptionId=<subscriptionid>

檢視備份擴充功能安裝狀態

若要檢視備份擴充功能安裝進度,請使用下列命令:

az k8s-extension show --name azure-aks-backup --cluster-type managedClusters --cluster-name <aksclustername> --resource-group <aksclusterrg>

更新備份擴充功能中的資源

若要更新備份擴充功能中的 Blob 容器、CPU 和記憶體,請使用下列命令:

az k8s-extension update --name azure-aks-backup --cluster-type managedClusters --cluster-name <aksclustername> --resource-group <aksclusterrg> --release-train stable --configuration-settings [blobContainer=<containername> storageAccount=<storageaccountname> storageAccountResourceGroup=<storageaccountrg> storageAccountSubscriptionId=<subscriptionid>] [cpuLimit=1] [memoryLimit=1Gi]

[]: denotes the 3 different sub-groups of updates possible (discard the brackets while using the command)

刪除備份擴充功能安裝作業

若要停止備份擴充功能安裝作業,請使用下列命令:

az k8s-extension delete --name azure-aks-backup --cluster-type managedClusters --cluster-name <aksclustername> --resource-group <aksclusterrg>

授與儲存體帳戶的權限

備份延伸模組會在叢集的受控資源群組中建立使用者指派的受控識別。 您必須執行下列命令,才能提供 記憶體帳戶的記憶體 Blob 資料參與者權限

az role assignment create --assignee-object-id $(az k8s-extension show --name azure-aks-backup --cluster-name <aksclustername> --resource-group <aksclusterrg> --cluster-type managedClusters --query aksAssignedIdentity.principalId --output tsv) --role 'Storage Blob Data Contributor' --scope /subscriptions/<subscriptionid>/resourceGroups/<storageaccountrg>/providers/Microsoft.Storage/storageAccounts/<storageaccountname> 

若要啟用備份保存庫與 AKS 叢集之間的信任存取,請使用下列 Azure CLI 命令:

az aks trustedaccess rolebinding create \
--resource-group <aksclusterrg> \
--cluster-name <aksclustername> \
--name <randomRoleBindingName> \
--source-resource-id $(az dataprotection backup-vault show --resource-group <vaultrg> --vault <VaultName> --query id -o tsv) \
--roles Microsoft.DataProtection/backupVaults/backup-operator   

深入了解與信任存取相關的其他命令

使用 Azure 入口網站管理作業

本節說明數個 Azure 備份 支援的管理作業,可讓您輕鬆地管理 Azure Kubernetes Service 叢集備份。

調整 Azure 備份 (用於 AKS) 的 CPU 和記憶體

適用於 AKS 的 Azure 備份依賴部署在 AKS 叢集內的 Pod,做為命名空間 dataprotection-microsoft下備份延伸模組的一部分。 若要執行備份和還原作業,這些 Pod 具有特定的 CPU 和記憶體需求。

默認資源預留

       1. Memory: requests - 256Mi, limits - 1280Mi
       2. CPU: requests - 500m, limits - 1000m

不過,如果叢集中的資源數目超過 1000,擴充功能 Pod dataprotection-microsoft-kubernetes-agent 可能需要超過預設保留的額外 CPU 和記憶體。 如果所需的資源超出已配置的限制,您可能會在備份或還原作業期間遇到因 OOMKilled (記憶體不足) 錯誤而導致的 UserErrorBackupPluginPodRestartedDuringBackup 或 UserErrorBackupPluginPodRestartedDuringRestore 錯誤。

藉由增加 CPU 和記憶體來解決 OOMKilled 錯誤

若要確保備份和還原作業成功,請遵循下列步驟,手動更新擴充功能 Pod 的資源設定:

  1. 在 Azure 入口網站中開啟 AKS 叢集。

    顯示 Azure 入口網站中 AKS 叢集的螢幕快照。

  2. 瀏覽至左側窗格中 [設定] 底下的 [擴充功能 + 應用程式]。

    顯示如何選取 [擴充功能 + 應用程式] 的螢幕快照。

  3. 點擊標題為「azure-aks-backup」的擴充功能。

    顯示如何開啟備份擴充功能設定的螢幕快照。

  4. 向下滾動,在組態設定下新增值,然後點擊儲存。

    resources.limits.memory : 4400Mi

    螢幕截圖顯示如何在配置設定中新增值。

注意

如果布建擴充功能 Pod 的節點沒有所需的 CPU 或記憶體,而且您只更新了資源限制,可能會重複終止 Pod。 若要解決此問題,請使用 resources.requests.cpuresources.requests.memory更新組態設定。 這可以確保 Pod 被排程到滿足所要求資源需求的節點上。

驗證變更

套用變更之後,請等候排程備份執行或起始隨選備份。 如果您仍然遇到 OOMKilled 失敗,請重複上述步驟,並逐漸增加記憶體限制,如果仍然未解決,則增加resources.limits.cpu參數。

監視備份作業

對於排定的備份,或如果您觸發隨選備份作業,Azure 備份服務會建立作業來追蹤。 若要檢視備份作業狀態:

  1. 移至 Azure 商務持續性中心,然後選取 [保護清查] 底下的 [受保護的專案]。

    [ 受保護的專案 ] 刀鋒視窗會顯示跨訂用帳戶建立的所有備份實例。 使用篩選條件來存取您想要查看的備份實例。 選取受保護的專案並加以開啟。

    顯示作業儀錶板的螢幕快照。

  2. 現在, 選取 [相關聯的專案 ] 以開啟備份實例的儀錶板。 您可以在這裡看到過去七天的備份作業。

  3. 若要檢視備份作業的狀態,請選取 [檢視全部],以顯示此備份執行個體的進行中和過去的作業。

    顯示如何選取 [檢視所有] 選項的螢幕快照。

  4. 檢閱備份和還原工作的清單及其狀態。 從工作清單中選取工作,檢視工作詳細資料。

    顯示如何選取作業以查看詳細數據的螢幕快照。

監視還原作業

在觸發還原作業之後,備份服務會建立用於追蹤的作業。 Azure 備份會在入口網站中顯示作業的相關通知。 若要檢視還原工作進度:

  1. 移至 Azure 商務持續性中心,然後選取 [保護清查] 底下的 [受保護的專案]。

    [ 受保護的專案 ] 刀鋒視窗會顯示跨訂用帳戶建立的所有備份實例。 使用篩選條件來存取您想要查看的備份實例。 選取受保護的專案並加以開啟。

    顯示作業儀錶板的螢幕快照。

  2. 現在, 選取 [相關聯的專案 ] 以開啟備份實例的儀錶板。 您可以在這裡看到過去七天的備份作業。

  3. 若要檢視還原作業的狀態,請選取 [檢視全部],顯示此備份執行個體的進行中和過去工作。

    顯示如何選取 [全部檢視] 的螢幕快照。

  4. 檢閱備份和還原工作的清單及其狀態。 從工作清單中選取工作,檢視工作詳細資料。

    顯示作業清單的螢幕快照。

使用警告狀態監視已完成的備份和還原作業

執行排程或隨選備份或還原作業時,會建立一個作業 (job) 來對應至作業以追蹤其進度。 如果失敗,這些作業可讓您識別錯誤碼,並修正問題,以便稍後執行成功的作業。

針對 AKS 備份,備份與還原作業可以顯示狀態 [已完成,但出現警告]。 當備份與還原作業因使用者定義組態或工作負載內部狀態的問題而無法完全成功時,就會顯示此狀態。

顯示備份與還原作業已完成,但出現警告的螢幕擷取畫面。

例如,如果 AKS 叢集的備份作業完成狀態為 [ 已完成警告],則會建立還原點,但不會根據備份組態備份叢集中的所有資源。 作業會顯示警告詳細數據,並提供作業期間受影響的問題和資源

若要檢視這些警告,請選取 [警告詳細資料] 旁的 [檢視詳細資料]

顯示作業警告詳細資料的螢幕擷取畫面。

了解如何識別並解決錯誤

變更原則

您可以變更與備份執行個體相關聯的原則。

  1. 選取 [備份執行個體] -> [變更原則]

    顯示變更原則選項的螢幕擷取畫面。

  2. 選取您想要套用至資料庫的新原則。

    顯示重新指派原則選項的螢幕擷取畫面。

注意

變更指派給備份實例的備份原則不會影響現有的恢復點及其保留期間。 更新的保留設定只會套用至原則變更之後建立的新恢復點。

停止保護

有三種方式可讓您停止保護 Azure 磁碟:

  • 停止保護和保留數據(永遠保留):此選項可協助您停止所有未來的備份作業,以保護叢集。 不過,Azure 備份服務會保留永遠備份的恢復點。 您需要付費才能將恢復點保留在保存庫中(如需詳細資訊,請參閱 Azure 備份 定價)。 如有需要,您可以還原磁碟。 若要繼續叢集保護,請使用 [ 繼續備份] 選項。

  • 停止保護和保留數據(依原則保留):此選項可協助您停止所有未來的備份作業,以保護叢集。 恢復點會根據原則保留,並根據 Azure 備份 定價收費。 不過,會永遠保留最新的恢復點。

  • 停止保護和刪除資料:此選項可協助您停止所有未來的備份作業,以保護叢集並刪除所有恢復點。 您將無法還原磁碟,或使用 [繼續備份] 選項。

注意

即使 AKS 備份停止或備份失敗,最後一個還原點一律會保留超過定義的保留期間,確保至少有一個還原點保持可用。

停止保護並保留資料

  1. 移至 Azure 商務持續性中心,然後選取 [保護清查] 底下的 [受保護的專案]。

    [ 受保護的專案 ] 刀鋒視窗會顯示跨訂用帳戶建立的所有備份實例。 使用篩選條件來存取您想要查看的備份實例。 選取受保護的專案並加以開啟。

    顯示作業儀錶板的螢幕快照。

  2. 現在, 選取 [相關聯的專案 ] 以開啟備份實例的儀錶板。

  3. 選取 [停止備份]

    顯示要停止之 Azure 磁碟備份實例選取項目的螢幕快照。

  4. 選取下列其中一個資料保留選項:

    1. 永久保留
    2. 依每個原則保留

    顯示停止磁碟備份實例保護選項的螢幕快照。

    您也可以從下拉式清單中選取停止備份的原因。

  5. 選取 [停止備份]

  6. 選取 [確認] 以停止資料保護。

    顯示要選取磁碟備份實例保留選項的螢幕快照。

停止保護並刪除資料

  1. 移至 Azure 商務持續性中心,然後選取 [保護清查] 底下的 [受保護的專案]。

    [ 受保護的專案 ] 刀鋒視窗會顯示跨訂用帳戶建立的所有備份實例。 使用篩選條件來存取您想要查看的備份實例。 選取受保護的專案並加以開啟。

    顯示作業儀錶板的螢幕快照。

  2. 現在, 選取 [相關聯的專案 ] 以開啟備份實例的儀錶板。

  3. 選取 [停止備份]

  4. 選取 [刪除備份資料]

    提供備份執行個體的名稱、刪除的原因,以及任何其他註解。

    停止磁碟備份之確認的螢幕快照。

  5. 選取 [停止備份]

  6. 選取 [確認] 以停止資料保護。

    顯示要選取磁碟備份實例保留選項的螢幕快照。

繼續保護

如果您已選取 [ 停止保護] 和 [保留數據 ] 選項,您可以繼續保護叢集。

注意

當您繼續保護備份實例時,現有的備份原則只會開始套用至新的恢復點。 系統會清除已根據其原始保留期間到期的恢復點,如建立時生效的備份原則所定義。

使用下列步驟:

  1. 移至 Azure 商務持續性中心,然後選取 [保護清查] 底下的 [受保護的專案]。

    [ 受保護的專案 ] 刀鋒視窗會顯示跨訂用帳戶建立的所有備份實例。 使用篩選條件來存取您想要查看的備份實例。 選取受保護的專案並加以開啟。

    顯示作業儀錶板的螢幕快照。

  2. 現在, 選取 [相關聯的專案 ] 以開啟備份實例的儀錶板。

  3. 選取 [繼續備份]

    此螢幕快照顯示繼續保護磁碟的選項。

  4. 選取 [繼續備份]

    顯示繼續磁碟備份選項的螢幕快照。

刪除備份執行個體

如果您選擇停止所有已排程的備份作業,並刪除所有現有的備份,請使用 [刪除備份執行個體]

若要刪除 AKS 叢集備份實例,請遵循下列步驟:

  1. 在備份實例畫面上選取 [ 刪除 ]。

    此螢幕快照顯示刪除備份實例的程式。

  2. 提供確認詳細數據,包括備份實例的名稱、刪除原因和其他批註。

    顯示確認刪除備份實例的螢幕快照。

  3. 選取 [ 刪除] 以確認並繼續刪除備份實例。

下一步