La replicazione degli oggetti copia asincronamente i BLOB di blocchi tra un account di archiviazione di origine e un account di archiviazione di destinazione. Quando si configura la replica di oggetti, si creano criteri di replica che specificano l'account di origine storage e l'account di destinazione. Un criterio di replica include una o più regole che specificano un contenitore di origine e un contenitore di destinazione e indicano i BLOB in blocchi del contenitore di origine che verranno replicati. Per altre informazioni sulla replica di oggetti, vedere Replica di oggetti per BLOB in blocchi.
Questo articolo descrive come configurare un criterio di replica di oggetti usando il Azure portal, PowerShell o interfaccia della riga di comando di Azure. È anche possibile usare una delle librerie client del provider di risorse Archiviazione di Azure per configurare la replica di oggetti.
Prerequisiti
Prima di configurare la replica di oggetti, creare gli account di origine e di destinazione storage se non esistono già. Gli account di origine e di destinazione possono essere account di archiviazione per utilizzo generico v2 o account BLOB in blocchi Premium. Per altre informazioni, vedere Creare un account Archiviazione di Azure.
La replica di oggetti richiede che il controllo delle versioni blob sia abilitato sia per l'account di origine che per quello di destinazione e che il feed delle modifiche del blob sia abilitato per l'account di origine. Per altre informazioni sul controllo delle versioni dei BLOB, vedere Controllo delle versioni dei BLOB. Per altre informazioni sul feed di modifiche, vedere Change feed support in Archiviazione BLOB di Azure. Tenere presente che l'abilitazione di queste funzionalità può comportare costi aggiuntivi. L'abilitazione dei prerequisiti della replica degli oggetti (controllo delle versioni dei blob e feed delle modifiche) richiede l'autorizzazione Microsoft.Storage/storageAccounts/blobServices/write. Per saperne di più sui permessi, consulta Azure permissions for Storage. Una volta creata una politica di replica degli oggetti, sono previste operazioni di replica dei dati dalla sorgente alla destinazione. Concedere questo permesso dovrebbe quindi essere inteso come concedere anche il permesso di copiare dati tra gli account di origine e destinazione.
Per configurare un criterio di replica di oggetti per un account storage, è necessario assegnare il ruolo Azure Resource Manager Contributor, con ambito al livello dell'account storage o superiore. Per altre informazioni, vedere Ruoli predefiniti di Azure nella documentazione di controllo degli accessi basata sui ruoli di Azure (Azure RBAC).
La replica di oggetti non è ancora supportata negli account con uno spazio dei nomi gerarchico abilitato.
Se si ha accesso sia agli account di archiviazione di origine che di destinazione, è possibile configurare i criteri di replica degli oggetti su entrambi gli account. Gli esempi seguenti illustrano come configurare la replica di oggetti con il Azure portal, PowerShell o interfaccia della riga di comando di Azure.
Quando si configura la replica di oggetti nella Azure portal, è sufficiente configurare i criteri nell'account di origine. Il portale di Azure crea automaticamente la politica sull'account di destinazione dopo averlo configurato per l'account di origine.
Per creare un criterio di replica nella Azure portal, seguire questa procedura:
Passare all'account di archiviazione di origine nel portale di Azure.
In Data management, selezionare Replica oggetto.
Selezionare Crea regole di replica.
Selezionare la sottoscrizione di destinazione e l'account di archiviazione.
Nella sezione relativa ai Dettagli delle coppie di contenitori, selezionare un contenitore di origine nell'account di origine e un contenitore di destinazione nell'account di destinazione. È possibile creare fino a 10 coppie di contenitori per ogni criterio di replica dal Azure portal. Per configurare più di 10 coppie di contenitori (fino a 1000), vedere Configurare la replica di oggetti usando un file JSON.
L'immagine seguente mostra un set di regole di replica.
Se necessario, specificare uno o più filtri per copiare solo i BLOB che corrispondono a un modello di prefisso. Ad esempio, se si specifica un prefisso b, vengono replicati solo i BLOB il cui nome inizia con tale lettera. È possibile specificare una directory virtuale come parte del prefisso. È possibile aggiungere un massimo di cinque corrispondenze di prefisso. La stringa di prefisso non supporta caratteri jolly.
L'immagine seguente mostra i filtri che limitano i BLOB copiati come parte di una regola di replica.
Per impostazione predefinita, l'ambito di copia è impostato per copiare solo nuovi oggetti. Per copiare tutti gli oggetti nel contenitore o per copiare oggetti a partire da una data e un'ora personalizzate, selezionare il collegamento di modifica e configurare l'ambito di copia per la coppia di contenitori.
L'immagine seguente mostra un ambito di copia personalizzato che copia gli oggetti da una data e un'ora specificate.
Selezionare Salva e applica per creare i criteri di replica e avviare la replica dei dati.
Dopo aver configurato la replica di oggetti, il Azure portal visualizza i criteri e le regole di replica, come illustrato nell'immagine seguente.
Per creare criteri di replica con PowerShell, installare prima la versione 2.5.0 o versione successiva del modulo Az.Storage PowerShell. Per altre informazioni sull'installazione di Azure PowerShell, vedere Installare Azure PowerShell con PowerShellGet.
Nell'esempio seguente viene illustrato come creare prima un criterio di replica nell'account di destinazione e quindi nell'account di origine. Ricordare di sostituire i valori tra parentesi angolari con valori personalizzati:
# Sign in to your Azure account.
Connect-AzAccount
# Set variables.
$rgName = "<resource-group>"
$srcAccountName = "<source-storage-account>"
$destAccountName = "<destination-storage-account>"
$srcContainerName1 = "source-container1"
$destContainerName1 = "dest-container1"
$srcContainerName2 = "source-container2"
$destContainerName2 = "dest-container2"
# Enable blob versioning and change feed on the source account.
Update-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-EnableChangeFeed $true `
-IsVersioningEnabled $true
# Enable blob versioning on the destination account.
Update-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-IsVersioningEnabled $true
# List the service properties for both accounts.
Get-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName
Get-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $destAccountName
# Create containers in the source and destination accounts.
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $srcAccountName |
New-AzStorageContainer $srcContainerName1
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $destAccountName |
New-AzStorageContainer $destContainerName1
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $srcAccountName |
New-AzStorageContainer $srcContainerName2
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $destAccountName |
New-AzStorageContainer $destContainerName2
# Define replication rules for each container.
$rule1 = New-AzStorageObjectReplicationPolicyRule -SourceContainer $srcContainerName1 `
-DestinationContainer $destContainerName1 `
-PrefixMatch b
$rule2 = New-AzStorageObjectReplicationPolicyRule -SourceContainer $srcContainerName2 `
-DestinationContainer $destContainerName2 `
-MinCreationTime 2021-09-01T00:00:00Z
# Create the replication policy on the destination account.
$destPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId default `
-SourceAccount $srcAccountName `
-Rule $rule1,$rule2
# Create the same policy on the source account.
Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-InputObject $destPolicy
Per creare criteri di replica con interfaccia della riga di comando di Azure, installare prima interfaccia della riga di comando di Azure versione 2.11.1 o successiva. Per altre informazioni, vedere Introduzione ad interfaccia della riga di comando di Azure.
Successivamente, abilita il controllo delle versioni BLOB sugli account di archiviazione di origine e di destinazione e abilita il feed di modifiche sull'account di origine chiamando il comando az storage account blob-service-properties update. Ricordare di sostituire i valori tra parentesi angolari con valori personalizzati:
az login
az storage account blob-service-properties update \
--resource-group <resource-group> \
--account-name <source-storage-account> \
--enable-versioning \
--enable-change-feed
az storage account blob-service-properties update \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--enable-versioning
Creare i contenitori di origine e di destinazione nei rispettivi account storage.
az storage container create \
--account-name <source-storage-account> \
--name source-container-1 \
--auth-mode login
az storage container create \
--account-name <source-storage-account> \
--name source-container-2 \
--auth-mode login
az storage container create \
--account-name <dest-storage-account> \
--name dest-container-1 \
--auth-mode login
az storage container create \
--account-name <dest-storage-account> \
--name dest-container-2 \
--auth-mode login
Creare una nuova policy di replica e la regola associata nell'account di destinazione tramite il comando az storage account o-policy create.
az storage account or-policy create \
--account-name <dest-storage-account> \
--resource-group <resource-group> \
--source-account <source-storage-account> \
--destination-account <dest-storage-account> \
--source-container source-container-1 \
--destination-container dest-container-1 \
--min-creation-time '2021-09-01T00:00:00Z' \
--prefix-match a
Archiviazione di Azure imposta l'ID della policy per la nuova policy quando viene creata. Per aggiungere ulteriori regole alla politica, chiamare il comando az storage account or-policy rule add e specificare l'ID della politica.
az storage account or-policy rule add \
--account-name <dest-storage-account> \
--resource-group <resource-group> \
--source-container source-container-2 \
--destination-container dest-container-2 \
--policy-id <policy-id> \
--prefix-match b
Quindi, crea la policy nell'account di origine usando l'ID della policy.
az storage account or-policy show \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--policy-id <policy-id> |
az storage account or-policy create --resource-group <resource-group> \
--account-name <source-storage-account> \
--policy "@-"
Se non si dispone delle autorizzazioni per l'account di storage di origine o se si vogliono usare più di 10 coppie di contenitori, è possibile configurare la replica di oggetti nell'account di destinazione e fornire un file JSON contenente la definizione dei criteri a un altro utente per creare gli stessi criteri nell'account di origine. Ad esempio, se l'account di origine si trova in un tenant Microsoft Entra diverso dall'account di destinazione, è possibile usare questo approccio per configurare la replica degli oggetti.
Per informazioni su come creare un file JSON contenente la definizione dei criteri, vedere File di definizione dei criteri.
Annotazioni
La replica di oggetti tra tenant è consentita per impostazione predefinita per un account storage. Per impedire la replica tra tenant, è possibile impostare la proprietà AllowCrossTenantReplication per impedire la replica di oggetti tra tenant per gli account storage. Per altre informazioni, vedere Impedire la replica di oggetti nei tenant di Microsoft Entra.
Gli esempi in questa sezione illustrano come configurare i criteri di replica degli oggetti nell'account di destinazione e quindi ottenere il file JSON per tale criterio che un altro utente può usare per configurare i criteri nell'account di origine.
Per configurare la replica di oggetti nell'account di destinazione con un file JSON nel Azure portal, seguire questa procedura:
Creare un file JSON locale che definisce i criteri di replica nell'account di destinazione. Impostare il campo policyId su default in modo che Archiviazione di Azure definirà l'ID criterio.
Un modo semplice per creare un file JSON che definisce un criterio di replica consiste innanzitutto nel creare un criterio di replica di test tra due account storage nel Azure portal. È quindi possibile scaricare le regole di replica e modificare il file JSON in base alle esigenze.
Passare alle impostazioni di replica oggetti per l'account di destinazione nel portale di Azure.
Selezionare Carica regole di replica.
Caricare il file JSON. Il Azure portal visualizza i criteri e le regole che verranno creati, come illustrato nell'immagine seguente.
Selezionare Carica per creare i criteri di replica nell'account di destinazione.
È quindi possibile scaricare un file JSON contenente la definizione di criteri che è possibile fornire a un altro utente per configurare l'account di origine. Per scaricare questo file JSON, seguire questa procedura:
Passare alle impostazioni di replica oggetti per l'account di destinazione nel portale di Azure.
Selezionare il pulsante Altro accanto al criterio da scaricare, quindi selezionare Scarica regole, come illustrato nell'immagine seguente.
Salvare il file JSON nel computer locale per condividerlo con un altro utente per configurare i criteri nell'account di origine.
Il file JSON scaricato include l'ID della politica che Archiviazione di Azure ha creato per la politica sull'account di destinazione. È necessario usare lo stesso ID della politica per configurare la replica di oggetti nell'account di origine.
Tenere presente che il caricamento di un file JSON per creare un criterio di replica per l'account di destinazione tramite il Azure portal non crea automaticamente gli stessi criteri nell'account di origine. Un altro utente deve creare i criteri nell'account di origine prima che Archiviazione di Azure inizi la replica degli oggetti.
Per scaricare un file JSON contenente la definizione dei criteri di replica per l'account di destinazione da PowerShell, chiamare il comando Get-AzStorageObjectReplicationPolicy per restituire i criteri. Convertire quindi il criterio in JSON e salvarlo come file locale, come illustrato nell'esempio seguente. Ricordarsi di sostituire i valori tra parentesi angolari e il percorso del file con i propri valori:
$rgName = "<resource-group>"
$destAccountName = "<destination-storage-account>"
$destPolicy = Get-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $destAccountName
$destPolicy | ConvertTo-Json -Depth 5 > c:\temp\json.txt
Per usare il file JSON per definire i criteri di replica nell'account di origine con PowerShell, recuperare il file locale e convertirlo da JSON a un oggetto . Chiamare quindi il comando Set-AzStorageObjectReplicationPolicy per configurare i criteri nell'account di origine, come illustrato nell'esempio seguente.
Quando si esegue l'esempio, assicurarsi di impostare il -ResourceGroupName parametro sul gruppo di risorse per l'account di origine e sul -StorageAccountName parametro sul nome dell'account di origine. Ricordarsi anche di sostituire i valori tra parentesi angolari e il percorso del file con i propri valori:
$object = Get-Content -Path C:\temp\json.txt | ConvertFrom-Json
Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-PolicyId $object.PolicyId `
-SourceAccount $object.SourceAccount `
-DestinationAccount $object.DestinationAccount `
-Rule $object.Rules
Per scrivere la definizione dei criteri di replica per l'account di destinazione in un file JSON da interfaccia della riga di comando di Azure, chiamare il comando az storage account or-policy show e reindirizzarne l'output verso un file.
L'esempio seguente scrive la definizione dei criteri in un file JSON denominato policy.json. Ricordarsi di sostituire i valori tra parentesi angolari e il percorso del file con i propri valori:
az storage account or-policy show \
--account-name <dest-account-name> \
--policy-id <policy-id> > policy.json
Per usare il file JSON per configurare i criteri di replica nell'account di origine con interfaccia della riga di comando di Azure, chiamare il az storage account o-policy create comando e fare riferimento al file policy.json. Ricordarsi di sostituire i valori tra parentesi angolari e il percorso del file con i propri valori:
az storage account or-policy create \
-resource-group <resource-group> \
--source-account <source-account-name> \
--policy @policy.json
La replica di oggetti supporta ora la copia di tag di indice dai BLOB di origine ai BLOB di destinazione. È possibile configurare questa funzionalità come parte di una regola di replica nuova o esistente.
Importante
La replica di tag è attualmente in anteprima.
Vedere le condizioni per l'utilizzo di Supplemental Terms of Use for Microsoft Azure Previews per le condizioni legali applicabili alle funzionalità di Azure disponibili in versione beta, in anteprima o non ancora rilasciate nella disponibilità generale.
Prerequisiti
Prima di poter abilitare la replica dei tag, l'account storage di origine deve essere registrato per la funzionalità di anteprima EnableObjectReplicationTags. Registrare la funzionalità di anteprima nel portale di Azure seguendo la procedura descritta nella documentazione delle funzionalità di anteprima di Azure Resource Manager.
La replica dei tag può essere abilitata sia nei criteri di replica di oggetti nuovi che esistenti. Qualsiasi modifica apportata a un BLOB di origine o ai tag di indice attiverà la replica dei tag.
Abilitare la replica dei tag dal pannello Replica oggetti quando si crea una regola o si aggiornano le regole esistenti usando la colonna Replica tag.
Per configurare la replica dei tag di indice BLOB durante la creazione di una nuova regola, seguire questa procedura:
- Passare all'account di archiviazione di origine nel portale di Azure.
- In Data management, selezionare Replica oggetto.
- Selezionare Crea regole di replica.
- Selezionare Abilita replica tag e infine scegliere Salva e applica per configurare la replica dei tag indice BLOB.
Per configurare la replicazione dei tag di indice BLOB per le regole esistenti, seguire questa procedura:
- Passare alla scheda Account nella pagina Replica oggetti
- Selezionare l'opzione Abilita nella colonna Replica tag in Oggetti copiati dalla tabella dell'account e selezionare OK.
- Lo stato della colonna di replica dei tag rispetto a una regola ora mostra Abilitato.
Per disabilitare la replica dei tag di indice BLOB per le regole esistenti, seguire questa procedura:
- Passare alla scheda Account nella pagina Replica oggetti
- Selezionare una regola esistente e selezionare Modifica regole dal menu '...'
- Deselezionare l'opzione Abilita replica tag e infine selezionare Salva e applica per disabilitare la replica dei tag di indice BLOB.
Per altre informazioni sull'installazione di Azure PowerShell, vedere Installare Azure PowerShell con PowerShellGet.
Abilita la replicazione dei tag su una nuova policy: Il seguente esempio mostra come creare una policy di replicazione con la replica dei blob index tag abilitata, prima sull'account destinazione e poi sull'account sorgente. Ricordati di sostituire i valori tra parentesi angolari con i tuoi valori.
# Sign in to your Azure account.
Connect-AzAccount
# Set variables.
$rgName = "<resource-group>"
$srcAccountName = "<source-storage-account>"
$destAccountName = "<destination-storage-account>"
$srcContainerName = "source-container"
$destContainerName = "dest-container"
# Build full resource IDs for the source and destination accounts.
$subId = (Get-AzContext).Subscription.Id
$srcId = "/subscriptions/$subId/resourceGroups/$rgName/providers/Microsoft.Storage/storageAccounts/$srcAccountName"
$destId = "/subscriptions/$subId/resourceGroups/$rgName/providers/Microsoft.Storage/storageAccounts/$destAccountName"
# Define the replication rule for the container pair.
$rule = New-AzStorageObjectReplicationPolicyRule `
-SourceContainer $srcContainerName `
-DestinationContainer $destContainerName
# Create the policy on the destination account with tags replication enabled.
$destPolicy = Set-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId default `
-SourceAccount $srcId `
-DestinationAccount $destId `
-Rule $rule `
-EnableTagsReplication $true
# Apply the same policy to the source account.
Set-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-InputObject $destPolicy
Abilita la replicazione dei tag su una policy esistente Il seguente esempio mostra come abilitare la replica dei tag su una policy già esistente. Recupera la policy dall'account di destinazione, la riapplica con la replica dei tag abilitata e poi applica la policy aggiornata all'account di origine.
# Set variables.
$rgName = "<resource-group>"
$srcAccountName = "<source-storage-account>"
$destAccountName = "<destination-storage-account>"
$policyId = "<policy-id>"
# Get the existing policy from the destination account.
# Its SourceAccount and DestinationAccount properties are returned as resource IDs.
$existing = Get-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId $policyId
# Re-apply the policy on the destination account with tags replication enabled.
$updated = Set-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId $existing.PolicyId `
-SourceAccount $existing.SourceAccount `
-DestinationAccount $existing.DestinationAccount `
-Rule $existing.Rules `
-EnableTagsReplication $true
# Apply the updated policy to the source account.
Set-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-InputObject $updated
Verifica che la replica dei tag sia abilitata
Il seguente esempio restituisce lo stato di replicazione dei tag di una policy. La Enabled proprietà ritorna True quando la replica dei tag è attiva.
# Set variables.
$rgName = "<resource-group>"
$srcAccountName = "<source-storage-account>"
$policyId = "<policy-id>"
# Get the tags replication status from the source account.
(Get-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-PolicyId $policyId).TagsReplication
Disabilita la replica dei tag
Il seguente esempio mostra come disabilitare la replica dei tag su una policy esistente riapplicandola con -EnableTagsReplication $false.
# Set variables.
$rgName = "<resource-group>"
$srcAccountName = "<source-storage-account>"
$destAccountName = "<destination-storage-account>"
$policyId = "<policy-id>"
# Get the existing policy from the destination account.
$existing = Get-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId $policyId
# Re-apply the policy on the destination account with tags replication disabled.
$updated = Set-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId $existing.PolicyId `
-SourceAccount $existing.SourceAccount `
-DestinationAccount $existing.DestinationAccount `
-Rule $existing.Rules `
-EnableTagsReplication $false
# Apply the updated policy to the source account.
Set-AzStorageObjectReplicationPolicy `
-ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-InputObject $updated
Per ulteriori informazioni, consulta la documentazione della CLI
Abilita la replica dei tag su una nuova policy: aggiungi il --tags-replication true parametro quando crei la policy sull'account destinazione, poi copia la definizione della policy sull'account sorgente.
az storage account or-policy create \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--source-account <source-storage-account> \
--destination-account <dest-storage-account> \
--source-container <source-container> \
--destination-container <dest-container> \
--tags-replication true
az storage account or-policy show \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--policy-id <policy-id> |
az storage account or-policy create \
--resource-group <resource-group> \
--account-name <source-storage-account> \
--policy "@-"
Abilita la replicazione dei tag su una policy esistente: Usa l'ID della policy condivisa per aggiornare il flag su entrambi gli account.
az storage account or-policy update \
--resource-group <resource-group> \
--account-name <source-storage-account> \
--policy-id <policy-id> \
--source-account <source-storage-account> \
--destination-account <dest-storage-account> \
--tags-replication true
az storage account or-policy update \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--policy-id <policy-id> \
--source-account <source-storage-account> \
--destination-account <dest-storage-account> \
--tags-replication true
Verifica che la replica dei tag sia abilitata: consulta la tagsReplication.enabled proprietà su ciascun account. Un valore di ritorno di true conferma che è abilitato.
az storage account or-policy show \
--resource-group <resource-group> \
--account-name <source-storage-account> \
--policy-id <policy-id> \
--query "tagsReplication.enabled" \
--output tsv
az storage account or-policy show \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--policy-id <policy-id> \
--query "tagsReplication.enabled" \
--output tsv
Disabilita la replica dei tag: imposta --tags-replication false sia sull'account sorgente che su quello di destinazione usando l'ID della policy condivisa.
az storage account or-policy update \
--resource-group <resource-group> \
--account-name <source-storage-account> \
--policy-id <policy-id> \
--source-account <source-storage-account> \
--destination-account <dest-storage-account> \
--tags-replication false
az storage account or-policy update \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--policy-id <policy-id> \
--source-account <source-storage-account> \
--destination-account <dest-storage-account> \
--tags-replication false
Gli utenti possono usare le API REST esistenti: Criteri di replica degli oggetti - Creazione o aggiornamento - API REST per configurare i criteri per la replica dei tag impostati nei BLOB.
Aggiungere la riga “tagsReplication”: { “enabled”: true } seguente durante la creazione o l'aggiornamento delle regole di replica nell'account di origine.
La replica dei tag è supportata nell'API versione 2022-05-01 e successive. È possibile aggiungere il nuovo campo tagsReplication ai criteri di replica.
Esempio:
{
"sourceAccount": "<source-account-name>",
"destinationAccount": "<destination-account-name>",
"tagsReplication":
{
"enabled": true
},
"rules":
[
{
"ruleId": "<rule-id>",
"sourceContainer": "<source-container-name>",
"destinationContainer": "<destination-container-name>"
}
]
}
Abilitare le metriche di replica
È possibile abilitare le metriche di replica nei criteri di replica di oggetti nuovi ed esistenti. L'osservazione delle metriche potrebbe richiedere alcuni minuti.
È possibile abilitare le metriche usando il pannello Replica di oggetti dalla nuova colonna Metriche o modificando la sezione Modifica regole di un criterio da "..." nella riga del criterio OR.
L'abilitazione delle metriche è supportata nell'API versione 2021-08-01 e successive. È possibile aggiungere il nuovo campo delle metriche ai criteri di replica. Esempio:
{
"sourceAccount": "<source-account-name>",
"destinationAccount": "<destination-account-name>",
"metrics":
{
"enabled": true
},
"rules":
[
{
"ruleId": "<rule-id>",
"sourceContainer": "<source-container-name>",
"destinationContainer": "<destination-container-name>"
}
]
}
Se si abilitano le metriche su un criterio configurato per copiare i dati esistenti, è possibile osservare una quantità crescente all'inizio mentre il criterio è attivo nella fase iniziale del processo di elencazione. Una volta completato, verrà avviata la replica.
Visualizzare le metriche di replica
È possibile fare clic sul collegamento Visualizza dalla colonna Metriche per visualizzare le metriche di monitoraggio
Per visualizzare ulteriormente le metriche in Monitoraggio di Azureaggio, fare clic sul grafico di una metrica. In questo modo verrai indirizzato alla visualizzazione delle Metriche di Monitoraggio di Azure con maggiori funzionalità di filtro.
Controllare lo stato di replica di un BLOB
È possibile controllare lo stato della replica per un BLOB nell'account di origine usando il Azure portal, PowerShell o interfaccia della riga di comando di Azure. Le proprietà di replica degli oggetti non vengono popolate finché la replica non è stata completata o non è riuscita.
Per controllare lo stato della replica per un blob nell'account di origine nel portale di Azure, seguire questa procedura:
- Passare all'account di origine nella Azure portal.
- Individuare il contenitore che include il blob di origine.
- Selezionare il BLOB per visualizzarne le proprietà. Se il BLOB è stato replicato correttamente, nella sezione Replica oggetti lo stato è impostato su Completa. Sono elencati anche l'ID dei criteri di replica e l'ID per la regola che regola la replica degli oggetti per questo contenitore.
Per controllare lo stato della replica di un BLOB nell'account di origine con PowerShell, ottieni il valore della proprietà ReplicationStatus degli oggetti di replica, come illustrato nell'esempio seguente. Ricordare di sostituire i valori tra parentesi angolari con valori personalizzati:
$ctxSrc = (Get-AzStorageAccount -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName).Context
$blobSrc = Get-AzStorageBlob -Container $srcContainerName1 `
-Context $ctxSrc `
-Blob <blob-name>
$blobSrc.BlobProperties.ObjectReplicationSourceProperties[0].Rules[0].ReplicationStatus
Per controllare lo stato di replica di un BLOB nell'account di origine con interfaccia della riga di comando di Azure, ottieni il valore della proprietà status della replica di oggetti, come illustrato nell'esempio seguente.
az storage blob show \
--account-name <source-account-name> \
--container-name <source-container-name> \
--name <source-blob-name> \
--query 'objectReplicationSourceProperties[].rules[].status' \
--output tsv \
--auth-mode login
Se lo stato di replica per un BLOB nell'account di origine indica un errore, esaminare le possibili cause seguenti:
- Assicurarsi che i criteri di replica degli oggetti siano configurati nell'account di destinazione.
- Verificare che il contenitore di destinazione esista ancora.
- Se il BLOB di origine è stato crittografato con una chiave fornita dal cliente come parte di un'operazione di scrittura, la replica degli oggetti avrà esito negativo. Per altre informazioni sulle chiavi fornite dal cliente, vedere Provide una chiave di crittografia in una richiesta di Blob storage.
Rimuovere un criterio di replica
Per rimuovere un criterio di replica e le regole associate, usare Azure portal, PowerShell o l'interfaccia della riga di comando.
Per rimuovere un criterio di replica nella Azure portal, seguire questa procedura:
- Passare all'account di archiviazione di origine nel portale di Azure.
- In Impostazioni selezionare Replica di oggetti.
- Selezionare il pulsante Altro accanto al nome del criterio.
- Selezionare Elimina regole.
Per rimuovere un criterio di replica, eliminare il criterio sia dall'account di origine che da quello di destinazione. L'eliminazione del criterio comporta anche l'eliminazione di tutte le regole associate.
# Remove the policy from the destination account.
Remove-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId $destPolicy.PolicyId
# Remove the policy from the source account.
Remove-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-PolicyId $destPolicy.PolicyId
Per rimuovere un criterio di replica, eliminare il criterio sia dall'account di origine che da quello di destinazione. L'eliminazione del criterio comporta anche l'eliminazione di tutte le regole associate.
az storage account or-policy delete \
--policy-id <policy-id> \
--account-name <source-storage-account> \
--resource-group <resource-group>
az storage account or-policy delete \
--policy-id <policy-id> \
--account-name <dest-storage-account> \
--resource-group <resource-group>
Comportamento durante la ricreazione di un criterio di replica di oggetti
Quando un criterio di replica di oggetti viene eliminato e ricreato nella stessa coppia di contenitori di origine e di destinazione, Azure considera il nuovo criterio come una relazione di replica completamente separata. Si applica il comportamento seguente:
Viene generato un nuovo ID criterio per i criteri ricreati.
Tutte le attività di replica associate ai criteri precedenti vengono terminate.
Al contenitore di destinazione viene assegnato un nuovo blocco di replica associato al nuovo ID della politica.
Lo stato di replica dei criteri precedenti non viene riutilizzato.
Comportamento della replica dopo la ricreazione di un criterio di replica di oggetti
Dopo aver ricreato il criterio, Azure tenta nuovamente la replica per i BLOB idonei e il risultato dipende dalla disponibilità della cronologia delle versioni del BLOB nell'account di origine:
Se un BLOB di origine non dispone di versioni precedenti disponibili nella destinazione: Azure determina che il BLOB è già stato copiato con un criterio precedente. La ri-replica di quel BLOB non riesce. Solo le nuove scritture BLOB (o le nuove versioni create dopo la ricreazione dei criteri) vengono replicate correttamente.
Se un BLOB di origine include versioni precedenti disponibili nella destinazione: Azure è in grado di replicare nuovamente il BLOB. Il BLOB viene nuovamente copiato nella destinazione come nuova versione. In questo modo è possibile ripetere correttamente la replica dei BLOB esistenti senza incoerenza dei dati.
Passaggi successivi