Szinkronizálás az Azure Blob Storage használatával az AzCopy révén
A helyi tárolót az AzCopy v10 parancssori segédprogrammal szinkronizálhatja az Azure Blob Storage-tal.
A helyi fájlrendszer tartalmát szinkronizálhatja egy blobtárolóval. Tárolókat és virtuális könyvtárakat is szinkronizálhat egymással. A szinkronizálás az egyik módszer. Más szóval azt kell választania, hogy a két végpont közül melyik a forrás, és melyik a cél. A szinkronizálás kiszolgálói API-kat is használ. Az ebben a szakaszban bemutatott példák hierarchikus névtérrel rendelkező fiókokkal is működnek.
Megjegyzés:
Az AzCopy jelenlegi kiadása nem szinkronizál más források és célhelyek között (például: Fájltároló vagy Amazon Web Services (AWS) S3-gyűjtők).
Más típusú feladatokra, például fájlok feltöltésére, blobok letöltésére vagy blobok fiókok közötti másolására vonatkozó példákért tekintse meg a cikk Következő lépések szakaszában található hivatkozásokat.
Első lépések
Tekintse meg az AzCopy használatának első lépéseit ismertető cikket az AzCopy letöltéséhez, és ismerje meg, hogyan adhat meg hitelesítési hitelesítő adatokat a tárolási szolgáltatásnak.
Megjegyzés:
A cikkben szereplő példák feltételezik, hogy a Microsoft Entra ID használatával adta meg az engedélyezési hitelesítő adatokat.
Ha inkább SAS-jogkivonatot használ a blobadatokhoz való hozzáférés engedélyezéséhez, akkor ezt a jogkivonatot az egyes AzCopy-parancsok erőforrás-URL-címéhez fűzheti. For example: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'
.
Guidelines
Alapértelmezés szerint a szinkronizálási parancs összehasonlítja a fájlneveket és a legutóbb módosított időbélyegeket. Ezt a viselkedést felülbírálhatja úgy, hogy az utolsó módosított időbélyegek helyett MD5-kivonatokat használjon a --compare-hash
jelölő használatával. Állítsa az --delete-destination
opcionális jelzőt a célkönyvtárban lévő fájlok értékére true
vagy prompt
törlésére, ha ezek a fájlok már nem léteznek a forráskönyvtárban.
Ha a jelzőt úgy állítja be, hogy
true
az--delete-destination
AzCopy kérés nélkül törli a fájlokat. Ha azt szeretné, hogy egy üzenet jelenjen meg, mielőtt az AzCopy töröl egy fájlt, állítsa a jelölőt a--delete-destination
következőreprompt
: .Ha azt tervezi, hogy a jelölőt
prompt
false
--delete-destination
a szinkronizálási parancs helyett a másolási parancsot használja, és állítsa a paramétert a--overwrite
következőreifSourceNewer
: . A másolási parancs kevesebb memóriát használ fel, és kevesebb számlázási költséget eredményez, mivel a másolási műveletnek nem kell indexelnie a forrást vagy a célhelyet a fájlok áthelyezése előtt.Ha nem tervezi használni a
--compare-hash
jelölőt, akkor a szinkronizálási parancsot futtató gépnek pontos rendszerórával kell rendelkeznie, mivel az utolsó módosítási időpontok kritikus fontosságúak annak meghatározásához, hogy át kell-e vinni egy fájlt. Ha a rendszer óraátállítása jelentős, ne módosítsa a fájlokat a célhelyen túl közel ahhoz az időponthoz, amikor szinkronizálási parancsot szeretne futtatni.Az AzCopy kiszolgálóról kiszolgálóra történő API-kat használ az adatok tárfiókok közötti szinkronizálására. Ez azt jelenti, hogy az adatok másolása közvetlenül a tárolókiszolgálók között történik. Az AzCopy azonban beállítja és figyeli az egyes átviteleket, és nagyobb tárfiókok (például több millió blobot tartalmazó fiókok) esetében az AzCopy jelentős mennyiségű számítási erőforrást igényelhet ezeknek a feladatoknak a elvégzéséhez. Ezért ha az AzCopyt virtuális gépről (VM) futtatja, győződjön meg arról, hogy a virtuális gép elegendő maggal/memóriával rendelkezik a terhelés kezeléséhez.
- A véletlen törlés megakadályozása érdekében a jelölő használata előtt mindenképpen engedélyezze a
--delete-destination=prompt|true
helyreállítható törlés funkciót.
Tároló frissítése helyi fájlrendszer módosításaival
Ebben az esetben a cél a tároló, a forrás pedig a helyi fájlrendszer.
Tipp.
Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.
Szintaxis
azcopy sync '<local-directory-path>' 'https://<storage-account-name>.blob.core.windows.net/<container-name>' --recursive
Example
azcopy sync 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive
Helyi fájlrendszer frissítése egy tároló módosításaival
Ebben az esetben a helyi fájlrendszer a cél, a tároló pedig a forrás.
Tipp.
Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.
Szintaxis
azcopy sync 'https://<storage-account-name>.blob.core.windows.net/<container-name>' 'C:\myDirectory' --recursive
Example
azcopy sync 'https://mystorageaccount.blob.core.windows.net/mycontainer' 'C:\myDirectory' --recursive
Tároló frissítése egy másik tároló módosításaival
A parancsban megjelenő első tároló a forrás. A második a cél.
Ha hitelesítő adatokat ad meg a Microsoft Entra-azonosítóval, győződjön meg arról, hogy beállította a megfelelő szerepköröket a forrás- és célfiókban. Lásd: 1. lehetőség: A Microsoft Entra-azonosító használata.
Tipp.
Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.
Szintaxis
azcopy sync 'https://<source-storage-account-name>.blob.core.windows.net/<container-name>/<SAS-token>' 'https://<destination-storage-account-name>.blob.core.windows.net/<container-name>' --recursive
Example
azcopy sync 'https://mysourceaccount.blob.core.windows.net/mycontainer?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-07-04T05:30:08Z&st=2019-07-03T21:30:08Z&spr=https&sig=CAfhgnc9gdGktvB=ska7bAiqIddM845yiyFwdMH481QA8%3D' 'https://mydestinationaccount.blob.core.windows.net/mycontainer' --recursive
Címtár frissítése egy másik tárolóban lévő címtár módosításaival
A parancsban megjelenő első könyvtár a forrás. A második a cél.
Ha hitelesítő adatokat ad meg a Microsoft Entra-azonosítóval, győződjön meg arról, hogy beállította a megfelelő szerepköröket a forrás- és célfiókban. Lásd: 1. lehetőség: A Microsoft Entra-azonosító használata.
Tipp.
Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.
Szintaxis
azcopy sync 'https://<source-storage-account-name>.blob.core.windows.net/<container-name>/<directory-name>/<SAS-token>' 'https://<destination-storage-account-name>.blob.core.windows.net/<container-name>/<directory-name>' --recursive
Example
azcopy sync 'https://mysourceaccount.blob.core.windows.net/<container-name>/myDirectory?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-07-04T05:30:08Z&st=2019-07-03T21:30:08Z&spr=https&sig=CAfhgnc9gdGktvB=ska7bAiqIddM845yiyFwdMH481QA8%3D' 'https://mydestinationaccount.blob.core.windows.net/mycontainer/myDirectory' --recursive
Szinkronizálás választható jelzőkkel
A szinkronizálási műveletet tetszés szerinti jelölőkkel módosíthatja. Íme néhány példa.
Eset | Jelölő |
---|---|
Adja meg, hogy a letöltéskor milyen szigorúan érvényesíteni kell az MD5-kivonatokat. | --check-md5=[NoCheck|Bejelentkezés|FailIfDifferent|FailIfDifferentOrMissing] |
Fájlok kizárása minta alapján. | --exclude-path |
Adja meg, hogy a szinkronizálással kapcsolatos naplóbejegyzések milyen részletesek legyenek. | --log-level=[FIGYELMEZTETÉS|HIBA|INFO|NINCS] |
A jelölők teljes listáját a beállítások között találja.
Megjegyzés:
A --recursive
jelölő alapértelmezés szerint be true
van állítva. Az --exclude-pattern
és --include-pattern
a jelzők csak a fájlnevekre vonatkoznak, a fájl elérési útjának más részeire nem.
Következő lépések
További példákat az alábbi cikkekben talál:
- Példák: Feltöltés
- Példák: Letöltés
- Példák: Másolás fiókok között
- Példák: Amazon S3-gyűjtők
- Példák: Google Cloud Storage
- Példák: Azure Files
- Oktatóanyag: Helyszíni adatok migrálása felhőbeli tárolóba az AzCopy használatával
A beállítások konfigurálásához, a teljesítmény optimalizálásához és a problémák elhárításához tekintse meg ezeket a cikkeket: