Az objektumreplikálás aszinkron módon másolja a blokkblobokat egy forrástárfiók és egy célfiók között. Az objektumreplikálás konfigurálásakor létre kell hoznia egy replikációs szabályzatot, amely meghatározza a forrástárfiókot és a célfiókot. A replikációs szabályzatok egy vagy több olyan szabályt tartalmaznak, amelyek egy forrástárolót és egy céltárolót határoznak meg, és jelzik, hogy mely blokkblobok replikálódnak a forrástárolóban. Az objektumreplikálással kapcsolatos további információkért lásd a blokkblobok objektumreplikálását ismertető témakört.
Ez a cikk azt ismerteti, hogyan konfigurálhat objektumreplikációs szabályzatot az Azure Portal, a PowerShell vagy az Azure CLI használatával. Az objektumreplikálás konfigurálásához használhatja az Azure Storage-erőforrás-szolgáltató egyik ügyfélkódtárát is.
Előfeltételek
Mielőtt konfigurálja az objektumreplikálást, hozza létre a forrás- és céltárfiókokat, ha még nem léteznek. A forrás- és célfiókok lehetnek általános célú v2-tárfiókok vagy prémium szintű blokkblobfiókok. További információ: Azure Storage-fiók létrehozása.
Az objektumreplikáláshoz engedélyezni kell a blobok verziószámozását a forrás- és a célfiókban, és engedélyezni kell a blobmódosítási hírcsatornát a forrásfiókhoz. A blobok verziószámozásával kapcsolatos további információkért lásd a Blob verziószámozását. További információ a változáscsatornáról: Változáscsatorna támogatása az Azure Blob Storage-ban. Ne feledje, hogy ezeknek a funkcióknak az engedélyezése további költségeket eredményezhet.
Egy tárfiók objektumreplikációs szabályzatának konfigurálásához hozzá kell rendelnie az Azure Resource Manager közreműködői szerepkörét, amely a tárfiók szintjére vagy magasabb szintjére terjed ki. További információ: Azure beépített szerepkörök az Azure szerepköralapú hozzáférés-vezérlési (Azure RBAC) dokumentációjában.
Az objektumreplikálás még nem támogatott azokban a fiókokban, amelyeken engedélyezve van a hierarchikus névtér.
Objektumreplikálás konfigurálása mindkét tárfiókhoz való hozzáféréssel
Ha a forrás- és a céltárfiókhoz is rendelkezik hozzáféréssel, akkor mindkét fiókon konfigurálhatja az objektumreplikációs szabályzatot. Az alábbi példák bemutatják, hogyan konfigurálható az objektumreplikálás az Azure Portal, a PowerShell vagy az Azure CLI használatával.
Amikor az Azure Portalon konfigurálja az objektumreplikálást, csak a forrásfiókon kell konfigurálnia a szabályzatot. Az Azure Portal automatikusan létrehozza a szabályzatot a célfiókon, miután konfigurálta a forrásfiókhoz.
Ha replikációs szabályzatot szeretne létrehozni az Azure Portalon, kövesse az alábbi lépéseket:
Lépjen a forrástárfiókra az Azure Portalon.
Az Adatkezelés területen válassza az Objektumreplikálás lehetőséget.
Válassza a Replikációs szabályok létrehozása lehetőséget.
Válassza ki a cél-előfizetést és a tárfiókot.
A Tárolópár részletei szakaszban válasszon ki egy forrástárolót a forrásfiókból, és egy céltárolót a célfiókból. Replikációs szabályzatonként legfeljebb 10 tárolópár hozható létre az Azure Portalon. Több mint 10 tárolópár (legfeljebb 1000) konfigurálásához lásd: Objektumreplikálás konfigurálása JSON-fájl használatával.
Az alábbi képen replikációs szabályok halmaza látható.
Ha szükséges, adjon meg egy vagy több szűrőt, hogy csak az előtagmintának megfelelő blobokat másolja. Ha például előtagot bad meg, akkor csak azok a blobok lesznek replikálva, amelyeknek a neve ezzel a betűvel kezdődik. You can specify a virtual directory as part of the prefix. Legfeljebb öt előtag-egyezést adhat hozzá. Az előtag sztringje nem támogatja a helyettesítő karaktereket.
Az alábbi képen olyan szűrők láthatók, amelyek korlátozzák, hogy mely blobokat másolja a replikációs szabály részeként.
Alapértelmezés szerint a másolási hatókör csak az új objektumok másolására van beállítva. A tároló összes objektumának másolásához vagy az egyéni dátumtól és időponttól kezdve az objektumok másolásához válassza a módosítási hivatkozást, és konfigurálja a tárolópár másolási hatókörét.
Az alábbi képen egy egyéni másolási hatókör látható, amely egy megadott dátumból és időpontból másolja az objektumokat.
Válassza a Mentés és alkalmazás lehetőséget a replikációs szabályzat létrehozásához és az adatok replikálásának megkezdéséhez.
Miután konfigurálta az objektumreplikálást, az Azure Portal megjeleníti a replikációs szabályzatot és a szabályokat az alábbi képen látható módon.
Replikációs szabályzat PowerShell-lel való létrehozásához először telepítse az Az.Storage PowerShell modul 2.5.0-s vagy újabb verzióját. Az Azure PowerShell telepítéséről további információt az Azure PowerShell telepítése a PowerShellGet használatával című témakörben talál.
Az alábbi példa bemutatja, hogyan hozhat létre replikációs szabályzatot először a célfiókon, majd a forrásfiókon. Ne felejtse el lecserélni a szögletes zárójelben lévő értékeket a saját értékeire:
# 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
Ha replikációs szabályzatot szeretne létrehozni az Azure CLI-vel, először telepítse az Azure CLI 2.11.1-es vagy újabb verzióját. További információ: Az Azure CLI használatának első lépései.
Ezután engedélyezze a blobok verziószámozását a forrás- és céltárfiókokon, és engedélyezze a változáscsatornát a forrásfiókon az az storage account blob-service-properties update parancs meghívásával. Ne felejtse el lecserélni a szögletes zárójelben lévő értékeket a saját értékeire:
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
Hozza létre a forrás- és céltárolókat a saját tárfiókjaikban.
Az Azure Storage beállítja az új szabályzat szabályzatazonosítóját a létrehozáskor. Ha további szabályokat szeretne hozzáadni a szabályzathoz, hívja meg az az storage account or-policy rule add és provide the policy id.
Ezután hozza létre a szabályzatot a forrásfiókban a szabályzatazonosító használatával.
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 "@-"
Objektumreplikálás konfigurálása JSON-fájllal
Ha nem rendelkezik engedélyekkel a forrás tárfiókhoz, vagy ha több mint 10 tárolópárt szeretne használni, konfigurálhatja az objektumreplikálást a célfiókon, és megadhat egy JSON-fájlt, amely tartalmazza a szabályzatdefiníciót egy másik felhasználónak, hogy ugyanazt a szabályzatot hozza létre a forrásfiókon. Ha például a forrásfiók a célfióktól eltérő Microsoft Entra-bérlőben található, akkor ezzel a módszerrel konfigurálhatja az objektumreplikálást.
A szabályzatdefiníciót tartalmazó JSON-fájlok létrehozásának módjáról a Szabályzatdefiníciós fájlban talál további információt.
Megjegyzés:
A bérlők közötti objektumreplikálás alapértelmezés szerint engedélyezett egy tárfiók esetében. A bérlők közötti replikáció megakadályozása érdekében beállíthatja az AllowCrossTenantReplication tulajdonságot, hogy letiltsa a bérlők közötti objektumreplikációt a tárfiókok esetében. További információ: Objektumreplikálás megakadályozása a Microsoft Entra-bérlők között.
Az ebben a szakaszban szereplő példák bemutatják, hogyan konfigurálhatja az objektumreplikációs szabályzatot a célfiókon, majd lekérheti annak a szabályzatnak a JSON-fájlját, amelyet egy másik felhasználó használhat a szabályzat forrásfiókon való konfigurálásához.
Ha egy JSON-fájllal szeretné konfigurálni az objektumreplikálást a célfiókon az Azure Portalon, kövesse az alábbi lépéseket:
Hozzon létre egy helyi JSON-fájlt, amely meghatározza a replikációs szabályzatot a célfiókon. Állítsa a policyId mezőt alapértelmezettre, hogy az Azure Storage határozza meg a szabályzat azonosítóját.
A replikációs szabályzatot meghatározó JSON-fájlok létrehozásának egyszerű módja, ha először létrehoz egy tesztreplikációs szabályzatot két tárfiók között az Azure Portalon. Ezután letöltheti a replikációs szabályokat, és szükség szerint módosíthatja a JSON-fájlt.
Keresse meg a célfiók objektumreplikációs beállításait az Azure Portalon.
Válassza a Replikációs szabályok feltöltése lehetőséget.
Töltse fel a JSON-fájlt. Az Azure Portal megjeleníti a létrehozandó szabályzatot és szabályokat az alábbi képen látható módon.
Válassza a Feltöltés lehetőséget a replikációs szabályzat célfiókon való létrehozásához.
Ezután letöltheti a szabályzatdefiníciót tartalmazó JSON-fájlt, amelyet egy másik felhasználónak adhat meg a forrásfiók konfigurálásához. A JSON-fájl letöltéséhez kövesse az alábbi lépéseket:
Keresse meg a célfiók objektumreplikációs beállításait az Azure Portalon.
Válassza a letölteni kívánt szabályzat melletti Továbbiak gombot, majd válassza a Szabályok letöltése lehetőséget az alábbi képen látható módon.
Mentse a JSON-fájlt a helyi számítógépre, és ossza meg egy másik felhasználóval a szabályzat forrásfiókon való konfigurálásához.
A letöltött JSON-fájl tartalmazza a házirend azonosítóját, amelyet az Azure Storage hozott létre a házirendhez a célfiókon. A forrásfiók objektumreplikálásának konfigurálásához ugyanazt a szabályzatazonosítót kell használnia.
Ne feledje, hogy ha egy JSON-fájlt feltölt egy replikációs szabályzat létrehozásához a célfiókhoz az Azure Portalon keresztül, az nem hozza létre automatikusan ugyanazt a szabályzatot a forrásfiókban. Egy másik felhasználónak létre kell hoznia a szabályzatot a forrásfiókon, mielőtt az Azure Storage megkezdi az objektumok replikálását.
A célfiók replikációs szabályzatdefinícióját tartalmazó JSON-fájl PowerShellből való letöltéséhez hívja meg a Get-AzStorageObjectReplicationPolicy parancsot a szabályzat visszaadásához. Ezután konvertálja a szabályzatot JSON-fájllá, és mentse helyi fájlként az alábbi példában látható módon. Ne felejtse el lecserélni a szögletes zárójelek értékeit és a fájl elérési útját a saját értékeire:
Ha a JSON-fájl használatával szeretné meghatározni a forrásfiók replikációs szabályzatát a PowerShell-lel, kérje le a helyi fájlt, és konvertálja JSON-ból objektummá. Ezután hívja meg a Set-AzStorageObjectReplicationPolicy parancsot a szabályzat forrásfiókon való konfigurálásához, ahogyan az az alábbi példában látható.
A példa futtatásakor mindenképpen állítsa a paramétert -ResourceGroupName a forrásfiók erőforráscsoportjára, a paramétert -StorageAccountName pedig a forrásfiók nevére. Ne felejtse el a szögletes zárójelek értékeit és a fájl elérési útját a saját értékeire cserélni:
Ha a célfiók replikációs szabályzatdefinícióját egy JSON-fájlba szeretné írni az Azure CLI-ből, hívja meg az az storage account or-policy show parancsot és kimenetet egy fájlba.
Az alábbi példa egy policy.json nevű JSON-fájlba írja a szabályzatdefiníciót. Ne felejtse el lecserélni a szögletes zárójelek értékeit és a fájl elérési útját a saját értékeire:
az storage account or-policy show \
--account-name <dest-account-name> \
--policy-id <policy-id> > policy.json
Ha a JSON-fájl használatával szeretné konfigurálni a replikációs szabályzatot a forrásfiókon az Azure CLI-vel, hívja meg az az storage account or-policy create parancsot, és hivatkozzon a policy.json fájlra . Ne felejtse el lecserélni a szögletes zárójelek értékeit és a fájl elérési útját a saját értékeire:
A forrásfiókban lévő blobok replikációs állapotát az Azure Portal, a PowerShell vagy az Azure CLI használatával ellenőrizheti. Az objektumreplikációs tulajdonságok csak akkor lesznek feltöltve, ha a replikáció befejeződött vagy meghiúsult.
Ha ellenőrizni szeretné egy blob replikációs állapotát az Azure Portal forrásfiókjában, kövesse az alábbi lépéseket:
Lépjen a forrásfiókra az Azure Portalon.
Keresse meg a forrásblobot tartalmazó tárolót.
Válassza ki a blobot a tulajdonságainak megjelenítéséhez. Ha a blob replikálása sikeresen megtörtént, az Objektumreplikációs szakaszban láthatja, hogy az állapot Befejezve értékre van állítva. A tárolóhoz tartozó objektumreplikálást szabályozó szabály replikációs házirend-azonosítója és azonosítója is megjelenik.
Ha a PowerShell-lel szeretné ellenőrizni egy blob replikációs állapotát a forrásfiókban, kérje le az objektumreplikációs ReplicationStatus tulajdonság értékét, ahogyan az az alábbi példában látható. Ne felejtse el lecserélni a szögletes zárójelben lévő értékeket a saját értékeire:
Ha ellenőrizni szeretné egy blob replikációs állapotát a forrásfiókban az Azure CLI-vel, kérje le az objektumreplikációs állapot tulajdonság értékét az alábbi példában látható módon:
Ha a forrásfiókban lévő blob replikációs állapota hibát jelez, vizsgálja meg a következő lehetséges okokat:
Győződjön meg arról, hogy az objektumreplikációs szabályzat konfigurálva van a célfiókban.
Ellenőrizze, hogy a céltároló még létezik-e.
Ha a forrásblobot egy írási művelet részeként ügyfél által megadott kulccsal titkosították, az objektumreplikálás sikertelen lesz. Az ügyfél által megadott kulcsokkal kapcsolatos további információkért lásd : Titkosítási kulcs megadása a Blob Storage-nak küldött kéréshez.
Replikációs szabályzat eltávolítása
A replikációs szabályzat és a hozzá tartozó szabályok eltávolításához használja az Azure Portalt, a PowerShellt vagy a parancssori felületet.
Ha el szeretne távolítani egy replikációs szabályzatot az Azure Portalon, kövesse az alábbi lépéseket:
Lépjen a forrástárfiókra az Azure Portalon.
A Gépház területen válassza az Objektumreplikálás lehetőséget.
Válassza az Egyebek gombot a szabályzat neve mellett.
Válassza a Szabályok törlése lehetőséget.
Replikációs szabályzat eltávolításához törölje a házirendet a forrásfiókból és a célfiókból is. A szabályzat törlése a hozzá társított szabályokat is törli.
# 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
Replikációs szabályzat eltávolításához törölje a házirendet a forrásfiókból és a célfiókból is. A szabályzat törlése a hozzá társított szabályokat is törli.