Rozpoczęcie pracy: tworzenie, przypisywanie oraz uruchamianie zadania dotyczącego przechowywania danych za pomocą programu PowerShell

W tym przewodniku Szybki start nauczysz się, jak użyć Azure PowerShell do stworzenia zadania magazynu, przypisać je do konta Azure Storage do wykonania oraz przejrzeć wyniki uruchomienia. Ten przykład stosuje politykę niezmienności opartą na czasie do wszystkich dokumentów Microsoft Word znajdujących się w koncie pamięci.

Wymagania wstępne

  • Subskrypcja platformy Azure. Zobacz Tworzenie konta bezpłatnie.

  • Konto usługi Azure Storage. Zobacz Tworzenie konta magazynu. Ten przykład wymaga również wsparcia dla niezmienności na poziomie wersji, aby ustawić politykę niezmienności dla blobów.

    Obecnie możesz przypisywać zadania tylko do działania na kontach pamięci masowej w tym samym regionie co zadania magazynu.

  • Rola Właściciel danych obiektu blob usługi Storage jest przypisywana do tożsamości użytkownika w kontekście konta magazynu lub grupy zasobów.

  • Niestandardowa rola przypisana do tożsamości użytkownika w kontekście grupy zasobów zawierająca akcje RBAC, które są niezbędne do przypisania zadania do konta magazynowego. Zobacz Uprawnienia wymagane do przypisania zadania.

  • Program .NET Framework jest zainstalowany w wersji 4.7.2 lub nowszej. Aby uzyskać więcej informacji, zobacz Pobieranie programu .NET Framework.

  • Wersja programu PowerShell lub nowsza 5.1 .

Zainstaluj moduł programu PowerShell

  1. Upewnij się, że masz zainstalowaną najnowszą wersję PowerShellGet.

    Install-Module PowerShellGet -Repository PSGallery -Force
    
  2. Zamknij, a następnie otwórz ponownie konsolę programu PowerShell.

  3. Zainstaluj wersję 7.1.1-preview lub nowsząmodułu Az.Storage PowerShell. Może być konieczne odinstalowanie innych wersji modułu programu PowerShell. Aby uzyskać więcej informacji na temat instalowania programu Azure PowerShell, zobacz Instalowanie programu Azure PowerShell przy użyciu modułu PowerShellGet.

    Install-Module Az.Storage -Repository PsGallery -RequiredVersion 7.1.1-preview -AllowClobber -AllowPrerelease -Force
    
  4. Zainstaluj moduł Az.StorageAction .

    Install-Module -Name Az.StorageAction -Repository PSGallery -Force 
    

    Aby uzyskać więcej informacji na temat sposobu instalowania modułów programu PowerShell, zobacz Instalowanie modułu programu Azure PowerShell

Zaloguj się do swojego konta platformy Azure

  1. Otwórz okno polecenia programu Windows PowerShell, a następnie zaloguj się do konta platformy Azure za Connect-AzAccount pomocą polecenia i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.

    Connect-AzAccount
    
  2. Jeśli Twoja tożsamość jest powiązana z więcej niż jedną subskrypcją, a PowerShell nie prosi o wybór subskrypcji, ustaw aktywną subskrypcję na subskrypcję konta magazynowego, którego chcesz używać. W tym przykładzie zamień symbol zastępczy <subscription-id> na identyfikator swojej subskrypcji.

    Select-AzSubscription -SubscriptionId <subscription-id>
    

Utwórz zadanie magazynu

  1. Zdefiniuj warunek przy użyciu formatu JSON. Warunek to predykat logiczny, który składa się z jednej lub większej liczby klauzul. Każda klauzula zawiera właściwość, wartość i operator. W poniższym kodzie JSON właściwość to Name, wartość to .docx, a operator to endsWith. Ta klauzula umożliwia wykonywanie operacji tylko w dokumentach programu Microsoft Word.

    $conditions = "[[endsWith(Name, '.docx')]]"
    

    Aby uzyskać pełną listę właściwości i operatorów, zobacz Warunki zadania przechowywania.

    Wskazówka

    Możesz dodać wiele warunków do tego samego ciągu i oddzielić je przecinkami.

  2. Zdefiniuj każdą operację za pomocą polecenia New-AzStorageActionTaskOperationObject.

    Poniższa operacja tworzy operację, która ustawia zasady niezmienności.

    $policyoperation = New-AzStorageActionTaskOperationObject `
    -Name SetBlobImmutabilityPolicy `
    -Parameter @{"untilDate" = (Get-Date).AddDays(1); "mode" = "locked"} `
    -OnFailure break `
    -OnSuccess continue
    
    

    Poniższa operacja ustawia tag indeksu obiektów blob w metadanych dokumentu programu Word.

    $tagoperation = New-AzStorageActionTaskOperationObject -Name SetBlobTags `
    -Parameter @{"tagsetImmutabilityUpdatedBy"="StorageTaskQuickstart"} `
    -OnFailure break `
    -OnSuccess continue
    
  3. Utwórz zadanie magazynowania przy użyciu polecenia New-AzStorageActionTask, i przekaż wcześniej zdefiniowane warunki oraz operacje. W tym przykładzie jest tworzone zadanie magazynu o nazwie mystoragetask w grupie zasobów quickstartresourcegroup w regionie Zachodniego USA.

    $task = New-AzStorageActionTask `
    -Name mystoragetask `
    -ResourceGroupName quickstartresourcegroup `
    -Location westus `
    -Enabled `
    -Description 'my powershell storage task' `
    -IfCondition $conditions `
    -IfOperation $policyoperation,$tagoperation `
    -EnableSystemAssignedIdentity:$true
    

Utwórz zadanie

Przypisanie zadania pamięci masowej określa konto magazynu, na którym wykonywane jest zadanie. Zawiera ustawienia konfiguracyjne wykonywania, które pomagają celować w konkretne bloby oraz określają, kiedy i jak często wykonywane jest zadanie. Musisz dodać przypisania zadania dla każdego konta magazynu, na którym chcesz, aby zadanie działało.

  1. Utwórz przypisanie zadania magazynu, używając polecenia New-AzStorageTaskAssignment. Następujące przypisanie jest przeznaczone dla mycontainer kontenera konta o nazwie mystorageaccount. To zadanie określa, że zadanie wykonuje się tylko raz i zapisuje raport wykonania do kontenera storage-tasks-reportblob . Zadanie jest zaplanowane do uruchomienia 10 minut od chwili obecnej.

    $startTime = (Get-Date).AddMinutes(10)   
    
    New-AzStorageTaskAssignment `
    -ResourceGroupName quickstartresourcegroup `
    -AccountName mystorageaccount `
    -name mystoragetaskAssignment `
    -TaskId $task.Id `
    -ReportPrefix "storage-tasks-report" `
    -TriggerType RunOnce `
    -StartOn $startTime.ToUniversalTime() `
    -Description "task assignment" `
    -Enabled:$true `
    -TargetPrefix "mycontainer/"
    
  2. Nadaj zadaniu przechowywania uprawnienie do wykonywania operacji na docelowym koncie przechowywania. Przypisz rolę Storage Blob Data Owner do systemowo przypisanej tożsamości zarządzanej zadania magazynu, używając polecenia New-AzRoleAssignment.

    New-AzRoleAssignment `
    -ResourceGroupName quickstartresourcegroup `
    -ResourceName mystorageaccount `
    -ResourceType "Microsoft.Storage/storageAccounts" `
    -ObjectId $task.IdentityPrincipalId  `
    -RoleDefinitionName "Storage Blob Data Owner"
    

Wyświetlanie wyników przebiegu zadania

Po zakończeniu działania zadania uzyskaj podsumowanie raportu uruchomienia dla każdego przypisania za pomocą polecenia Get-AzStorageActionTasksReport.

Get-AzStorageActionTasksReport `
-ResourceGroupName quickstartresourcegroup `
-StorageTaskName mystoragetask | Format-List

Pole SummaryReportPath każdego podsumowania raportu zawiera ścieżkę do szczegółowego raportu z realizacji. Raport wykorzystuje format CSV i rejestruje każdy przetworzony obiekt, w tym kontener blob, nazwę blob, wykonaną operację oraz wynik operacji.

Uprzątnij zasoby

Usuń wszystkie stworzone zasoby. W tym przewodniku Szybki start utworzyłeś konto magazynu oraz zadanie magazynu w tej samej grupie zasobów. Usunięcie tej grupy zasobów usuwa wszystkie te zasoby.

Remove-AzResourceGroup -Name $ResourceGroup 

Dalsze kroki

Utwórz zadanie magazynowe

Odnośnik dokumentacji poleceń cmdlet dotyczących akcji magazynu programu Microsoft Azure PowerShell