Zarządzanie kopiami zapasowymi udziału plików platformy Azure za pomocą interfejsu wiersza polecenia platformy Azure
Interfejs wiersza polecenia platformy Azure zapewnia środowisko wiersza polecenia do zarządzania zasobami platformy Azure. Jest to doskonałe narzędzie do tworzenia niestandardowej automatyzacji w celu korzystania z zasobów platformy Azure. W tym artykule wyjaśniono, jak wykonywać zadania związane z zarządzaniem udziałami plików platformy Azure i ich monitorowaniem, których kopia zapasowa jest tworzona przez usługę Azure Backup. Te kroki można również wykonać w witrynie Azure Portal.
Wymagania wstępne
W tym artykule założono, że masz już udział plików platformy Azure, którego kopia zapasowa jest tworzona przez usługę Azure Backup. Jeśli go nie masz, zobacz Tworzenie kopii zapasowych udziałów plików platformy Azure za pomocą interfejsu wiersza polecenia , aby skonfigurować kopię zapasową udziałów plików. W tym artykule są używane następujące zasoby:
- Grupa zasobów: azurefiles
- RecoveryServicesVault: azurefilesvault
- Konto magazynu: afsaccount
- Udział plików: azurefiles
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Po wyświetleniu monitu zainstaluj rozszerzenie interfejsu wiersza polecenia platformy Azure podczas pierwszego użycia. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
- Ten samouczek wymaga wersji 2.0.18 lub nowszej interfejsu wiersza polecenia platformy Azure. W przypadku korzystania z usługi Azure Cloud Shell najnowsza wersja jest już zainstalowana.
Monitorowanie zadań
Po wyzwoleniu operacji tworzenia kopii zapasowej lub przywracania usługa tworzenia kopii zapasowej tworzy zadanie do śledzenia. Aby monitorować ukończone lub aktualnie uruchomione zadania, użyj polecenia cmdlet az backup job list . Za pomocą interfejsu wiersza polecenia można również wstrzymać aktualnie uruchomione zadanie lub poczekać na zakończenie zadania.
W poniższym przykładzie przedstawiono stan zadań tworzenia kopii zapasowej dla magazynu usługi Recovery Services azurefilesvault :
az backup job list --resource-group azurefiles --vault-name azurefilesvault
[
{
"eTag": null,
"id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupJobs/d477dfb6-b292-4f24-bb43-6b14e9d06ab5",
"location": null,
"name": "d477dfb6-b292-4f24-bb43-6b14e9d06ab5",
"properties": {
"actionsInfo": null,
"activityId": "3cef43ed-0af4-43e2-b9cb-1322c496ccb4",
"backupManagementType": "AzureStorage",
"duration": "0:00:29.718011",
"endTime": "2020-01-13T08:05:29.180606+00:00",
"entityFriendlyName": "azurefiles",
"errorDetails": null,
"extendedInfo": null,
"jobType": "AzureStorageJob",
"operation": "Backup",
"startTime": "2020-01-13T08:04:59.462595+00:00",
"status": "Completed",
"storageAccountName": "afsaccount",
"storageAccountVersion": "MicrosoftStorage"
},
"resourceGroup": "azurefiles",
"tags": null,
"type": "Microsoft.RecoveryServices/vaults/backupJobs"
},
{
"eTag": null,
"id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupJobs/1b9399bf-c23c-4caa-933a-5fc2bf884519",
"location": null,
"name": "1b9399bf-c23c-4caa-933a-5fc2bf884519",
"properties": {
"actionsInfo": null,
"activityId": "2663449c-94f1-4735-aaf9-5bb991e7e00c",
"backupManagementType": "AzureStorage",
"duration": "0:00:28.145216",
"endTime": "2020-01-13T08:05:27.519826+00:00",
"entityFriendlyName": "azurefilesresource",
"errorDetails": null,
"extendedInfo": null,
"jobType": "AzureStorageJob",
"operation": "Backup",
"startTime": "2020-01-13T08:04:59.374610+00:00",
"status": "Completed",
"storageAccountName": "afsaccount",
"storageAccountVersion": "MicrosoftStorage"
},
"resourceGroup": "azurefiles",
"tags": null,
"type": "Microsoft.RecoveryServices/vaults/backupJobs"
}
]
Tworzenie zasad
Zasady tworzenia kopii zapasowych można utworzyć, wykonując polecenie az backup policy create z następującymi parametrami:
- --backup-management-type — Azure Storage
- --workload-type — AzureFileShare
- --name — nazwa zasad
- --policy — plik JSON z odpowiednimi szczegółami dotyczącymi harmonogramu i przechowywania
- --resource-group — grupa zasobów magazynu
- --vault-name — nazwa magazynu
Przykład
az backup policy create --resource-group azurefiles --vault-name azurefilesvault --name schedule20 --backup-management-type AzureStorage --policy samplepolicy.json --workload-type AzureFileShare
Przykładowy kod JSON (samplepolicy.json)
{
"eTag": null,
"id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupPolicies/schedule20",
"location": null,
"name": "schedule20",
"properties": {
"backupManagementType": "AzureStorage",
"protectedItemsCount": 0,
"retentionPolicy": {
"dailySchedule": {
"retentionDuration": {
"count": 30,
"durationType": "Days"
},
"retentionTimes": [
"2020-01-05T08:00:00+00:00"
]
},
"monthlySchedule": null,
"retentionPolicyType": "LongTermRetentionPolicy",
"weeklySchedule": null,
"yearlySchedule": null
},
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunDays": null,
"scheduleRunFrequency": "Daily",
"scheduleRunTimes": [
"2020-01-05T08:00:00+00:00"
],
"scheduleWeeklyFrequency": 0
},
"timeZone": "UTC",
"workLoadType": “AzureFileShare”
},
"resourceGroup": "azurefiles",
"tags": null,
"type": "Microsoft.RecoveryServices/vaults/backupPolicies"
}
Przykład tworzenia zasad tworzenia kopii zapasowych, które konfigurują wiele kopii zapasowych dziennie
Ten przykładowy kod JSON jest przeznaczony dla następujących wymagań:
- Harmonogram: Tworzenie kopii zapasowej co 4 godziny , począwszy od 8:00 (UTC) przez następne 12 godzin.
- Przechowywanie: Codziennie - 5 dni, Co tydzień - Każda niedziela przez 12 tygodni, Co miesiąc - Pierwsza niedziela każdego miesiąca przez 60 miesięcy i Yearly - Pierwsza niedziela stycznia przez 10 lat.
{
"properties":{
"backupManagementType": "AzureStorage",
"workloadType": "AzureFileShare",
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunFrequency": "Hourly",
"hourlySchedule": {
"interval": 4,
"scheduleWindowStartTime": "2021-09-29T08:00:00.000Z",
"scheduleWindowDuration": 12
}
},
"timeZone": "UTC",
"retentionPolicy": {
"retentionPolicyType": "LongTermRetentionPolicy",
"dailySchedule": {
"retentionTimes": null,
"retentionDuration": {
"count": 5,
"durationType": "Days"
}
},
"weeklySchedule": {
"daysOfTheWeek": [
"Sunday"
],
"retentionTimes": null,
"retentionDuration": {
"count": 12,
"durationType": "Weeks"
}
},
"monthlySchedule": {
"retentionScheduleFormatType": "Weekly",
"retentionScheduleDaily": null,
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Sunday"
],
"weeksOfTheMonth": [
"First"
]
},
"retentionTimes": null,
"retentionDuration": {
"count": 60,
"durationType": "Months"
}
},
"yearlySchedule": {
"retentionScheduleFormatType": "Weekly",
"monthsOfYear": [
"January"
],
"retentionScheduleDaily": null,
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Sunday"
],
"weeksOfTheMonth": [
"First"
]
},
"retentionTimes": null,
"retentionDuration": {
"count": 10,
"durationType": "Years"
}
}
}
}
}
Po pomyślnym utworzeniu zasad dane wyjściowe polecenia będą wyświetlać kod JSON zasad przekazany jako parametr podczas wykonywania polecenia.
Zgodnie z potrzebami można zmodyfikować sekcję harmonogramu i przechowywania zasad.
Przykład
Jeśli chcesz zachować kopię zapasową pierwszej niedzieli każdego miesiąca przez dwa miesiące, zaktualizuj harmonogram miesięczny w następujący sposób:
"monthlySchedule": {
"retentionDuration": {
"count": 2,
"durationType": "Months"
},
"retentionScheduleDaily": null,
"retentionScheduleFormatType": "Weekly",
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Sunday"
],
"weeksOfTheMonth": [
"First"
]
},
"retentionTimes": [
"2020-01-05T08:00:00+00:00"
]
}
Modyfikowanie zasad
Zasady tworzenia kopii zapasowych można zmodyfikować, aby zmienić częstotliwość tworzenia kopii zapasowych lub zakres przechowywania przy użyciu polecenia az backup item set-policy.
Aby zmienić zasady, zdefiniuj następujące parametry:
- --container-name: nazwa konta magazynu, które hostuje udział plików. Aby pobrać nazwę lub przyjazną nazwę kontenera, użyj polecenia az backup container list.
- --name: nazwa udziału plików, dla którego chcesz zmienić zasady. Aby pobrać nazwę lub przyjazną nazwę elementu kopii zapasowej, użyj polecenia az backup item list.
- --policy-name: nazwa zasad kopii zapasowej, które chcesz ustawić dla udziału plików. Aby wyświetlić wszystkie zasady dla magazynu, możesz użyć polecenia az backup policy list .
W poniższym przykładzie ustawiono zasady tworzenia kopii zapasowej schedule2 dla udziału plików azurefiles obecne na koncie magazynu afsaccount .
az backup item set-policy --policy-name schedule2 --name azurefiles --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --name "AzureFileShare;azurefiles" --backup-management-type azurestorage --out table
Możesz również uruchomić poprzednie polecenie przy użyciu przyjaznych nazw kontenera i elementu, podając następujące dwa dodatkowe parametry:
- --backup-management-type: azurestorage
- --workload-type: azurefileshare
az backup item set-policy --policy-name schedule2 --name azurefiles --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --name azurefiles --backup-management-type azurestorage --out table
Name ResourceGroup
------------------------------------ ---------------
fec6f004-0e35-407f-9928-10a163f123e5 azurefiles
Atrybut Name w danych wyjściowych odpowiada nazwie zadania utworzonego przez usługę tworzenia kopii zapasowej dla operacji zasad zmiany. Aby śledzić stan zadania, użyj polecenia cmdlet az backup job show .
Zatrzymywanie ochrony udziału plików
Istnieją dwa sposoby na zatrzymanie ochrony udziałów plików platformy Azure:
- Zatrzymaj wszystkie przyszłe zadania tworzenia kopii zapasowej i usuń wszystkie punkty odzyskiwania.
- Zatrzymaj wszystkie przyszłe zadania tworzenia kopii zapasowej, ale pozostaw punkty odzyskiwania.
Może istnieć koszt związany z pozostawieniem punktów odzyskiwania w magazynie, ponieważ zostaną zachowane bazowe migawki utworzone przez usługę Azure Backup. Zaletą pozostawienia punktów odzyskiwania jest możliwość późniejszego przywrócenia udziału plików, jeśli chcesz. Aby uzyskać informacje na temat kosztów opuszczania punktów odzyskiwania, zobacz szczegóły cennika. Jeśli zdecydujesz się usunąć wszystkie punkty odzyskiwania, nie można przywrócić udziału plików.
Aby zatrzymać ochronę udziału plików, zdefiniuj następujące parametry:
- --container-name: nazwa konta magazynu, które hostuje udział plików. Aby pobrać nazwę lub przyjazną nazwę kontenera, użyj polecenia az backup container list.
- --item-name: nazwa udziału plików, dla którego chcesz zatrzymać ochronę. Aby pobrać nazwę lub przyjazną nazwę elementu kopii zapasowej, użyj polecenia az backup item list.
Zatrzymywanie ochrony i zachowywanie punktów odzyskiwania
Aby zatrzymać ochronę podczas przechowywania danych, użyj polecenia cmdlet az backup protection disable .
Poniższy przykład zatrzymuje ochronę udziału plików azurefiles , ale zachowuje wszystkie punkty odzyskiwania.
az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name “AzureFileShare;azurefiles” --out table
Możesz również uruchomić poprzednie polecenie przy użyciu przyjaznej nazwy kontenera i elementu, podając następujące dwa dodatkowe parametry:
- --backup-management-type: azurestorage
- --workload-type: azurefileshare
az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --item-name azurefiles --workload-type azurefileshare --backup-management-type Azurestorage --out table
Name ResourceGroup
------------------------------------ ---------------
fec6f004-0e35-407f-9928-10a163f123e5 azurefiles
Atrybut Name w danych wyjściowych odpowiada nazwie zadania utworzonego przez usługę tworzenia kopii zapasowej dla operacji zatrzymania ochrony. Aby śledzić stan zadania, użyj polecenia cmdlet az backup job show .
Zatrzymywanie ochrony bez zachowywania punktów odzyskiwania
Aby zatrzymać ochronę bez zachowywania punktów odzyskiwania, użyj polecenia cmdlet az backup protection disable z opcją delete-backup-data ustawioną na true.
Poniższy przykład zatrzymuje ochronę udziału plików azurefiles bez zachowywania punktów odzyskiwania.
az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name “AzureFileShare;azurefiles” --delete-backup-data true --out table
Możesz również uruchomić poprzednie polecenie przy użyciu przyjaznej nazwy kontenera i elementu, podając następujące dwa dodatkowe parametry:
- --backup-management-type: azurestorage
- --workload-type: azurefileshare
az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --item-name azurefiles --workload-type azurefileshare --backup-management-type Azurestorage --delete-backup-data true --out table
Wznawianie ochrony udziału plików
Jeśli zatrzymano ochronę udziału plików platformy Azure, ale zachowano punkty odzyskiwania, możesz wznowić ochronę później. Jeśli nie zachowasz punktów odzyskiwania, nie możesz wznowić ochrony.
Aby wznowić ochronę udziału plików, zdefiniuj następujące parametry:
- --container-name: nazwa konta magazynu, które hostuje udział plików. Aby pobrać nazwę lub przyjazną nazwę kontenera, użyj polecenia az backup container list.
- --item-name: nazwa udziału plików, dla którego chcesz wznowić ochronę. Aby pobrać nazwę lub przyjazną nazwę elementu kopii zapasowej, użyj polecenia az backup item list.
- --policy-name: nazwa zasad kopii zapasowej, dla których chcesz wznowić ochronę udziału plików.
W poniższym przykładzie użyto polecenia cmdlet az backup protection resume , aby wznowić ochronę udziału plików azurefiles przy użyciu zasad tworzenia kopii zapasowej schedule1 .
az backup protection resume --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount” --item-name “AzureFileShare;azurefiles” --policy-name schedule2 --out table
Możesz również uruchomić poprzednie polecenie przy użyciu przyjaznej nazwy kontenera i elementu, podając następujące dwa dodatkowe parametry:
- --backup-management-type: azurestorage
- --workload-type: azurefileshare
az backup protection resume --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --item-name azurefiles --workload-type azurefileshare --backup-management-type Azurestorage --policy-name schedule2 --out table
Name ResourceGroup
------------------------------------ ---------------
75115ab0-43b0-4065-8698-55022a234b7f azurefiles
Atrybut Name w danych wyjściowych odpowiada nazwie zadania utworzonego przez usługę tworzenia kopii zapasowej dla operacji ochrony wznawiania. Aby śledzić stan zadania, użyj polecenia cmdlet az backup job show .
Wyrejestrowanie konta magazynu
Jeśli chcesz chronić udziały plików na określonym koncie magazynu przy użyciu innego magazynu usługi Recovery Services, najpierw zatrzymaj ochronę wszystkich udziałów plików na tym koncie magazynu. Następnie wyrejestruj konto z magazynu usługi Recovery Services aktualnie używanego do ochrony.
Musisz podać nazwę kontenera, aby wyrejestrować konto magazynu. Aby pobrać nazwę lub przyjazną nazwę kontenera, użyj polecenia az backup container list.
W poniższym przykładzie wyrejestrowuje konto magazynu afsaccount z usługi azurefilesvault przy użyciu polecenia cmdlet az backup container unregister .
az backup container unregister --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --out table
Możesz również uruchomić poprzednie polecenie cmdlet przy użyciu przyjaznej nazwy kontenera, podając następujący dodatkowy parametr:
- --backup-management-type: azurestorage
az backup container unregister --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --backup-management-type azurestorage --out table
Następne kroki
Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z kopiami zapasowymi udziałów plików platformy Azure.