Je zou jezelf op een gegeven moment kunnen vinden in de behoefte aan een goedkope maar efficiënte oplossing om je bestanden op te slaan, maar waar vind je die oplossing? Kijk eens naar de Binary Large Object (blob) opslag van Microsoft Azure! Blob-opslag is een van de opslagdiensten van Azure en stelt je in staat om grote hoeveelheden tekst- en binaire databestanden, streamcontent of zelfs statische content voor distributie op te slaan.
In deze handleiding leer je hoe je met blob-opslag in Azure kunt werken aan de hand van enkele veelvoorkomende voorbeelden.
Lees verder om aan de slag te gaan!
Vereisten
Deze handleiding zal een praktische demonstratie zijn. Als je wilt meedoen, zorg er dan voor dat je het volgende hebt geïnstalleerd en beschikbaar hebt.
- PowerShell 7 geïnstalleerd.
- Az PowerShell-module geïnstalleerd in je PowerShell 7-omgeving.
- AzCopy-uitvoerbaar bestand gedownload en toegankelijk.
- Azure-abonnement – Er zijn meerdere manieren om specifieke Azure-resources te gebruiken met weinig of geen kosten.
Het Bouwen van een Azure Omgeving
Voordat u blobopslag gebruikt om uw bestanden op te slaan, moet u eerst PowerShell Core-modules importeren, verbinding maken met uw Azure-abonnement en een Azure-omgeving bouwen.
1. Start PowerShell 7 en voer de volgende opdracht uit om de modules te importeren die u zult gebruiken om bestanden op te slaan in blobopslag.

2. Log vervolgens in op uw Azure Active Directory (AD) tenant en voer de onderstaande opdracht uit om een interactieve authenticatie in uw webbrowser te voltooien, zoals hieronder weergegeven.
Hoewel buiten het bereik van deze tutorial, zijn er andere authenticatiemethoden, zoals een Service Principal of het gebruik van een toegangstoken.

Zorg er altijd voor dat de tenant en abonnement die na het inloggen worden getoond, die zijn die je van plan bent te gebruiken. Indien nodig kun je je context wijzigen.
3. Voer nu het onderstaande commando uit om een nieuwe resourcegroep genaamd demo
aan te maken, en voeg er vijf willekeurige getallen aan toe (Get-Random -Maximum 99999
). Resourcegroepen staan hiërarchisch onder abonnementen en bevatten resources die meer gedetailleerd beheer mogelijk maken.
Let op de -Locatie
van de resourcegroep die is ingesteld op Central US
voor dit voorbeeld. Wanneer het commando is voltooid, wordt het resultaat opgeslagen in de variabele $resourceGroup
.

4. Voer de onderstaande opdracht uit om de volgende taken uit te voeren en een nieuwe Azure-opslagaccount te maken. Voor dit voorbeeld is de opslagaccount genaamd ‘storage’ en aangevuld met vijf willekeurige getallen (Get-Random -Maximum 99999
). De variabele $storageAccount
zal het geretourneerde object vasthouden nadat de opdracht is voltooid.

5. Voer de onderstaande opdracht uit om een paar taken uit te voeren voor de toewijzing van de Azure AD Role:
- De waarde van
-SignInName
gebruikt het account waarop u momenteel bent ingelogd via deUserID
eigenschap geretourneerd door deGet-AzAccessToken
cmdlet. - De waarde van
-RoleDefinitionName
is de ingebouwde rol Storage Blob Data Contributor die u toewijst. - De waarde van
-Scope
stelt het bereik in van de roltoewijzing voor de opslagaccount die u heeft aangemaakt (storage10029 hieronder weergegeven) via deId
eigenschap van de variabele$storageAccount
.
Indien nodig kunt u altijd meer gedetailleerde roltoewijzingen maken voor individuele containers.

6. Voer ten slotte de reeks opdrachten hieronder uit om een bestand genaamd temp.dat op uw lokale systeem te maken. U zult dit bestand uploaden en downloaden vanuit het opslagaccount in de volgende secties om te demonstreren hoe blobopslag werkt.

Bestanden uploaden via PowerShell
Nu je een Azure-omgeving hebt opgebouwd en een voorbeeldbestand hebt gemaakt, laten we het bestand uploaden naar blobopslag. Blobopslag werkt anders dan standaard bestandssystemen. Elk bestand in de blobopslag is een object en wordt bewaard binnen containers.
De kernfunctionaliteit van blobs is vergelijkbaar met andere bestandssystemen, maar er zijn gebruiksscenario’s waarin een van beide een betere oplossing zou kunnen zijn. Blobs kunnen zelfs virtuele bestandssystemen ondersteunen (bijvoorbeeld BlobFuse).
Microsoft biedt meerdere methoden om bestanden naar je opslagaccounts te uploaden via PowerShell, AzCopy en de Azure-portal. Laten we echter het voorbeeldbestand (temp.dat) via PowerShell naar blobopslag uploaden om te beginnen. PowerShell biedt je een consistente ervaring om met je Azure-opslagaccounts te werken.
De vereiste acties voor het uitvoeren van deze demo brengen kosten met zich mee. Houd je verbruik in de gaten en verwijder resources wanneer je ze niet meer wilt gebruiken.
Voer de onderstaande commando’s uit om een nieuwe container te maken en het bestand temp.dat ($file
) als een object te uploaden. De container heeft in dit voorbeeld de naam demo, maar je kunt hem naar wens een andere naam geven.

Bestanden uploaden via AzCopy
Misschien heb je meer complexe gebruiksgevallen, zoals het synchroniseren van inhoud of het kopiëren van inhoud tussen verschillende accounts op schaal. Als dat het geval is, is de AzCopy command-line tool wat je nodig hebt.
Voer de onderstaande opdrachten uit om in te loggen op je Azure tenant en kopieer je lokale bestand ($file
) naar de URL-eindpunt van je container. Je logt in op Azure tenant omdat AzCopy niet op de hoogte is van de referenties die je gebruikt met PowerShell.

In plaats van te uploaden, wilt u misschien bestanden downloaden via AzCopy. Zo ja, voer dan het onderstaande commando uit om de opgegeven bestanden (
temp.dat
) van uw container naar de huidige lokale map tekopiëren
:& .\azopy.exe copy "$($container.CloudBlobContainer.Uri.AbsoluteUri)/temp.dat" .\temp.dat
Bestanden uploaden via Azure Portal
Als u de voorkeur geeft aan een grafische methode voor het uploaden van uw bestanden, dan is Azure Storage Explorer uw vriend. Azure Storage Explorer is een van de beste grafische methoden om uw blob-opslag te beheren. U kunt toegang krijgen tot de opslagverkenner vanuit uw opslagaccountresource in de Azure Portal.
1. Open uw favoriete webbrowser en ga naar uw Storage Explorer in Azure Portal.
2. Klik op de demo-container onder BLOB-CONTAINERS, zoals hieronder weergegeven, klik vervolgens op Uploaden om toegang te krijgen tot het Blade Blob uploaden (rechterpaneel).
3. Klik nu op het mapictogram bij het Blade Blob uploaden om te selecteren welke bestanden u wilt uploaden (temp.dat).
4. Ten slotte, klik op Upload (blauwe knop) om je bestand te uploaden.

Zodra de upload voltooid is, kun je het Upload blob-venster sluiten en je geüploade blob bekijken, zoals te zien is in de afbeelding hieronder.

Bestanden downloaden via het Azure-portal
Vergelijkbaar met het uploaden van inhoud naar blobopslag, ondersteunt Azure het downloaden van inhoud op vele manieren. Maar omdat je zojuist een bestand (temp.dat) hebt geüpload via het Azure-portal, laten we hetzelfde bestand downloaden met behulp van de Azure Storage Explorer in het Azure-portal.
Selecteer het bestand (temp.dat) om te downloaden en klik op de Downloaden-knop in de Azure Storage Explorer, zoals hieronder wordt weergegeven. Hierdoor wordt een nieuw dialoogvenster geopend om de download te bevestigen die je in de volgende stap zult zien.

Klik nu op de knop Hier klikken om de download te starten om de geselecteerde bestanden te downloaden.

Bestanden downloaden via PowerShell
Net als bij het uploaden van bestanden krijg je ook de mogelijkheid om bestanden uit de blobopslag te downloaden door commando’s uit te voeren in PowerShell. Met PowerShell kun je de objecten binnen een container weergeven en ze vervolgens downloaden.
Voer de onderstaande commando’s uit om alle objecten in je container weer te geven en temp.dat naar je lokale directory te downloaden.

Als je de voorkeur geeft aan het gebruik van kortstondige unieke links om bestanden te downloaden, kun je Shared Access Signature (SAS) tokens gebruiken om een vooraf geautoriseerde downloadlink te maken. Deze tokens zijn unieke en privé-authenticatietokens die je kunt gebruiken om je toegang te verifiëren.
Voer de onderstaande commando’s uit om een nieuwe downloadlink voor het bestand (temp.dat
) dat je wilt downloaden, te maken. De gegenereerde downloadlink verloopt na 10 seconden en downloadt (Invoke-WebRequest $uri
) de inhoud met behulp van die link naar de $temp
-variabele.

Het hosten van een webpagina op het openbare internet vanuit Blobopslag
Tot op dit punt heb je voorbeelden gezien van het downloaden van bestanden door geauthenticeerde gebruikers. Maar wist je dat blobopslag ook een uitstekende optie kan bieden voor openbare inhoud? Een voorbeeld hiervan is het gebruik van een blob om de inhoud van je webpagina te hosten, wat je in deze demo zult bereiken.
Zelfs als de inhoud van je webpagina zowel tijdens de overdracht als in rust is versleuteld, kan iedereen die inhoud openen als er openbare toegang is ingesteld.
Aangezien u een ander gebruiksgeval instelt, zult u een van de belangrijkste voordelen van de publieke cloud gebruiken in schaalbaarheid en elasticiteit. U kunt een nieuwe opslagaccount aanmaken voor een specifiek gebruiksgeval en het risico van het gebruik van publieke containers beperken.
1. Voer de onderstaande opdracht uit om een nieuwe opslagaccount aan te maken zoals u deed in stap vier van de sectie “Een Azure-omgeving opzetten”. Maar deze keer geeft u het teruggegeven object door aan de variabele $publicStorageAccount
.

U hebt nu een toegewijde opslagaccount voor uw publieke inhoud en u kunt het configureren om statische webinhoud te hosten met de volgende opdracht.
2. Voer vervolgens de cmdlet Enable-AzStorageStaticWebsite
uit om de opslagaccount ($publicStorageAccount
) te configureren voor uw nieuwe gebruiksgeval. De -IndexDocument
stelt de standaardwebpagina in die u aan gebruikers wilt presenteren. De -Context
zal de nieuwe opslagaccount zijn die u zojuist hebt aangemaakt.

3. Voer de onderstaande opdrachten uit om een nieuw HTML-document in uw huidige map aan te maken, en upload dat document naar de container specifiek voor het hosten van webinhoud. Het inhoudstype is ingesteld op HTML (ContentType="text/html"
), zodat webbrowsers het document correct kunnen interpreteren.
Het openen van het document in een webbrowser geeft het bericht Hallo vanaf <opslagaccountnaam> weer.

4. Voer nu het volgende commando uit om de URL te krijgen waar gebruikers toegang hebben tot uw inhoud.

5. Open tot slot de URL in uw browser, u ziet iets vergelijkbaars met de onderstaande schermafbeelding.

Hulpbronnen opruimen
Nadat u deze nieuwe concepten hebt getest voor het gebruik van blobopslag, wilt u uw bronnen opruimen. Waarom? Op deze manier houdt u uw abonnement schoon. Belangrijker nog, u stopt met het maken van extra kosten.
Aangezien alle bronnen die u in deze handleiding hebt gebruikt zich in een enkele resourcegroep bevinden, kunt u alle bronnen opruimen door de resourcegroep te verwijderen.
Bronnen zullen niet altijd binnen een enkele resourcegroep vallen, wat illustreert waarom het ruim gebruik van logische segmentatie voordelig kan zijn, vooral bij frequent testen of itereren.
Voer het Remove-AzResourceGroup
-cmdlet hieronder uit, waarbij u de eigenschap ResourceGroupName
van de variabele $resourceGroup
opgeeft om de resourcegroep en alle bronnen erin te verwijderen.

Conclusie
In deze handleiding hebt u kennisgemaakt met het uploaden en downloaden van bestanden naar en van blobs in cloudopslag op verschillende platforms. U hebt ook geleerd dat het mogelijk is om een webpagina vanuit blobopslag te hosten die door gebruikers openbaar toegankelijk is.
Je kunt veel meer doen met blobopslag en andere opslagtypes, dus hoe zou je voortbouwen op deze concepten? Misschien werken met bestandopslagaccounts, serverloze bestandssystemen bieden, of paginablobs gebruiken voor virtuele harde schijven met Azure virtuele machines?