Quickstart: Blobs uploaden, downloaden en vermelden met PowerShell

Gebruik de Azure PowerShell-module om Azure-resources te maken en beheren. U kunt Azure-resources maken of beheren vanaf de PowerShell-opdrachtregel of in scripts. In deze handleiding wordt beschreven hoe PowerShell kan worden gebruikt om bestanden over te dragen tussen de lokale schijf en Azure Blob Storage.

Vereisten

U hebt een Azure-abonnement nodig voor toegang tot Azure Storage. Als u nog geen abonnement hebt, maakt u een gratis account voordat u begint.

U hebt ook de rol Inzender voor opslagblobgegevens nodig om Azure Storage-containers en -blobs te lezen, schrijven en verwijderen.

Notitie

Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Voor deze snelstart is Az-versie 0.7 of hoger van de Azure PowerShell-module vereist. Voer Get-InstalledModule -Name Az -AllVersions | select Name,Version uit om de versie te bekijken. Als u PowerShell wilt installeren of upgraden, raadpleegt u De Azure PowerShell-module installeren.

Aanmelden bij Azure

Meld u aan bij uw Azure-abonnement met de opdracht Connect-AzAccount en volg de instructies op het scherm.

Connect-AzAccount

Als u niet weet welke locatie u kunt gebruiken, kunt u een lijst met de beschikbare locaties weergeven. Geef de lijst met locaties weer met behulp van het volgende codevoorbeeld, en zoek de locatie die u wilt gebruiken. In dit voorbeeld wordt eastus gebruikt. Sla de locatie op in een variabele en gebruik de variabele zodat u de locatie op één plek kunt wijzigen.

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

Een brongroep maken

Maak een Azure-resourcegroep met behulp van de opdracht New-AzResourceGroup. Een resourcegroep is een logische container waarin Azure-resources worden geïmplementeerd en beheerd.

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

Een opslagaccount maken

Maak met behulp van New-AzStorageAccount een standaardopslagaccount voor algemeen gebruik met LRS-replicatie. Haal vervolgens de opslagaccountcontext op waarin het te gebruiken opslagaccount wordt gedefinieerd. Verwijs bij het werken met een opslagaccount naar de context in plaats van herhaaldelijk de referenties door te geven. Gebruik het volgende voorbeeld om een opslagaccount met de naam mystorageaccount met lokaal redundante opslag (LRS) en blob-codering (standaard ingeschakeld) te maken.

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

Een container maken

Blobs worden altijd naar een container geüpload. U kunt groepen blobs ordenen net zoals u bestanden op uw computer in mappen ordent.

Stel de containernaam in en maak vervolgens de container met behulp van New-AzStorageContainer. De containernaam in dit voorbeeld is quickstartblobs.

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

Blobs uploaden naar de container

Blob-opslag ondersteunt blok-blobs, toevoeg-blobs en pagina-blobs. VHD-bestanden die worden gebruikt voor IaaS-VM's zijn pagina-blobs. Gebruik toevoeg-blobs voor logboekregistratie, bijvoorbeeld wanneer u gegevens wilt wegschrijven naar een bestand en vervolgens gegevens wilt blijven toevoegen. De meeste bestanden die zijn opgeslagen in Blob-opslag, zijn blok-blobs.

Als u een bestand wilt uploaden naar een blok-blob, haalt u een containerverwijzing op en haalt u vervolgens een verwijzing op naar de blok-blob in deze container. Zodra u de blobverwijzing hebt, kunt u er gegevens naar uploaden met behulp van Set-AzStorageBlobContent. Met deze bewerking wordt de blob gemaakt als deze nog niet bestaat, of overschreven als dat wel het geval is.

De volgende voorbeelden uploaden Image001.jpg en Image002.png uit de map D:\Images op de lokale schijf naar de container die u hebt gemaakt.

# 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


Upload zoveel bestanden als u nodig hebt, voordat u doorgaat.

Blobs in een container vermelden

Haal een lijst met blobs in de container op met behulp van Get-AzStorageBlob. In dit voorbeeld worden alleen de namen van de geüploade blobs weergegeven.

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

Blobs downloaden

Download de blobs naar de lokale vaste schijf. Stel voor elke blob die u wilt downloaden de naam in en roep Get-AzStorageBlobContent aan om de blob te downloaden.

In dit voorbeeld worden de blobs gedownload naar D:\Images\Downloads op de lokale schijf.

# 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

Gegevensoverdracht met AzCopy

Het AzCopy-opdrachtregelprogramma biedt high-performance, scriptbare gegevensoverdracht voor Azure Storage. U kunt met AzCopy gegevens overzetten naar en van Blob Storage en Azure Files. Zie Aan de slag met AzCopy voor meer informatie over AzCopy v10, de nieuwste versie van AzCopy. Zie Gegevens overzetten met AzCopy en Blob Storage voor meer informatie over het gebruik van AzCopy v10 met Blob Storage.

In het volgende voorbeeld wordt AzCopy gebruikt om een lokaal bestand te uploaden naar een blob. Vergeet niet om de voorbeeldwaarden te vervangen door uw eigen waarden:

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

Resources opschonen

Verwijder alle activa die u hebt gemaakt. De eenvoudigste manier om assets te verwijderen is door de resourcegroep te verwijderen. Als u de resourcegroep verwijdert, worden alle resources verwijderd die deze groep bevat. In het volgende voorbeeld worden samen met de resourcegroep het opslagaccount en de resourcegroep zelf verwijderd.

Remove-AzResourceGroup -Name $ResourceGroup 

Volgende stappen

In deze quickstart hebt u bestanden overgebracht tussen een lokaal bestandssysteem en Azure Blob Storage. Selecteer hieronder een optie voor meer informatie over het werken met Blob Storage met behulp van PowerShell.

Naslaginformatie over Microsoft Azure PowerShell Storage-cmdlets

Microsoft Azure Storage Explorer

  • Microsoft Azure Storage Explorer is een gratis, zelfstandige app van Microsoft waarmee u visueel met Azure Storage-gegevens kunt werken in Windows, macOS en Linux.