Synchronizace se službou Azure Blob Storage s využitím nástroje AzCopy
Místní úložiště můžete synchronizovat se službou Azure Blob Storage pomocí nástroje příkazového řádku AzCopy v10.
Obsah místního systému souborů můžete synchronizovat s kontejnerem objektů blob. Mezi sebou můžete také synchronizovat kontejnery a virtuální adresáře. Synchronizace je jedním ze způsobů. Jinými slovy, zvolíte, který z těchto dvou koncových bodů je zdrojem a který z nich je cílem. Synchronizace také používá server na serverová rozhraní API. Příklady uvedené v této části také pracují s účty, které mají hierarchický obor názvů.
Poznámka:
Aktuální verze AzCopy se nesynchronizuje mezi jinými zdroji a cíli (například úložiště souborů nebo kontejnery AWS (Amazon Web Services) S3).
Příklady pro jiné typy úloh, jako je nahrávání souborů, stahování objektů blob nebo kopírování objektů blob mezi účty, najdete v odkazech uvedených v části Další kroky tohoto článku.
Začínáme
Přečtěte si článek Začínáme s nástrojem AzCopy a stáhněte si AzCopy a seznamte se s způsoby, jak službě úložiště poskytnout přihlašovací údaje pro autorizaci.
Poznámka:
V příkladech v tomto článku se předpokládá, že jste pomocí ID Microsoft Entra zadali přihlašovací údaje pro autorizaci.
Pokud byste raději k autorizaci přístupu k datům objektů blob použili token SAS, můžete tento token připojit k adrese URL prostředku v každém příkazu AzCopy. Příklad: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'
.
Pokyny
Ve výchozím nastavení synchronizační příkaz porovnává názvy souborů a časová razítka poslední změny. Toto chování můžete přepsat tak, aby místo časového razítka poslední změny používalo hodnoty hash MD5.--compare-hash
--delete-destination
Pokud tyto soubory ve zdrojovém adresáři již neexistují, nastavte volitelný příznak na hodnotu true
nebo prompt
odstraňte soubory v cílovém adresáři.
Pokud nastavíte
--delete-destination
příznak natrue
, AzCopy odstraní soubory bez zadání výzvy. Pokud chcete, aby se zobrazila výzva před odstraněním souboru nástrojem AzCopy, nastavte--delete-destination
příznak naprompt
.Pokud plánujete nastavit
--delete-destination
příznak na nebofalse
, zvažte použití příkazu copy místo příkazu sync a nastavte--overwrite
parametr naifSourceNewer
prompt
. Příkaz pro kopírování spotřebovává méně paměti a účtuje méně nákladů na fakturaci, protože operace kopírování nemusí před přesunem souborů indexovat zdroj ani cíl.Pokud nechcete příznak používat
--compare-hash
, měl by mít počítač, na kterém spouštíte příkaz synchronizace, přesný systémový čas, protože časy poslední změny jsou důležité při určování, jestli se má soubor přenést. Pokud má váš systém značnou nerovnoměrnou distribuci hodin, vyhněte se úpravám souborů v cíli příliš blízko času, kdy plánujete spustit příkaz synchronizace.AzCopy používá rozhraní API mezi servery k synchronizaci dat mezi účty úložiště. To znamená, že data se kopírují přímo mezi servery úložiště. AzCopy ale nastavuje a monitoruje každý přenos a pro větší účty úložiště (například účty, které obsahují miliony objektů blob), AzCopy může k provedení těchto úloh vyžadovat značné množství výpočetních prostředků. Proto pokud používáte AzCopy z virtuálního počítače, ujistěte se, že má virtuální počítač dostatek jader a paměti pro zpracování zatížení.
- Abyste zabránili náhodnému odstranění, nezapomeňte před použitím příznaku povolit funkci obnovitelného
--delete-destination=prompt|true
odstranění.
Aktualizace kontejneru pomocí změn v místním systému souborů
V tomto případě je cílem kontejner a zdrojem je místní systém souborů.
Tip
Tento příklad uzavře argumenty cesty do jednoduchých uvozovek ('' ). Použití jednoduchých uvozovek ve všech příkazových prostředích s výjimkou prostředí Windows Command Shell (cmd.exe). Pokud používáte prostředí Windows Command Shell (cmd.exe), uzavřete argumenty cesty s dvojitými uvozovkami ("") místo jednoduchých uvozovek ('' ).
Syntaxe
azcopy sync '<local-directory-path>' 'https://<storage-account-name>.blob.core.windows.net/<container-name>' --recursive
Příklad
azcopy sync 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive
Aktualizace místního systému souborů s použitím změn kontejneru
V tomto případě je místní systém souborů cílem a kontejner je zdrojem.
Tip
Tento příklad uzavře argumenty cesty do jednoduchých uvozovek ('' ). Použití jednoduchých uvozovek ve všech příkazových prostředích s výjimkou prostředí Windows Command Shell (cmd.exe). Pokud používáte prostředí Windows Command Shell (cmd.exe), uzavřete argumenty cesty s dvojitými uvozovkami ("") místo jednoduchých uvozovek ('' ).
Syntaxe
azcopy sync 'https://<storage-account-name>.blob.core.windows.net/<container-name>' 'C:\myDirectory' --recursive
Příklad
azcopy sync 'https://mystorageaccount.blob.core.windows.net/mycontainer' 'C:\myDirectory' --recursive
Aktualizace kontejneru pomocí změn v jiném kontejneru
Prvním kontejnerem, který se zobrazí v tomto příkazu, je zdroj. Druhým je cíl.
Pokud zadáte přihlašovací údaje pro autorizaci pomocí ID Microsoft Entra, ujistěte se, že jste ve zdrojovém a cílovém účtu nastavili správné role. Viz možnost 1: Použijte ID Microsoft Entra.
Tip
Tento příklad uzavře argumenty cesty do jednoduchých uvozovek ('' ). Použití jednoduchých uvozovek ve všech příkazových prostředích s výjimkou prostředí Windows Command Shell (cmd.exe). Pokud používáte prostředí Windows Command Shell (cmd.exe), uzavřete argumenty cesty s dvojitými uvozovkami ("") místo jednoduchých uvozovek ('' ).
Syntaxe
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
Příklad
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
Aktualizace adresáře se změnami adresáře v jiném kontejneru
Prvním adresářem, který se zobrazí v tomto příkazu, je zdroj. Druhým je cíl.
Pokud zadáte přihlašovací údaje pro autorizaci pomocí ID Microsoft Entra, ujistěte se, že jste ve zdrojovém a cílovém účtu nastavili správné role. Viz možnost 1: Použijte ID Microsoft Entra.
Tip
Tento příklad uzavře argumenty cesty do jednoduchých uvozovek ('' ). Použití jednoduchých uvozovek ve všech příkazových prostředích s výjimkou prostředí Windows Command Shell (cmd.exe). Pokud používáte prostředí Windows Command Shell (cmd.exe), uzavřete argumenty cesty s dvojitými uvozovkami ("") místo jednoduchých uvozovek ('' ).
Syntaxe
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
Příklad
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
Synchronizace s volitelnými příznaky
Operaci synchronizace můžete upravit pomocí volitelných příznaků. Tady je několik příkladů.
Scénář | Příznak |
---|---|
Určete, jak se mají při stahování ověřit výhradně hodnoty hash MD5. | --check-md5=[NoCheck|LogOnly|FailIfDifferent|FailIfDifferentOrMissing] |
Vylučte soubory na základě vzoru. | --exclude-path |
Zadejte, jak podrobně chcete mít položky protokolu související se synchronizací. | --log-level=[UPOZORNĚNÍ|CHYBA|INFORMACE|NONE] |
Úplný seznam příznaků najdete v možnostech.
Poznámka:
Příznak --recursive
je ve výchozím nastavení nastavený true
. Příznaky --exclude-pattern
se --include-pattern
vztahují pouze na názvy souborů a ne na jiné části cesty k souboru.
Další kroky
Další příklady najdete v těchto článcích:
- Příklady: Nahrání
- Příklady: Stažení
- Příklady: Kopírování mezi účty
- Příklady: Kontejnery Amazon S3
- Příklady: Google Cloud Storage
- Příklady: Soubory Azure
- Kurz: Migrace místních dat do cloudového úložiště pomocí AzCopy
Informace o konfiguraci nastavení, optimalizaci výkonu a řešení potíží najdete v těchto článcích: