Поделиться через


Краткое руководство: Настройка защищённого резервного копирования для кластера Azure Kubernetes Service (AKS) при помощи PowerShell

В этом кратком руководстве описывается настройка резервного копирования в хранилище для кластера Служба Azure Kubernetes (AKS) с помощью PowerShell.

Azure Backup для AKS — это облачная, корпоративная, ориентированная на приложение служба резервного копирования, которая позволяет быстро настроить резервное копирование для кластеров AKS.

Перед началом работы

Перед настройкой хранилища резервного копирования для кластера AKS убедитесь, что выполнены следующие предварительные требования:

  • Выполните все предварительные требования перед запуском операции резервного копирования или восстановления для резервного копирования AKS.

Создайте хранилище резервных копий

Чтобы создать хранилище резервных копий, выполните следующую команду:

$storageSetting = New-AzDataProtectionBackupVaultStorageSettingObject -Type GloballyRedundant -DataStoreType VaultStore

New-AzDataProtectionBackupVault -ResourceGroupName testBkpVaultRG -VaultName TestBkpVault -Location westus -StorageSetting $storageSetting

$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault

Только что созданное хранилище имеет параметры хранилища, заданные как глобально избыточные, поэтому резервные копии, хранящиеся на уровне хранилища, будут доступны в парном регионе Azure. После завершения создания хранилища настройте политику резервного копирования для защиты кластеров в Azure Kubernetes Service (AKS).

создание политики архивации;

Получите шаблон политики с помощью команды Get-AzDataProtectionPolicyTemplate.

$policyDefn = Get-AzDataProtectionPolicyTemplate -DatasourceType AzureKubernetesService

Шаблон политики состоит из условий триггера (которые определяют факторы для запуска задания резервного копирования) и жизненного цикла (который решает, когда следует удалять, копировать или перемещать резервные копии). В резервном копировании AKS значение по умолчанию для триггера — это запланированный почасовой триггер каждые 4 часа (PT4H), а срок хранения каждой резервной копии составляет семь дней. Для архивных резервных копий добавьте политики сохранения для хранилища данных в сейфе.

New-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name aksBkpPolicy -Policy $policyDefn

$aksBkpPol = Get-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name "aksBkpPolicy"

После того как json политики содержит все необходимые значения, перейдите к созданию новой политики из объекта политики.

az dataprotection backup-policy create -g testBkpVaultRG --vault-name TestBkpVault -n mypolicy --policy policy.json

Подготовка кластера AKS к резервному копированию

После завершения создания хранилища и политики необходимо выполнить следующие предварительные требования для подготовки кластера AKS к резервному копированию:

  1. Создайте учетную запись хранения и контейнер BLOB.

    Резервное копирование для AKS сохраняет ресурсы Kubernetes в контейнере BLOB. Чтобы подготовить кластер AKS к резервному копированию, необходимо установить расширение в кластере. Для работы этого расширения требуются учетная запись хранения и контейнер BLOB в качестве ввода.

    Чтобы создать новую учетную запись хранения и контейнер BLOB-объектов, см. следующие действия.

  2. Установите расширение резервного копирования.

    Расширение резервного копирования является обязательным для установки в кластере AKS для выполнения любых операций резервного копирования и восстановления. Расширение резервного копирования создает пространство имен dataprotection-microsoft в кластере и использует его для развертывания своих ресурсов. Для установки расширения требуются учетная запись хранения и контейнер бинарных больших объектов в качестве входных данных. Узнайте о командах установки расширения.

    При установке расширения сущность пользователя создается в группе ресурсов пула узлов кластера AKS. Чтобы расширение могло получить доступ к учетной записи хранения, вам нужно назначить этой личности роль участника учетной записи хранения. Чтобы назначить требуемую роль, выполните следующую команду.

  3. Включение доверенного доступа

    Чтобы хранилище резервных копий было подключено к кластеру AKS, необходимо включить доверенный доступ, так как это позволяет хранилищу резервного копирования иметь прямую линию зрения к кластеру AKS. Узнайте , как включить доверенный доступ.

Примечание.

Для установки расширения резервного копирования и включения доверенного доступа команды доступны только в Azure CLI.

Настройка резервного копирования.

С помощью созданного хранилища резервных копий и политики резервного копирования, а также кластера AKS в состоянии готовности к резервному копированию, теперь можно начать резервное копирование вашего кластера AKS.

Основные сущности

  • Кластер AKS, подлежащий защите

    Получите идентификатор Azure Resource Manager для защиты кластера AKS. Это служит идентификатором кластера. В этом примере мы используем кластер AKS с именем PSTestAKSCluster в группе ресурсов aksrg в другой подписке:

    $sourceClusterId = "/subscriptions/00001111-aaaa-2222-bbbb-3333cccc4444/resourcegroups/aksrg /providers/Microsoft.ContainerService/managedClusters/ PSTestAKSCluster "
    
  • Группа ресурсов моментальных снимков

    Моментальные снимки постоянных томов хранятся в группе ресурсов в подписке. Рекомендуется создать выделенную группу ресурсов в качестве хранилища данных моментальных снимков для использования службой Azure Backup.

    $snapshotrg = "/subscriptions/00001111-aaaa-2222-bbbb-3333cccc4444/resourcegroups/snapshotrg"
    

Подготовка запроса

Настройка резервного копирования выполняется двумя шагами.

Настройка резервного копирования выполняется двумя шагами.

  1. Подготовьте конфигурацию резервного копирования, чтобы определить, какие ресурсы кластера необходимо создать резервную копию с помощью командлета New-AzDataProtectionBackupConfigurationClientObject . В этом примере мы будем использовать конфигурацию по умолчанию и выполнить полную резервную копию кластера.

    $backupConfig = New-AzDataProtectionBackupConfigurationClientObject -SnapshotVolume $true -IncludeClusterScopeResource $true -DatasourceType AzureKubernetesService -LabelSelector "env=prod"
    
  2. Подготовьте соответствующий запрос с помощью соответствующего хранилища, политики, кластера AKS, конфигурации резервного копирования и группы ресурсов моментальных снимков с помощью командлета Initialize-AzDataProtectionBackupInstance .

    $backupInstance = Initialize-AzDataProtectionBackupInstance -DatasourceType AzureKubernetesService  -DatasourceLocation $dataSourceLocation -PolicyId $ aksBkpPol.Id -DatasourceId $sourceClusterId -SnapshotResourceGroupId $ snapshotrg -FriendlyName $friendlyName -BackupConfiguration $backupConfig
    

Назначение необходимых разрешений и проверка

При подготовке запроса сначала необходимо назначить необходимые роли, связанные с ресурсами, выполнив следующую команду:

Set-AzDataProtectionMSIPermission -BackupInstance $backupInstance -VaultResourceGroup $rgName -VaultName $vaultName -PermissionsScope "ResourceGroup"

После назначения разрешений выполните следующий командлет, чтобы проверить готовность созданного экземпляра.

test-AzDataProtectionBackupInstanceReadiness -ResourceGroupName $resourceGroupName -VaultName $vaultName -BackupInstance  $backupInstance.Property 

После успешной проверки можно отправить запрос для защиты кластера AKS с помощью командлета New-AzDataProtectionBackupInstance .

New-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstance $backupInstance

Следующие шаги