Mulai cepat: Membuat, menetapkan, dan menjalankan tugas penyimpanan dengan menggunakan PowerShell

Dalam panduan cepat ini, Anda akan mempelajari cara menggunakan Azure PowerShell untuk membuat proses penyimpanan dan menugaskannya ke akun Azure Storage. Kemudian, Anda akan meninjau hasil pelaksanaan. Tugas penyimpanan menerapkan kebijakan kekekalan berbasis waktu pada dokumen Microsoft Word apa pun yang ada di akun penyimpanan.

Prasyarat

  • Sebuah langganan Azure. Lihat membuat akun secara gratis.

  • Akun penyimpanan Azure. Lihat membuat akun penyimpanan. Saat Anda membuat akun, pastikan untuk mengaktifkan dukungan kekekalan tingkat versi dan Anda tidak mengaktifkan fitur namespace hierarkis.

    Selama publik, Anda hanya dapat menargetkan akun penyimpanan yang berada di wilayah yang sama dengan tugas penyimpanan.

  • Peran Pemilik Data Blob Penyimpanan ditetapkan ke identitas pengguna milik Anda dalam konteks akun penyimpanan atau grup sumber daya.

  • Peran khusus yang ditetapkan ke identitas pengguna Anda di dalam konteks grup sumber daya yang berisi tindakan RBAC yang dibutuhkan untuk menetapkan tugas ke akun penyimpanan data. Lihat Izin yang diperlukan untuk menetapkan tugas.

  • Terpasang .NET Framework versi 4.7.2 atau lebih tinggi. Untuk informasi selengkapnya, lihat Mengunduh .NET Framework.

  • Versi PowerShell 5.1 atau lebih tinggi.

Menginstal modul PowerShell

  1. Pastikan Anda telah menginstal PowerShellGet versi terbaru.

    Install-Module PowerShellGet -Repository PSGallery -Force
    
  2. Tutup lalu buka kembali konsol PowerShell.

  3. Instal versi 7.1.1-preview atau yang lebih baru dari modul Az.Storage PowerShell. Anda mungkin perlu menghapus instalasi versi modul PowerShell lainnya. Untuk informasi selengkapnya tentang instalasi PowerShell, lihat Instal Azure PowerShell di Windows dengan PowerShellGet.

    Install-Module Az.Storage -Repository PsGallery -RequiredVersion 7.1.1-preview -AllowClobber -AllowPrerelease -Force
    
  4. Instal modul Az.StorageAction .

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

    Untuk informasi selengkapnya tentang cara menginstal modul PowerShell, lihat Menginstal modul Azure PowerShell

Masuk ke akun Azure Anda

  1. Buka jendela perintah Windows PowerShell, lalu masuk ke akun Azure Anda dengan Connect-AzAccount perintah dan ikuti petunjuk di layar.

    Connect-AzAccount
    
  2. Jika identitas Anda dikaitkan dengan lebih dari satu langganan, dan Anda tidak diminta untuk memilih langganan, atur langganan aktif Anda ke langganan akun penyimpanan yang ingin Anda operasikan. Dalam contoh ini, gantilah nilai <subscription-id> dengan ID langganan Anda.

    Select-AzSubscription -SubscriptionId <subscription-id>
    

Membuat tugas penyimpanan

  1. Tentukan kondisi dengan menggunakan JSON. Kondisi adalah kumpulan satu atau beberapa klausa. Setiap klausa berisi properti, nilai, dan operator. Dalam JSON berikut, propertinya adalah Name, nilainya adalah .docx, dan operatornya adalah endsWith. Klausa ini hanya memungkinkan operasi pada dokumen Microsoft Word.

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

    Untuk daftar lengkap properti dan operator, lihat Kondisi tugas penyimpanan.

    Petunjuk / Saran

    Anda dapat menambahkan beberapa kondisi ke string yang sama dan memisahkannya dengan koma.

  2. Tentukan setiap operasi dengan menggunakan New-AzStorageActionTaskOperationObject perintah .

    Operasi berikut menetapkan kebijakan yang memastikan kekekalan.

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

    Operasi berikut mengatur tag indeks blob dalam metadata dokumen Word.

    $tagoperation = New-AzStorageActionTaskOperationObject -Name SetBlobTags `
    -Parameter @{"tagsetImmutabilityUpdatedBy"="StorageTaskQuickstart"} `
    -OnFailure break `
    -OnSuccess continue
    
  3. Buat tugas penyimpanan dengan menggunakan perintah New-AzStorageActionTask , dan masukkan kondisi dan operasi yang telah ditentukan. Contoh ini membuat tugas penyimpanan bernama mystoragetask dalam grup mystoragetaskresourcegroup sumber daya di wilayah US Barat.

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

Membuat penugasan

Penugasan tugas penyimpanan menentukan akun penyimpanan. Setelah Anda mengaktifkan tugas penyimpanan, kondisi dan operasi tugas Anda akan diterapkan ke akun penyimpanan tersebut. Penugasan juga berisi properti konfigurasi yang membantu Anda menargetkan blob tertentu, atau menentukan kapan dan seberapa sering tugas berjalan. Anda dapat menambahkan penugasan untuk setiap akun yang ingin Anda targetkan.

  1. Buat penetapan tugas penyimpanan dengan menggunakan New-AzStorageTaskAssignment perintah . Penugasan berikut menargetkan mycontainer kontainer akun bernama mystorageaccount. Penetapan ini menentukan bahwa tugas hanya akan berjalan satu kali, dan akan menyimpan laporan eksekusi ke folder bernama storage-tasks-report. Tugas dijadwalkan akan berjalan dalam 10 menit dari sekarang.

    $startTime = (Get-Date).AddMinutes(10)   
    
    New-AzStorageTaskAssignment `
    -ResourceGroupName mystoragetaskresourcegroup `
    -AccountName mystorageaccount `
    -name mystoragetaskAssignment `
    -TaskId $task.Id `
    -ReportPrefix "storage-tasks-report" `
    -TriggerType RunOnce `
    -StartOn $startTime.ToUniversalTime() `
    -Description "task assignment" `
    -Enabled:$true `
    -TargetPrefix "mycontainer/"
    
  2. Berikan izin tugas penyimpanan untuk melakukan operasi pada akun penyimpanan target. Tetapkan peran Storage Blob Data Owner ke identitas terkelola yang ditetapkan sistem dari tugas penyimpanan dengan perintah New-AzRoleAssignment.

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

Menampilkan hasil eksekusi tugas

Setelah tugas selesai berjalan, dapatkan ringkasan laporan eksekusi untuk setiap tugas dengan menggunakan Get-AzStorageActionTasksReport perintah .

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

Bidang SummaryReportPath dari setiap ringkasan laporan berisi jalur ke laporan terperinci. Laporan tersebut berisi daftar yang dipisahkan koma dari kontainer, blob, dan operasi yang dilakukan, bersama dengan status.

Membersihkan sumber daya

Hapus semua aset yang telah dibuat. Cara termudah untuk menghapus aset adalah dengan menghapus grup sumber daya. Menghapus grup sumber daya juga menghapus semua sumber daya yang disertakan dalam grup. Pada contoh berikut, menghapus grup sumber daya akan menghapus akun penyimpanan dan grup sumber daya itu sendiri.

Remove-AzResourceGroup -Name $ResourceGroup 

Langkah selanjutnya

Membuat tugas penyimpanan

Referensi cmdlet Microsoft Azure PowerShell untuk tindakan penyimpanan