Creare criteri di backup di Servizi di ripristino di Azure usando l'API REST

Questo articolo descrive come creare criteri per il backup di macchine virtuali di Azure, database SQL in macchine virtuali di Azure, database SAP HANA nella macchina virtuale di Azure e condivisione file di Azure.

Altre informazioni sulla creazione o la modifica di un criterio di backup per un insieme di credenziali di Servizi di ripristino di Azure tramite l'API REST.

Creare o aggiornare un criterio

Per creare o aggiornare un criterio di Backup di Azure, usare l'operazione PUT seguente.

PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}?api-version=2019-05-13

I parametri {policyName} e {vaultName} vengono forniti nell'URI. Informazioni aggiuntive vengono fornite nel corpo della richiesta.

Creare il corpo della richiesta

Se si vuole creare un criterio per il backup di macchine virtuali di Azure, il corpo della richiesta deve avere i componenti seguenti:

Nome Obbligatorio Type Descrizione
proprietà Vero ProtectionPolicy:AzureIaaSVMProtectionPolicy Proprietà ProtectionPolicyResource
tag Oggetto Tag delle risorse

Per l'elenco completo delle definizioni nel corpo della richiesta, vedere l'articolo sull'API REST dei criteri di backup.

Esempio di corpo della richiesta

Questa sezione fornisce il corpo della richiesta di esempio per creare criteri per il backup della macchina virtuale di Azure, del database SQL nella macchina virtuale di Azure, del database SAP HANA nella macchina virtuale di Azure e della condivisione file di Azure.

Scegliere un'origine dati:

Il corpo della richiesta seguente definisce un criterio di backup standard per i backup delle macchine virtuali di Azure.

Questo criterio:

  • Esegue un backup settimanale ogni lunedì, mercoledì, giovedì alle 10:00 ora solare pacifico.
  • Conserva i backup eseguiti ogni lunedì, mercoledì, giovedì per una settimana.
  • Conserva i backup eseguiti ogni primo mercoledì e terzo giovedì di un mese per due mesi (sostituisce le condizioni di conservazione precedenti, se presenti).
  • Conserva i backup eseguiti il quarto lunedì e il quarto giovedì di febbraio e novembre per quattro anni (sostituisce le condizioni di conservazione precedenti, se presenti).
{
  "properties": {
    "backupManagementType": "AzureIaasVM",
    "timeZone": "Pacific Standard Time",
    "schedulePolicy": {
      "schedulePolicyType": "SimpleSchedulePolicy",
      "scheduleRunFrequency": "Weekly",
      "scheduleRunTimes": [
        "2018-01-24T10:00:00Z"
      ],
      "scheduleRunDays": [
        "Monday",
        "Wednesday",
        "Thursday"
      ]
    },
    "retentionPolicy": {
      "retentionPolicyType": "LongTermRetentionPolicy",
      "weeklySchedule": {
        "daysOfTheWeek": [
          "Monday",
          "Wednesday",
          "Thursday"
        ],
        "retentionTimes": [
          "2018-01-24T10:00:00Z"
        ],
        "retentionDuration": {
          "count": 1,
          "durationType": "Weeks"
        }
      },
      "monthlySchedule": {
        "retentionScheduleFormatType": "Weekly",
        "retentionScheduleWeekly": {
          "daysOfTheWeek": [
            "Wednesday",
            "Thursday"
          ],
          "weeksOfTheMonth": [
            "First",
            "Third"
          ]
        },
        "retentionTimes": [
          "2018-01-24T10:00:00Z"
        ],
        "retentionDuration": {
          "count": 2,
          "durationType": "Months"
        }
      },
      "yearlySchedule": {
        "retentionScheduleFormatType": "Weekly",
        "monthsOfYear": [
          "February",
          "November"
        ],
        "retentionScheduleWeekly": {
          "daysOfTheWeek": [
            "Monday",
            "Thursday"
          ],
          "weeksOfTheMonth": [
            "Fourth"
          ]
        },
        "retentionTimes": [
          "2018-01-24T10:00:00Z"
        ],
        "retentionDuration": {
          "count": 4,
          "durationType": "Years"
        }
      }
    }
  }
}

Il corpo della richiesta seguente definisce un criterio di backup avanzato per i backup delle macchine virtuali di Azure che creano più backup al giorno.

Questo criterio:

  • Esegue un backup ogni 4 ore dalle 13:30 UTC ogni giorno
  • Mantiene lo snapshot di ripristino istantaneo per 7 giorni
  • Conserva i backup giornalieri per 180 giorni
  • Conserva i backup eseguiti la domenica di ogni settimana per 12 settimane
  • Conserva i backup eseguiti la prima domenica di ogni mese per 12 mesi
{
	"properties": {
		"backupManagementType": "AzureIaasVM",
		"policyType": "V2",
		"instantRPDetails": {},
		"schedulePolicy": {
			"schedulePolicyType": "SimpleSchedulePolicyV2",
			"scheduleRunFrequency": "Hourly",
			"hourlySchedule": {
				"interval": 4,
				"scheduleWindowStartTime": "2023-02-06T15:30:00Z",
				"scheduleWindowDuration": 24
			}
		},
		"retentionPolicy": {
			"retentionPolicyType": "LongTermRetentionPolicy",
			"dailySchedule": {
				"retentionTimes": [
					"2023-02-06T15:30:00Z"
				],
				"retentionDuration": {
					"count": 180,
					"durationType": "Days"
				}
			},
			"weeklySchedule": {
				"daysOfTheWeek": [
					"Sunday"
				],
				"retentionTimes": [
					"2023-02-06T15:30:00Z"
				],
				"retentionDuration": {
					"count": 12,
					"durationType": "Weeks"
				}
			},
			"monthlySchedule": {
				"retentionScheduleFormatType": "Weekly",
				"retentionScheduleWeekly": {
					"daysOfTheWeek": [
						"Sunday"
					],
					"weeksOfTheMonth": [
						"First"
					]
				},
				"retentionTimes": [
					"2023-02-06T15:30:00Z"
				],
				"retentionDuration": {
					"count": 12,
					"durationType": "Months"
				}
			}
		},
		"tieringPolicy": {
			"ArchivedRP": {
				"tieringMode": "DoNotTier",
				"duration": 0,
				"durationType": "Invalid"
			}
		},
		"instantRpRetentionRangeInDays": 7,
		"timeZone": "UTC",
		"protectedItemsCount": 0
	}
}

Importante

I formati di ora per la pianificazione e la conservazione supportano solo DateTime. Non supportano solo il formato Ora.

Risposte

La creazione o l'aggiornamento dei criteri di backup è un'operazione asincrona. Ciò significa che l'operazione consente di creare un'altra operazione che deve essere registrata separatamente.

Restituisce due risposte: 202 (accettato) quando viene creata un'altra operazione. Quindi 200 (OK) al termine dell'operazione.

Nome Tipo Descrizione
200 OK ProtectionPolicyResource Ok
202 - Accettato Accettata

Risposte di esempio

Dopo aver inviato la richiesta PUT per la creazione o l'aggiornamento dei criteri, la risposta iniziale è 202 (Accettato) con intestazione location o Azure-async.

HTTP/1.1 202 Accepted
Pragma: no-cache
Retry-After: 60
Azure-AsyncOperation: https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01
X-Content-Type-Options: nosniff
x-ms-request-id: db785be0-bb20-4598-bc9f-70c9428b170b
x-ms-client-request-id: e1f94eef-9b2d-45c4-85b8-151e12b07d03; e1f94eef-9b2d-45c4-85b8-151e12b07d03
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: db785be0-bb20-4598-bc9f-70c9428b170b
x-ms-routing-request-id: SOUTHINDIA:20180521T073907Z:db785be0-bb20-4598-bc9f-70c9428b170b
Cache-Control: no-cache
Date: Mon, 21 May 2018 07:39:06 GMT
Location: https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2019-05-13
X-Powered-By: ASP.NET

Tenere quindi traccia dell'operazione risultante usando l'intestazione location o Azure-AsyncOperation con un semplice comando GET.

GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2019-05-13

Al termine dell'operazione, viene restituita la risposta 200 (OK) con il contenuto dei criteri nel corpo della risposta.

{
  "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1",
  "name": "testPolicy1",
  "type": "Microsoft.RecoveryServices/vaults/backupPolicies",
  "properties": {
    "backupManagementType": "AzureIaasVM",
    "schedulePolicy": {
      "schedulePolicyType": "SimpleSchedulePolicy",
      "scheduleRunFrequency": "Weekly",
      "scheduleRunDays": [
        "Monday",
        "Wednesday",
        "Thursday"
      ],
      "scheduleRunTimes": [
        "2018-01-24T10:00:00Z"
      ],
      "scheduleWeeklyFrequency": 0
    },
    "retentionPolicy": {
      "retentionPolicyType": "LongTermRetentionPolicy",
      "weeklySchedule": {
        "daysOfTheWeek": [
          "Monday",
          "Wednesday",
          "Thursday"
        ],
        "retentionTimes": [
          "2018-01-24T10:00:00Z"
        ],
        "retentionDuration": {
          "count": 1,
          "durationType": "Weeks"
        }
      },
      "monthlySchedule": {
        "retentionScheduleFormatType": "Weekly",
        "retentionScheduleWeekly": {
          "daysOfTheWeek": [
            "Wednesday",
            "Thursday"
          ],
          "weeksOfTheMonth": [
            "First",
            "Third"
          ]
        },
        "retentionTimes": [
          "2018-01-24T10:00:00Z"
        ],
        "retentionDuration": {
          "count": 2,
          "durationType": "Months"
        }
      },
      "yearlySchedule": {
        "retentionScheduleFormatType": "Weekly",
        "monthsOfYear": [
          "February",
          "November"
        ],
        "retentionScheduleWeekly": {
          "daysOfTheWeek": [
            "Monday",
            "Thursday"
          ],
          "weeksOfTheMonth": [
            "Fourth"
          ]
        },
        "retentionTimes": [
          "2018-01-24T10:00:00Z"
        ],
        "retentionDuration": {
          "count": 4,
          "durationType": "Years"
        }
      }
    },
    "timeZone": "Pacific Standard Time",
    "protectedItemsCount": 0
  }
}

Se un criterio è già in uso per la protezione di un elemento, qualsiasi aggiornamento apportato al criterio comporterà la modifica della protezione per tutti gli elementi associati.

Passaggi successivi

Enable protection for an unprotected Azure VM (Abilitare la protezione per una macchina virtuale di Azure senza protezione).

Per altre informazioni sulle API REST di Backup di Azure, vedere i documenti seguenti: