Sie könnten sich irgendwann in der Notwendigkeit einer günstigen, aber effizienten Lösung zur Speicherung Ihrer Dateien befinden, aber wo finden Sie diese Lösung? Schauen Sie sich das Binary Large Object (Blob) Storage von Microsoft Azure an! Blob Storage ist einer der Azure-Speicherdienste und ermöglicht die Speicherung großer Mengen an Text- und Binärdatendateien, Streaming-Inhalten oder sogar statischem Inhalt für die Verteilung.
In diesem Tutorial lernen Sie, wie Sie mit Blob Storage in Azure arbeiten, indem Sie einige gängige Beispiele durchgehen.
Lesen Sie weiter, um einzusteigen!
Voraussetzungen
In diesem Tutorial wird eine praktische Demonstration durchgeführt. Wenn Sie mitmachen möchten, stellen Sie sicher, dass Sie Folgendes installiert und verfügbar haben.
- PowerShell 7 installiert.
- Das Az PowerShell-Modul ist in Ihrer PowerShell 7-Umgebung installiert.
- Die AzCopy-Datei heruntergeladen und zugänglich gemacht.
- Azure-Abonnement – Es gibt mehrere Möglichkeiten, bestimmte Azure-Ressourcen nahezu kostenlos zu nutzen.
Aufbau einer Azure-Umgebung
Bevor Sie Blob-Speicher zum Speichern Ihrer Dateien verwenden, müssen Sie zunächst die PowerShell Core-Module importieren, eine Verbindung mit Ihrem Azure-Abonnement herstellen und eine Azure-Umgebung erstellen.
1. Starten Sie PowerShell 7 und führen Sie den folgenden Befehl aus, um die Module zu importieren, die Sie zum Speichern von Dateien im Blob-Speicher verwenden werden.

2. Melden Sie sich anschließend bei Ihrem Azure Active Directory (AD)-Mandanten an, und führen Sie dann den folgenden Befehl aus, um eine interaktive Authentifizierung in Ihrem Webbrowser abzuschließen, wie unten gezeigt.
Obwohl dies über den Rahmen dieses Tutorials hinausgeht, gibt es andere Authentifizierungsmethoden, wie z.B. ein Service Principal oder die Verwendung eines Zugriffstokens.

Stellen Sie immer sicher, dass der Mandant und das Abonnement, die nach dem Anmelden angezeigt werden, die sind, die Sie verwenden möchten. Bei Bedarf können Sie Ihren Kontext ändern.
3. Führen Sie nun den unten stehenden Befehl aus, um eine neue Ressourcengruppe namens demo
zu erstellen und um fünf zufällige Zahlen erweitert (Get-Random -Maximum 99999
). Ressourcengruppen befinden sich hierarchisch unterhalb von Abonnements und enthalten Ressourcen, die eine granularere Verwaltung ermöglichen.
Beachten Sie, dass die -Ort
der Ressourcengruppe für dieses Beispiel auf Central US
festgelegt ist. Wenn der Befehl abgeschlossen ist, wird das Ergebnis in der Variablen $resourceGroup
gespeichert.

4. Führen Sie den folgenden Befehl aus, um die folgenden Aufgaben auszuführen und ein neues Azure-Speicherkonto zu erstellen. Für dieses Beispiel ist das Speicherkonto mit dem Namen storage benannt und mit fünf zufälligen Zahlen ergänzt (Get-Random -Maximum 99999
). Die $storageAccount
-Variable wird das zurückgegebene Objekt nach Abschluss des Befehls halten.

5. Führen Sie den folgenden Befehl aus, um ein paar Aufgaben für die Azure AD-Rollen-Zuweisung auszuführen:
- Der Wert von
-SignInName
verwendet das Konto, mit dem Sie sich derzeit über dieUserID
-Eigenschaft, die vomGet-AzAccessToken
-Cmdlet zurückgegeben wird, angemeldet haben. - Der Wert von
-RoleDefinitionName
ist die integrierte Rolle Storage Blob Data Contributor, die Sie zuweisen. - Der Wert von
-Scope
legt den Anwendungsbereich der Rollenzuweisung für das von Ihnen erstellte Speicherkonto (storage10029 unten dargestellt) über dieId
-Eigenschaft der Variable$storageAccount
fest.
Sie können jederzeit feinere Rollenzuweisungen für einzelne Container nach Bedarf bereitstellen.

6. Führen Sie abschließend die folgende Befehlsreihe aus, um eine Datei namens temp.dat auf Ihrem lokalen System zu erstellen. Sie werden diese Datei in den folgenden Abschnitten vom Speicherkonto hochladen und herunterladen, um zu zeigen, wie Blobspeicher funktioniert.

Hochladen von Dateien über PowerShell
Nun, da Sie eine Azure-Umgebung erstellt und eine Beispieldatei erstellt haben, können wir mit dem Hochladen der Datei in den Blob-Speicher beginnen. Blob-Speicher funktioniert anders als Standarddateisysteme. Jede Datei im Blob-Speicher ist ein Objekt und wird in Containern aufbewahrt.
Die Kernfunktionalität von Blobs ist ähnlich wie bei anderen Dateisystemen, aber es gibt Anwendungsfälle, bei denen eines davon die bessere Lösung sein könnte. Blobs können sogar virtuelle Dateisysteme unterstützen (z.B. BlobFuse).
Microsoft bietet mehrere Methoden zum Hochladen von Dateien in Ihre Speicherkonten über PowerShell, AzCopy und das Azure-Portal. Aber lassen Sie uns die Beispieldatei (temp.dat) zuerst über PowerShell in den Blob-Speicher hochladen. PowerShell ermöglicht Ihnen eine konsistente Erfahrung bei der Arbeit mit Ihren Azure-Speicherkonten.
Die für diese Demo erforderlichen Aktionen verursachen Kosten. Überwachen Sie Ihren Verbrauch und löschen Sie Ressourcen, wenn Sie sie nicht mehr verwenden möchten.
Führen Sie die unten stehenden Befehle aus, um einen neuen Container zu erstellen und die Datei temp.dat ($file
) als Objekt hochzuladen. Der Container ist in diesem Beispiel als demo benannt, aber Sie können ihn nach Belieben umbenennen.

Hochladen von Dateien über AzCopy
Vielleicht haben Sie komplexere Anwendungsfälle, wie das Synchronisieren von Inhalten oder das Kopieren von Inhalten zwischen verschiedenen Konten im großen Maßstab. Wenn ja, ist das Befehlszeilentool AzCopy genau das Richtige für Sie.
Führen Sie die folgenden Befehle aus, um sich bei Ihrem Azure-Mandanten anzumelden und Ihre lokale Datei ($file
) an den URL-Endpunkt Ihres Containers zu kopieren. Sie melden sich bei Azure-Mandanten an, da AzCopy nicht über die Anmeldeinformationen informiert ist, die Sie mit PowerShell verwenden.

Statt hochzuladen, möchten Sie vielleicht Dateien über AzCopy herunterladen. Wenn ja, führen Sie den folgenden Befehl aus, um die angegebenen Dateien (
temp.dat
) von Ihrem Container in das aktuelle lokale Verzeichnis zukopieren
:& .\azopy.exe copy "$($container.CloudBlobContainer.Uri.AbsoluteUri)/temp.dat" .\temp.dat
Hochladen von Dateien über das Azure-Portal
Wenn Sie eine GUI-Methode zum Hochladen Ihrer Dateien bevorzugen, dann ist Azure Storage Explorer Ihr Freund. Azure Storage Explorer ist eine der besten grafischen Methoden zur Verwaltung Ihres Blob-Speichers. Sie können den Speicher-Explorer über Ihr Speicherkonto im Azure-Portal aufrufen.
1. Öffnen Sie Ihren bevorzugten Webbrowser und navigieren Sie zum Storage Explorer im Azure-Portal.
2. Klicken Sie auf den Container demo unter BLOB-CONTAINERN, wie unten gezeigt, und klicken Sie dann auf Hochladen, um auf die Hochladen-Blob-Blade (rechte Seite) zuzugreifen.
3. Klicken Sie nun auf das Ordnersymbol im Hochladen-Blob-Panel, um auszuwählen, welche Dateien hochgeladen werden sollen (temp.dat).
4. Klicken Sie schließlich auf Hochladen (blaue Schaltfläche), um Ihre Datei hochzuladen.

Nach Abschluss des Uploads können Sie die Hochlademeldung schließen und Ihren hochgeladenen Blob sehen, ähnlich wie im Bild unten.

Herunterladen von Dateien über das Azure-Portal
Ähnlich wie beim Hochladen von Inhalten in den Blob-Speicher unterstützt Azure das Herunterladen von Inhalten auf verschiedene Arten. Da Sie jedoch gerade eine Datei (temp.dat) über das Azure-Portal hochgeladen haben, können Sie dieselbe Datei mithilfe des Azure Storage Explorers im Azure-Portal herunterladen.
Wählen Sie die Datei (temp.dat) aus, die Sie herunterladen möchten, und klicken Sie auf die Schaltfläche Herunterladen im Azure Storage Explorer, wie unten dargestellt. Dadurch wird ein neues Dialogfeld geöffnet, um den Download zu bestätigen, den Sie im nächsten Schritt sehen werden.

Klicken Sie jetzt auf die Schaltfläche Hier klicken, um den Download zu starten, um die ausgewählten Dateien herunterzuladen.

Herunterladen von Dateien über PowerShell
Wie beim Hochladen von Dateien haben Sie auch die Möglichkeit, Dateien aus dem Blob-Speicher herunterzuladen, indem Sie Befehle in PowerShell ausführen. Mit PowerShell können Sie die Objekte in einem Container auflisten und sie dann herunterladen.
Führen Sie die unten stehenden Befehle aus, um alle Objekte in Ihrem Container aufzulisten und temp.dat in Ihr lokales Verzeichnis herunterzuladen.

Wenn Sie lieber kurzlebige eindeutige Links zum Herunterladen von Dateien verwenden möchten, können Sie Shared Access Signature (SAS)-Tokens verwenden, um einen vorautorisierten Download-Link zu erstellen. Diese Tokens sind einzigartige und private Authentifizierungstoken, die Sie verwenden können, um Ihren Zugriff zu überprüfen.
Führen Sie die untenstehenden Befehle aus, um einen neuen Download-Link für die Datei (temp.dat
) zu erstellen, die Sie herunterladen möchten. Der generierte Download-Link läuft nach 10 Sekunden ab und lädt (Invoke-WebRequest $uri
) den Inhalt unter Verwendung dieses Links in die Variable $temp
herunter.

Hosting einer Webseite im öffentlichen Internet aus Blob-Speicher
Bis zu diesem Punkt haben Sie Anwendungsfälle gesehen, bei denen Dateien von authentifizierten Benutzern heruntergeladen werden. Wussten Sie jedoch, dass Blob-Speicher auch eine ausgezeichnete Option für öffentliche Inhalte bieten kann? Ein Beispiel ist die Verwendung eines Blobs zum Hosten Ihrer Webseiteninhalte, was Sie in dieser Demonstration erreichen werden.
Auch wenn Ihre Webseiteninhalte sowohl während der Übertragung als auch im Ruhezustand verschlüsselt sind, kann jeder auf diese Inhalte zugreifen, wenn der öffentliche Zugriff aktiviert ist.
Da Sie ein anderes Anwendungsszenario einrichten, nutzen Sie einen der Hauptvorteile der öffentlichen Cloud in Bezug auf Skalierbarkeit und Elastizität. Sie können ein neues Speicherkonto für einen bestimmten Anwendungsfall bereitstellen und das Risiko der Verwendung öffentlicher Container begrenzen.
1. Führen Sie den folgenden Befehl aus, um ein neues Speicherkonto zu erstellen, wie Sie es im vierten Schritt des Abschnitts „Erstellen einer Azure-Umgebung“ getan haben. Diesmal geben Sie das zurückgegebene Objekt an die Variable $publicStorageAccount
weiter.

Jetzt haben Sie ein dediziertes Speicherkonto für Ihre öffentlichen Inhalte, und Sie können es mit dem folgenden Befehl konfigurieren, um statische Webinhalte zu hosten.
2. Führen Sie anschließend das Cmdlet Enable-AzStorageStaticWebsite
aus, um das Speicherkonto ($publicStorageAccount
) für Ihren neuen Anwendungsfall zu konfigurieren. Der Parameter -IndexDocument
legt die Standard-Webseite fest, die Benutzern angezeigt werden soll. Der Parameter -Context
ist das neue Speicherkonto, das Sie gerade erstellt haben.

3. Führen Sie die folgenden Befehle aus, um ein neues HTML-Dokument in Ihrem aktuellen Verzeichnis zu erstellen und dieses Dokument in den Container hochzuladen, der speziell für die Bereitstellung von Webinhalten vorgesehen ist. Der Inhaltstyp ist auf HTML festgelegt (ContentType="text/html"
), damit Webbrowser das Dokument ordnungsgemäß interpretieren können.
Wenn Sie das Dokument in einem Webbrowser aufrufen, wird die Nachricht Hello from <storage account name> angezeigt.

4. Führen Sie nun den folgenden Befehl aus, um die URL abzurufen, unter der Benutzer auf Ihre Inhalte zugreifen können.

5. Öffnen Sie schließlich die URL in Ihrem Browser. Sie sehen etwas Ähnliches wie auf dem folgenden Screenshot.

Reinigung von Ressourcen
Jetzt, da Sie diese neuen Konzepte zur Verwendung von Blob-Speicher getestet haben, möchten Sie Ihre Ressourcen aufräumen. Warum? Auf diese Weise halten Sie Ihr Abonnement sauber. Noch wichtiger ist, dass Sie zusätzliche Kosten vermeiden.
Da sich alle Ressourcen, die Sie in diesem Tutorial verwendet haben, in einer einzigen Ressourcengruppe befinden, können Sie alle Ressourcen aufräumen, indem Sie die Ressourcengruppe löschen.
Ressourcen sind nicht immer in einer einzelnen Ressourcengruppe enthalten, was zeigt, warum der liberale Einsatz logischer Segmentierung vorteilhaft sein kann, insbesondere beim häufigen Testen oder Iterieren.
Führen Sie den Remove-AzResourceGroup
-Befehl unten aus und geben Sie die ResourceGroupName
-Eigenschaft der $resourceGroup
-Variable an, um die Ressourcengruppe und alle Ressourcen darin zu löschen.

Schlussfolgerung
In diesem Tutorial haben Sie das Hochladen und Herunterladen von Dateien zu und von Blobs in der Cloud-Speicherung auf verschiedenen Plattformen behandelt. Sie haben auch gelernt, dass es möglich ist, eine Webseite aus Blob-Speicher zu hosten, auf die Benutzer öffentlich zugreifen können.
Sie können viel mehr mit Blob-Speicher und anderen Speichertypen tun. Wie könnten Sie diese Konzepte erweitern? Möglicherweise arbeiten Sie mit Dateispeicherkonten, bieten serverlose Dateisysteme an oder verwenden Page Blobs für virtuelle Festplatten mit Azure Virtual Machines.