Azure RecoveryServiceVault не может быть удален?
Во время бесплатной пробной версии я потратил много времени на эксперименты с лазурью. Теперь, когда мы перешли на платную версию, мне нужно удалить все экспериментальные вещи, так как они нам не нужны.
Одним из них является хранилище служб восстановления, которое каким-то образом застряло в процессе резервного копирования (см. Скриншот ниже).
Хранилище восстановления, как сейчас, все пусто, кроме использования резервного копирования GRS
Я посмотрел во всех настройках и не могу найти ничего, чтобы удалить. Любая учетная запись хранения, которая могла быть связана с хранилищем, давно исчезла - это действительно единственное, что осталось в группе ресурсов. Я также не могу удалить группу ресурсов из-за этого хранилища.
Каждый раз, когда я пытаюсь удалить, я получаю следующую ошибку:
Ошибка удаления хранилища
Хранилище "TestRecoveryServiceVault" не может быть удалено, поскольку в хранилище имеются существующие ресурсы. Удалите все реплицированные элементы, зарегистрированные серверы, сайты Hyper-V (используемые для восстановления сайтов), ассоциации политик для облаков System Center VMM (используемые для восстановления сайтов), а затем удалите хранилище.
Я даже попробовал команды powershell
$vault = Get-AzureRmRecoveryServicesVault -Name "TestRecoveryServiceVault"
Remove-AzureRmRecoveryServicesVault -Vault $vault
(та же ошибка, что и выше) и
Remove-AzureRmRecoveryServicesVault -Vault $vault -Force
(но этот выдает ошибку, что параметр -Force не существует, я подозреваю устаревшую документацию)
Я в своем уме и очень хотел бы, чтобы это хранилище исчезло. Любая помощь приветствуется.
Редактировать:
Разъяснение:
В хранилище не осталось никаких заданий; только 6 МБ данных, которые, кажется, пришли из ниоткуда, поскольку они не были удалены с задачами. Я не решил сохранять резервные копии данных при удалении задач.
2 ответа
Наконец удалось удалить хранилище, предварительно очистив резервные копии sql из него через powershell. Я действительно удивлен, что никто не знал об этом, и потребовалось так много копаний, чтобы найти его.
Команды для всех, кто имеет эту проблему:
Эти команды должны сначала увидеть, есть ли что-нибудь в резервных копиях базы данных, а затем удалить все это.
$vault = Get-AzureRmRecoveryServicesVault -Name "VaultName"
Set-AzureRmRecoveryServicesVaultContext -Vault $vault
ПОСМОТРЕТЬ РЕЗЕРВНЫЕ ПУНКТЫ
$container = Get-AzureRmRecoveryServicesBackupContainer -ContainerType AzureSQL -FriendlyName $vault.Name
$item = Get-AzureRmRecoveryServicesBackupItem -Container $container -WorkloadType AzureSQLDatabase
$availableBackups = Get-AzureRmRecoveryServicesBackupRecoveryPoint -Item $item
$availableBackups
УДАЛИТЬ РЕЗЕРВНЫЕ ПУНКТЫ И ХРАНЕНИЕ
$containers = Get-AzureRmRecoveryServicesBackupContainer -ContainerType AzureSQL -FriendlyName $vault.Name
ForEach ($container in $containers)
{
$items = Get-AzureRmRecoveryServicesBackupItem -container $container -WorkloadType AzureSQLDatabase
ForEach ($item in $items)
{
Disable-AzureRmRecoveryServicesBackupProtection -item $item -RemoveRecoveryPoints -ea SilentlyContinue
}
Unregister-AzureRmRecoveryServicesBackupContainer -Container $container
}
Remove-AzureRmRecoveryServicesVault -Vault $vault
Я надеюсь, что помог другим людям, которые столкнулись с этим беспорядком.
Вам нужно удалить любую из задач резервного копирования в хранилище, прежде чем вы сможете ее удалить, самый простой способ - использовать PowerShell:
$vaultName = "<vault name>"
$vault = Get-AzureRmRecoveryServicesVault -Name $vaultName
Set-AzureRmRecoveryServicesVaultContext -Vault $vault
$containers = Get-AzureRmRecoveryServicesBackupContainer -ContainerType AzureVM -Status Registered
foreach ($container in $containers)
{
$backupItems = Get-AzureRmRecoveryServicesBackupItem -Container $container -WorkloadType AzureVM
foreach ($backupItem in $backupItems)
{
Disable-AzureRmRecoveryServicesBackupProtection -Item $backupItem -RemoveRecoveryPoints -Force -Confirm:$false
}
}