Rychlý start: Nahrávání, stahování a výpis objektů blob pomocí PowerShellu

Pomocí modulu Azure PowerShell můžete vytvářet a spravovat prostředky Azure. Prostředky Azure můžete vytvářet nebo spravovat z příkazového řádku PowerShellu nebo ve skriptech. Tato příručka popisuje použití PowerShellu k přenosu souborů mezi místním diskem a úložištěm objektů blob v Azure.

Předpoklady

Pro přístup ke službě Azure Storage budete potřebovat předplatné Azure. Pokud ještě nemáte předplatné, vytvořte si bezplatný účet , než začnete.

Budete také potřebovat roli Přispěvatel dat v objektech blob služby Storage ke čtení, zápisu a odstraňování kontejnerů a objektů blob Služby Azure Storage.

Poznámka:

Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Tento rychlý start vyžaduje modul Azure PowerShell Az verze 0.7 nebo novější. Verzi zjistíte spuštěním příkazu Get-InstalledModule -Name Az -AllVersions | select Name,Version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace modulu Azure PowerShell.

Přihlášení k Azure

Přihlaste se ke svému předplatnému Azure pomocí příkazu Connect-AzAccount a postupujte podle pokynů na obrazovce.

Connect-AzAccount

Pokud nevíte, jaké umístění máte použít, můžete vypsat všechna dostupná umístění. Pomocí následujícího příkladu kódu zobrazte seznam umístění a vyhledejte umístění, které chcete použít. Tento příklad používá eastus. Uložte umístění do proměnné a používejte tuto proměnnou, abyste umístění mohli změnit na jednom místě.

Get-AzLocation | Select-Object -Property Location
$Location = 'eastus'

Vytvoření skupiny zdrojů

Vytvořte skupinu prostředků Azure pomocí rutiny New-AzResourceGroup. Skupina prostředků je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.

$ResourceGroup = 'MyResourceGroup'
New-AzResourceGroup -Name $ResourceGroup -Location $Location

Vytvoření účtu úložiště

Vytvořte standardní účet úložiště pro obecné účely s replikací LRS pomocí rutiny New-AzStorageAccount. Dále získejte kontext účtu úložiště definující účet úložiště, který chcete použít. Když používáte účet úložiště, namísto opakovaného předávání přihlašovacích údajů odkazujte na jeho kontext. Pomocí následujícího příkladu vytvořte účet úložiště mystorageaccount s místně redundantním úložištěm (LRS) a šifrováním objektů blob (které bude ve výchozím nastavení povolené).

$StorageHT = @{
  ResourceGroupName = $ResourceGroup
  Name              = 'mystorageaccount'
  SkuName           = 'Standard_LRS'
  Location          =  $Location
}
$StorageAccount = New-AzStorageAccount @StorageHT
$Context = $StorageAccount.Context

Vytvoření kontejneru

Objekty blob se vždy nahrávají do kontejneru. Skupiny objektů blob můžete organizovat podobně, jako organizujete soubory do složek na svém počítači.

Nastavte název kontejneru a pak vytvořte kontejner pomocí Rutiny New-AzStorageContainer. Název kontejneru v tomto příkladu je quickstartblobs.

$ContainerName = 'quickstartblobs'
New-AzStorageContainer -Name $ContainerName -Context $Context

Nahrání objektů blob do kontejneru

Úložiště objektů blob podporuje objekty blob bloku, doplňovací objekty blob a objekty blob stránky. Soubory VHD využívané virtuálními počítači IaaS jsou objekty blob stránky. Doplňovací objekty blob můžete použít k protokolování, například když chcete zapisovat do souboru a pak přidávat další informace. Většina souborů uložených v úložišti objektů blob je objekty blob bloku.

Pokud chcete nahrát soubor do objektu blob bloku, získejte odkaz na kontejner a pak získejte odkaz na objekt blob bloku v tomto kontejneru. Jakmile budete mít odkaz na objekt blob, můžete do něj nahrát data pomocí Set-AzStorageBlobContent. Tato operace vytvoří objekt blob, pokud ještě neexistuje, nebo objekt blob přepíše, pokud už existuje.

Následující příklady nahrají Image001.jpg a Image002.png ze složky D:\Images na místním disku do kontejneru, který jste vytvořili.

# upload a file to the default account (inferred) access tier
$Blob1HT = @{
  File             = 'D:\Images\Image001.jpg'
  Container        = $ContainerName
  Blob             = "Image001.jpg"
  Context          = $Context
  StandardBlobTier = 'Hot'
}
Set-AzStorageBlobContent @Blob1HT
  
 # upload another file to the Cool access tier
 $Blob2HT = @{
  File             = 'D:\Images\Image002.jpg'
  Container        = $ContainerName
  Blob             = 'Image002.png'
  Context          = $Context
  StandardBlobTier = 'Cool'
 }
 Set-AzStorageBlobContent @Blob2HT
  
# upload a file to a folder to the Archive access tier
$Blob3HT = @{
  File             = 'D:\Images\FolderName\Image003.jpg'
  Container        = $ContainerName
  Blob             = 'FolderName/Image003.jpg'
  Context          = $Context
  StandardBlobTier = 'Archive'
}
Set-AzStorageBlobContent @Blob3HT


Než budete pokračovat, můžete nahrát libovolné množství souborů.

Seznam objektů blob v kontejneru

Získejte seznam objektů blob v kontejneru pomocí rutiny Get-AzStorageBlob. Tento příklad zobrazí pouze názvy nahraných objektů blob.

Get-AzStorageBlob -Container $ContainerName -Context $Context |
  Select-Object -Property Name

Stáhnout objekty blob

Stáhněte objekty blob na svůj místní disk. Pro každý objekt blob, který chcete stáhnout, nastavte název a zavolejte Get-AzStorageBlobContent pro stažení objektu blob.

Tento příklad stáhne objekty blob do složky D:\Images\Downloads na místním disku.

# Download first blob
$DLBlob1HT = @{
  Blob        = 'Image001.jpg'
  Container   = $ContainerName
  Destination = 'D:\Images\Downloads\'
  Context     = $Context
}
Get-AzStorageBlobContent @DLBlob1HT

# Download another blob
$DLBlob2HT = @{
  Blob        = 'Image002.png'
  Container   = $ContainerName
  Destination = 'D:\Images\Downloads\'
  Context     = $Context  
}
Get-AzStorageBlobContent @DLBlob2HT

Přenos dat pomocí AzCopy

Nástroj příkazového řádku AzCopy nabízí vysoce výkonný a skriptovatelný přenos dat pro Azure Storage. AzCopy můžete použít k přenosu dat do a ze služby Blob Storage a ze služby Azure Files. Další informace o nástroji AzCopy v10, nejnovější verzi nástroje AzCopy, najdete v tématu Začínáme s nástrojem AzCopy. Další informace o používání nástroje AzCopy v10 s úložištěm objektů blob najdete v tématu Přenos dat pomocí nástroje AzCopy a úložiště objektů blob.

Následující příklad používá AzCopy k nahrání místního souboru do objektu blob. Nezapomeňte nahradit ukázkové hodnoty vlastními hodnotami:

azcopy login
azcopy copy 'D:\Images\Image001.jpg' "https://$StorageAccountName.blob.core.windows.net/$ContainerName/NewGaphic.jpg"

Vyčištění prostředků

Odeberte všechny prostředky, které jste vytvořili. Nejjednodušším způsobem, jak odebrat prostředky, je odstranit skupinu prostředků. Odebráním skupiny prostředků se odstraní také všechny prostředky, které tato skupina obsahuje. V následujícím příkladu se odebráním skupiny prostředků odebere účet úložiště a samotná skupiny prostředků.

Remove-AzResourceGroup -Name $ResourceGroup 

Další kroky

V tomto rychlém startu jste přenesli soubory mezi místním systémem souborů a službou Azure Blob Storage. Pokud chcete získat další informace o práci s úložištěm objektů blob pomocí PowerShellu, vyberte níže požadovanou možnost.

Rutiny Microsoft Azure PowerShellu pro úložiště – referenční informace

Microsoft Azure Storage Explorer

  • Microsoft Azure Storage Explorer je bezplatná samostatná aplikace od Microsoftu, která umožňuje vizuálně pracovat s daty Azure Storage ve Windows, macOS a Linuxu.