Samouczek: migrowanie danych lokalnych do magazynu w chmurze za pomocą narzędzia AzCopy

Narzędzie AzCopy to narzędzie wiersza polecenia służące do kopiowania danych do lub z magazynu Azure Blob Storage, Azure Files lub Azure Table przy użyciu prostych poleceń. Polecenia te zostały zaprojektowane w celu uzyskania optymalnej wydajności. Za pomocą narzędzia AzCopy można kopiować dane między systemem plików i kontem magazynu lub między kontami magazynu. Narzędzia AzCopy można użyć do skopiowania danych lokalnych do konta magazynu.

Z tego samouczka dowiesz się, jak wykonywać następujące czynności:

  • Create a storage account (Tworzenie konta magazynu).
  • Używanie narzędzia AzCopy do przekazania wszystkich danych
  • Modyfikowanie danych do celów testowych
  • Tworzenie zaplanowanego zadania lub usługi cron do identyfikowania nowych plików do przekazania

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Wymagania wstępne

Aby ukończyć ten samouczek, pobierz najnowszą wersję narzędzia AzCopy. Zobacz Wprowadzenie do narzędzia AzCopy.

W systemie Windows konieczne będzie użycie polecenia Schtasks, ponieważ w tym samouczku jest ono używane w celu zaplanowania zadania. Użytkownicy systemu Linux zamiast tego użyją polecenia crontab.

Aby utworzyć konto magazynu ogólnego przeznaczenia w wersji 2 w witrynie Azure Portal, wykonaj następujące kroki:

  1. W obszarze Usługi platformy Azure wybierz pozycję Konta magazynu.
  2. Na stronie Konta magazynu wybierz pozycję + Utwórz.
  3. W bloku Podstawy wybierz subskrypcję, w której chcesz utworzyć konto magazynu.
  4. W polu Grupa zasobów wybierz odpowiednią grupę zasobów lub utwórz nową grupę zasobów. Aby uzyskać więcej informacji na temat grup zasobów platformy Azure, zobacz Omówienie usługi Azure Resource Manager.
  5. Następnie wprowadź nazwę konta magazynu. Wybrana nazwa musi być unikatowa w obrębie całej platformy Azure. Nazwa musi również mieć długość od 3 do 24 znaków i może zawierać tylko cyfry i małe litery.
  6. Wybierz region dla konta magazynu lub użyj regionu domyślnego.
  7. Wybierz warstwę wydajności. Domyślna warstwa to Standardowa.
  8. Określ sposób replikacji konta magazynu. Domyślną opcją nadmiarowości jest magazyn geograficznie nadmiarowy (GRS). Aby uzyskać więcej informacji na temat dostępnych opcji replikacji, zobacz Nadmiarowość usługi Azure Storage.
  9. Dodatkowe opcje są dostępne w blokach Zaawansowane, Sieciowe, Ochrona danych i Tagi . Aby użyć usługi Azure Data Lake Storage, wybierz blok Zaawansowane , a następnie ustaw hierarchiczną przestrzeń nazw na Wartość Włączone. Aby uzyskać więcej informacji, zobacz Wprowadzenie do usługi Azure Data Lake Storage Gen2.
  10. Wybierz pozycję Przejrzyj i utwórz, aby przejrzeć ustawienia konta magazynu i utworzyć konto.
  11. Wybierz pozycję Utwórz.

Na poniższej ilustracji przedstawiono ustawienia w bloku Podstawowe dla nowego konta magazynu:

Screenshot showing how to create a storage account in the Azure portal.

Tworzenie kontenera

Pierwszym krokiem jest utworzenie kontenera, ponieważ obiekty blob należy zawsze przekazywać do kontenera. Kontenery są używane jako sposób organizowania grup obiektów blob w taki sposób, jak pliki w folderach na komputerze.

Wykonaj następujące kroki, aby utworzyć kontener:

  1. Wybierz przycisk Konta magazynu ze strony głównej, a następnie wybierz utworzone konto magazynu.

  2. Wybierz pozycję Obiekty blob w obszarze Usługi, a następnie wybierz pozycję Kontener.

    Screenshot showing container creation

Nazwy kontenerów muszą zaczynać się literą lub cyfrą. Mogą one zawierać tylko litery, cyfry i znaki łącznika (-). Aby uzyskać dodatkowe informacje o regułach nazewnictwa kontenerów i obiektów blob, zobacz temat Naming and Referencing Containers, Blobs, and Metadata (Nazewnictwo i odwoływanie się do kontenerów, obiektów blob i metadanych).

Pobieranie narzędzia AzCopy

Pobierz plik wykonywalny narzędzia AzCopy w wersji 10.

Umieść plik AzCopy w dowolnym miejscu na komputerze. Dodaj lokalizację pliku do zmiennej ścieżki systemowej, aby można było odwoływać się do tego pliku wykonywalnego z dowolnego folderu na komputerze.

Uwierzytelnianie przy użyciu usługi Microsoft Entra ID

Najpierw przypisz rolę Współautor danych obiektu blob usługi Storage do swojej tożsamości. Zobacz Przypisywanie roli platformy Azure w celu uzyskania dostępu do danych obiektów blob.

Następnie otwórz wiersz polecenia, wpisz następujące polecenie i naciśnij klawisz ENTER.

azcopy login

To polecenie zwraca kod uwierzytelniania i adres URL witryny internetowej. Otwórz witrynę internetową, podaj kod, a następnie wybierz przycisk Dalej .

Screenshot showing the login prompt

Zostanie wyświetlone okno logowania. W tym oknie zaloguj się do konta platformy Azure przy użyciu poświadczeń konta platformy Azure. Po pomyślnym zalogowaniu można zamknąć okno przeglądarki i rozpocząć korzystanie z narzędzia AzCopy.

Przekazywanie zawartości folderu do magazynu obiektów blob

Za pomocą narzędzia AzCopy możesz przekazać wszystkie pliki w folderze do magazynu obiektów blob w systemie Windows lub Linux. Aby przekazać wszystkie obiekty blob w folderze, wprowadź następujące polecenie narzędzia AzCopy:

azcopy copy "<local-folder-path>" "https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>" --recursive=true
  • <local-folder-path> Zastąp symbol zastępczy ścieżką do folderu zawierającego pliki (na przykład: C:\myFolder lub /mnt/myFolder).

  • Zastąp symbol zastępczy <storage-account-name> nazwą konta magazynu.

  • Zastąp <container-name> symbol zastępczy nazwą utworzonego kontenera.

Aby przekazać zawartość określonego katalogu do usługi Blob Storage rekursywnie, określ --recursive opcję . Po uruchomieniu narzędzia AzCopy z tą opcją wszystkie podfoldery i ich pliki również zostaną przekazane.

Przekazywanie zmodyfikowanych plików do magazynu obiektów blob

Narzędzia AzCopy można użyć do przekazania plików na podstawie daty ich ostatniej modyfikacji.

Aby z tego skorzystać, zmodyfikuj pliki lub utwórz nowe pliki w katalogu źródłowym do celów testowych. Następnie użyj polecenia AzCopy sync .

azcopy sync "<local-folder-path>" "https://<storage-account-name>.blob.core.windows.net/<container-name>" --recursive=true
  • <local-folder-path> Zastąp symbol zastępczy ścieżką do folderu zawierającego pliki (na przykład: C:\myFolder lub /mnt/myFolder.

  • Zastąp symbol zastępczy <storage-account-name> nazwą konta magazynu.

  • Zastąp <container-name> symbol zastępczy nazwą utworzonego kontenera.

Aby dowiedzieć się więcej o poleceniu sync , zobacz Synchronizowanie plików.

Tworzenie zaplanowanego zadania

Możliwe jest utworzenie zaplanowanego zadania lub zadania cron służącego do uruchamiania skryptu polecenia narzędzia AzCopy. Skrypt identyfikuje i przekazuje nowe dane lokalne do magazynu w chmurze zgodnie z określonym interwałem.

Skopiuj polecenia narzędzia AzCopy do edytora tekstu. Zaktualizuj wartości parametrów polecenia narzędzia AzCopy na odpowiednie wartości. Zapisz plik jako script.sh (system Linux) lub script.bat (system Windows) na potrzeby narzędzia AzCopy.

W tych przykładach założono, że folder ma nazwę myFolder, nazwa konta magazynu to mystorageaccount , a nazwa kontenera to mycontainer.

Uwaga

Przykład systemu Linux dołącza token SAS. Musisz podać jeden w poleceniu. Bieżąca wersja narzędzia AzCopy v10 nie obsługuje autoryzacji entra firmy Microsoft w zadaniach cron.

azcopy sync "/mnt/myfiles" "https://mystorageaccount.blob.core.windows.net/mycontainer?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-05-30T06:57:40Z&st=2019-05-29T22:57:40Z&spr=https&sig=BXHippZxxx54hQn/4tBY%2BE2JHGCTRv52445rtoyqgFBUo%3D" --recursive=true

W tym samouczku polecenie Schtasks jest używane do utworzenia zaplanowanego zadania w systemie Windows. Polecenie Crontab służy do tworzenia zadania cron w systemie Linux.

Polecenie Schtasks umożliwia administratorowi tworzenie, usuwanie, zmienianie, uruchamianie i kończenie zaplanowanych zadań oraz wykonywanie względem nich zapytań na komputerze lokalnym lub zdalnym. Zadanie cron umożliwia użytkownikom systemów Linux i Unix uruchamianie poleceń lub skryptów w określonym dniu i godzinie za pomocą wyrażeń cron.

Aby utworzyć zadanie cron w systemie Linux, wprowadź następujące polecenie z poziomu terminalu:

crontab -e
*/5 * * * * sh /path/to/script.sh

Określenie wyrażenia cron */5 * * * * w poleceniu wskazuje, że skrypt powłoki script.sh powinien być uruchamiany co pięć minut. Możesz zaplanować uruchamianie skryptu codziennie, co miesiąc lub co rok o określonej godzinie. Aby dowiedzieć się więcej na temat ustawiania daty i godziny wykonywania zadań, zobacz wyrażenia cron.

Aby sprawdzić, czy zaplanowane zadanie lub zadanie cron jest działa poprawnie, utwórz nowe pliki w katalogu myFolder. Poczekaj pięć minut, aby sprawdzić, czy nowe pliki zostały przekazane do konta magazynu. Przejdź do katalogu dzienników, aby wyświetlić dzienniki danych wyjściowych zaplanowanego zadania lub zadania cron.

Następne kroki

Aby dowiedzieć się więcej o sposobach przenoszenia danych lokalnych do usługi Azure Storage i na odwrót, kliknij następujący link:

Aby uzyskać więcej informacji na temat narzędzia AzCopy, zobacz dowolny z następujących artykułów: