Einführung in die Kerndienste von Azure Storage

  • 04/08/2020
  • 11 Minuten zu lesen
    • t
    • D
    • m
    • r
    • r
    • +23

Die Azure Storage Plattform ist Microsofts Cloud-Speicherlösung für moderne Datenspeicherszenarien. Die Kernspeicherdienste bieten einen massiv skalierbaren Objektspeicher für Datenobjekte, Plattenspeicher für virtuelle Azure-Maschinen (VMs), einen Dateisystemdienst für die Cloud, einen Messaging-Speicher für zuverlässiges Messaging und einen NoSQL-Speicher. Die Dienste sind:

  • Dauerhaft und hochverfügbar. Redundanz sorgt dafür, dass Ihre Daten auch bei vorübergehenden Hardwareausfällen sicher sind. Sie können sich auch dafür entscheiden, Daten über Rechenzentren oder geografische Regionen hinweg zu replizieren, um sie zusätzlich vor lokalen Katastrophen oder Naturkatastrophen zu schützen. Auf diese Weise replizierte Daten bleiben im Falle eines unerwarteten Ausfalls hochverfügbar.
  • Sicher. Alle Daten, die in ein Azure Storage-Konto geschrieben werden, werden vom Dienst verschlüsselt. Azure Storage bietet Ihnen eine fein abgestufte Kontrolle darüber, wer Zugriff auf Ihre Daten hat.
  • Skalierbar. Azure Storage ist so konzipiert, dass er massiv skalierbar ist, um die Datenspeicher- und Leistungsanforderungen heutiger Anwendungen zu erfüllen.
  • Verwaltet. Azure kümmert sich für Sie um Hardware-Wartung, Updates und kritische Probleme.
  • Zugänglich. Daten in Azure Storage sind von überall auf der Welt über HTTP oder HTTPS zugänglich. Microsoft bietet Client-Bibliotheken für Azure Storage in einer Vielzahl von Sprachen, darunter .NET, Java, Node.js, Python, PHP, Ruby, Go und andere, sowie eine ausgereifte REST-API. Azure Storage unterstützt Scripting in Azure PowerShell oder Azure CLI. Und das Azure-Portal und der Azure Storage Explorer bieten einfache visuelle Lösungen für die Arbeit mit Ihren Daten.

Kernspeicherdienste

Die Azure Storage-Plattform umfasst die folgenden Datendienste:

  • Azure Blobs: Ein massiv skalierbarer Objektspeicher für Text- und Binärdaten. Enthält auch Unterstützung für Big Data-Analysen durch Data Lake Storage Gen2.
  • Azure Files: Verwaltete Dateifreigaben für Cloud- oder On-Premises-Implementierungen.
  • Azure Queues: Ein Messaging-Speicher für zuverlässiges Messaging zwischen Anwendungskomponenten.
  • Azure Tables: Ein NoSQL-Speicher für die schemalose Speicherung von strukturierten Daten.
  • Azure Disks: Speichervolumes auf Blockebene für Azure VMs.

Auf jeden Dienst wird über ein Speicherkonto zugegriffen. Weitere Informationen finden Sie unter Erstellen eines Speicherkontos.

Beispielszenarien

Die folgende Tabelle vergleicht Dateien, Blobs, Datenträger, Warteschlangen und Tabellen und zeigt Beispielszenarien für jeden Dienst.

Sie möchten Daten speichern, auf die nicht von außerhalb der virtuellen Maschine, an die die Festplatte angeschlossen ist, zugegriffen werden muss.

Funktion Beschreibung Wann zu verwenden
Azure Files Bietet vollständig verwaltete Cloud-Dateifreigaben, auf die Sie von überall aus über das Industriestandard-Protokoll Server Message Block (SMB) zugreifen können.
Sie können Azure-Dateifreigaben von Cloud- oder On-Premises-Implementierungen von Windows, Linux und macOS einhängen.
Sie wollen eine Anwendung in die Cloud verlagern, die bereits die nativen Dateisystem-APIs nutzt, um Daten zwischen ihr und anderen in Azure laufenden Anwendungen auszutauschen.
Sie wollen lokale Dateiserver oder NAS-Geräte ersetzen oder ergänzen.
Sie wollen Entwicklungs- und Debugging-Tools speichern, auf die von vielen virtuellen Maschinen aus zugegriffen werden muss.
Azure Blobs Ermöglicht die Speicherung und den Zugriff auf unstrukturierte Daten in großem Umfang in Block-Blobs.
Auch Azure Data Lake Storage Gen2 für Big-Data-Analytics-Lösungen für Unternehmen wird unterstützt.
Sie möchten, dass Ihre Anwendung Streaming- und Random-Access-Szenarien unterstützt.
Sie möchten von überall auf die Anwendungsdaten zugreifen können.
Sie möchten einen Enterprise Data Lake auf Azure aufbauen und Big Data Analytics durchführen.
Azure Disks Ermöglicht die persistente Speicherung von Daten und den Zugriff auf diese von einer angeschlossenen virtuellen Festplatte. Sie möchten „Lift-and-Shift“-Anwendungen, die native Dateisystem-APIs verwenden, um Daten auf persistente Festplatten zu lesen und zu schreiben.
Azure Queues Ermöglicht asynchrones Message Queueing zwischen Anwendungskomponenten. Sie möchten Anwendungskomponenten entkoppeln und asynchrones Messaging für die Kommunikation zwischen ihnen verwenden.
Für eine Anleitung, wann Sie Queue-Speicher im Vergleich zu Service-Bus-Warteschlangen verwenden sollten, siehe Speicher-Warteschlangen und Service-Bus-Warteschlangen – Vergleich und Gegenüberstellung.
Azure Tables Ermöglichen das Speichern strukturierter NoSQL-Daten in der Cloud und bieten einen Key/Attribute-Speicher mit einem schemalosen Design. Sie möchten flexible Datensätze wie Benutzerdaten für Webanwendungen, Adressbücher, Geräteinformationen oder andere Arten von Metadaten speichern, die Ihr Dienst benötigt.
Für Anleitungen zur Verwendung von Tabellenspeicher im Vergleich zur Azure Cosmos DB Table API siehe Entwickeln mit Azure Cosmos DB Table API und Azure Table Storage.

Blob-Storage

Azure Blob-Storage ist Microsofts Objektspeicherlösung für die Cloud. Blob-Storage ist optimiert für die Speicherung großer Mengen unstrukturierter Daten, wie z. B. Text- oder Binärdaten.

Blob-Storage ist ideal für:

  • Bilder oder Dokumente direkt in einem Browser bereitstellen.
  • Dateien für den verteilten Zugriff speichern.
  • Video- und Audio-Streaming.
  • Speichern von Daten für Backup und Wiederherstellung, Disaster Recovery und Archivierung.
  • Speichern von Daten zur Analyse durch einen lokalen oder in Azure gehosteten Dienst.

Objekte im Blob-Speicher können von überall auf der Welt über HTTP oder HTTPS aufgerufen werden. Benutzer oder Client-Anwendungen können über URLs, die Azure Storage REST API, Azure PowerShell, Azure CLI oder eine Azure Storage Client-Bibliothek auf Blobs zugreifen. Die Storage-Client-Bibliotheken sind für mehrere Sprachen verfügbar, darunter .NET, Java, Node.js, Python, PHP und Ruby.

Weitere Informationen zu Blob-Storage finden Sie unter Einführung in Blob-Storage.

Azure Files

Mit Azure Files können Sie hochverfügbare Netzwerk-Dateifreigaben einrichten, auf die über das standardmäßige SMB-Protokoll (Server Message Block) zugegriffen werden kann. Das bedeutet, dass mehrere VMs dieselben Dateien mit Lese- und Schreibzugriff gemeinsam nutzen können. Sie können die Dateien auch über die REST-Schnittstelle oder die Speicher-Client-Bibliotheken lesen.

Eine Sache, die Azure Files von Dateien auf einer Unternehmensdateifreigabe unterscheidet, ist, dass Sie von überall auf der Welt auf die Dateien zugreifen können, indem Sie eine URL verwenden, die auf die Datei zeigt und ein SAS-Token (Shared Access Signature) enthält. Sie können SAS-Tokens generieren; sie erlauben einen bestimmten Zugriff auf ein privates Asset für einen bestimmten Zeitraum.

Dateifreigaben können für viele gängige Szenarien verwendet werden:

  • Viele On-Premises-Anwendungen verwenden Dateifreigaben. Diese Funktion macht es einfacher, diese Anwendungen, die Daten freigeben, nach Azure zu migrieren. Wenn Sie die Dateifreigabe auf denselben Laufwerksbuchstaben mounten, den die lokale Anwendung verwendet, sollte der Teil Ihrer Anwendung, der auf die Dateifreigabe zugreift, mit minimalen, wenn überhaupt, Änderungen funktionieren.

  • Konfigurationsdateien können auf einer Dateifreigabe gespeichert und von mehreren VMs aus aufgerufen werden. Tools und Dienstprogramme, die von mehreren Entwicklern in einer Gruppe verwendet werden, können auf einer Dateifreigabe gespeichert werden, um sicherzustellen, dass jeder sie finden kann und dass sie die gleiche Version verwenden.

  • Ressourcenprotokolle, Metriken und Crash Dumps sind nur drei Beispiele für Daten, die in eine Dateifreigabe geschrieben und später verarbeitet oder analysiert werden können.

Weitere Informationen zu Azure Files finden Sie unter Einführung in Azure Files.

Einige SMB-Funktionen sind nicht für die Cloud geeignet. Weitere Informationen finden Sie unter Funktionen, die vom Azure File-Dienst nicht unterstützt werden.

Warteschlangenspeicher

Der Azure Queue-Dienst wird zum Speichern und Abrufen von Nachrichten verwendet. Warteschlangen-Nachrichten können bis zu 64 KB groß sein, und eine Warteschlange kann Millionen von Nachrichten enthalten. Warteschlangen werden im Allgemeinen verwendet, um Listen von Nachrichten zu speichern, die asynchron verarbeitet werden sollen.

Angenommen, Sie möchten, dass Ihre Kunden Bilder hochladen können, und Sie möchten Miniaturansichten für jedes Bild erstellen. Sie könnten Ihren Kunden darauf warten lassen, dass Sie die Miniaturansichten erstellen, während Sie die Bilder hochladen. Eine Alternative wäre die Verwendung einer Warteschlange. Wenn der Kunde seinen Upload beendet hat, schreiben Sie eine Nachricht in die Warteschlange. Lassen Sie dann eine Azure Function die Nachricht aus der Warteschlange abrufen und die Miniaturansichten erstellen. Jeder der Teile dieser Verarbeitung kann separat skaliert werden, was Ihnen mehr Kontrolle bei der Abstimmung auf Ihre Nutzung gibt.

Weitere Informationen zu Azure-Warteschlangen finden Sie unter Einführung in Warteschlangen.

Tabellenspeicher

Azure-Tabellenspeicher ist jetzt Teil von Azure Cosmos DB. Die Dokumentation zum Azure-Tabellenspeicher finden Sie in der Azure-Tabellenspeicher-Übersicht. Zusätzlich zum bestehenden Azure Table-Speicherdienst gibt es ein neues Azure Cosmos DB Table-API-Angebot, das durchsatzoptimierte Tabellen, globale Verteilung und automatische sekundäre Indizes bietet. Um mehr zu erfahren und das neue Premium-Angebot auszuprobieren, siehe Azure Cosmos DB Table API.

Weitere Informationen über den Tabellenspeicher finden Sie unter Übersicht über Azure Table Storage.

Disk Storage

Eine Azure Managed Disk ist eine virtuelle Festplatte (VHD). Sie können sie sich wie eine physische Festplatte in einem lokalen Server vorstellen, allerdings virtualisiert. Azure-verwaltete Festplatten werden als Page Blobs gespeichert, die ein zufälliges IO-Speicherobjekt in Azure sind. Wir nennen eine verwaltete Festplatte „verwaltet“, weil sie eine Abstraktion über Page Blobs, Blob-Container und Azure-Speicherkonten ist. Bei verwalteten Datenträgern müssen Sie lediglich den Datenträger bereitstellen und Azure kümmert sich um den Rest.

Weitere Informationen zu verwalteten Datenträgern finden Sie unter Einführung in Azure verwaltete Datenträger.

Typen von Speicherkonten

Azure Storage bietet verschiedene Typen von Speicherkonten. Jeder Typ unterstützt unterschiedliche Funktionen und hat sein eigenes Preismodell. Weitere Informationen zu den Speicherkontotypen finden Sie unter Azure-Speicherkontoübersicht.

Sicherer Zugriff auf Speicherkonten

Jede Anfrage an Azure Storage muss autorisiert werden. Azure Storage unterstützt die folgenden Autorisierungsmethoden:

  • Azure Active Directory (Azure AD)-Integration für Blob- und Warteschlangendaten. Azure Storage unterstützt die Authentifizierung und Autorisierung mit Azure AD für die Blob- und Queue-Dienste über die Azure rollenbasierte Zugriffskontrolle (Azure RBAC). Die Autorisierung von Anfragen mit Azure AD wird für höhere Sicherheit und Benutzerfreundlichkeit empfohlen. Weitere Informationen finden Sie unter Autorisieren des Zugriffs auf Azure Blobs und Warteschlangen mit Azure Active Directory.
  • Azure AD-Autorisierung über SMB für Azure Files. Azure Files unterstützt identitätsbasierte Autorisierung über SMB (Server Message Block) entweder über Azure Active Directory Domain Services (Azure AD DS) oder lokale Active Directory Domain Services (Vorschau). Ihre domänenverbundenen Windows-VMs können auf Azure-Dateifreigaben mit Azure AD-Anmeldeinformationen zugreifen. Weitere Informationen finden Sie unter Übersicht über die identitätsbasierte Authentifizierungsunterstützung von Azure Files für den SMB-Zugriff und Planung für eine Azure Files-Bereitstellung.
  • Autorisierung mit gemeinsamem Schlüssel. Die Dienste Azure Storage Blob, Files, Queue und Table unterstützen die Autorisierung mit Shared Key. Ein Client, der die Autorisierung mit Shared Key verwendet, übergibt mit jeder Anfrage einen Header, der mit dem Zugriffsschlüssel des Speicherkontos signiert ist. Weitere Informationen finden Sie unter Autorisieren mit Shared Key.
  • Autorisierung mit Shared Access Signatures (SAS). Eine gemeinsame Zugriffssignatur (SAS) ist eine Zeichenfolge, die ein Sicherheits-Token enthält, das an den URI für eine Speicherressource angehängt werden kann. Das Sicherheits-Token kapselt Einschränkungen wie Berechtigungen und das Intervall des Zugriffs. Weitere Informationen finden Sie unter Gemeinsame Zugriffssignaturen (SAS) verwenden.
  • Anonymer Zugriff auf Container und Blobs. Ein Container und seine Blobs können öffentlich zugänglich sein. Wenn Sie festlegen, dass ein Container oder Blobs öffentlich sind, kann jeder sie anonym lesen; eine Authentifizierung ist nicht erforderlich. Weitere Informationen finden Sie unter Verwalten des anonymen Lesezugriffs auf Container und Blobs.

Verschlüsselung

Es gibt zwei grundlegende Arten der Verschlüsselung, die für die zentralen Speicherdienste verfügbar sind. Weitere Informationen zu Sicherheit und Verschlüsselung finden Sie im Azure Storage-Sicherheitsleitfaden.

Verschlüsselung im Ruhezustand

Die Verschlüsselung von Azure Storage schützt und sichert Ihre Daten, um Ihre organisatorischen Sicherheits- und Compliance-Verpflichtungen zu erfüllen. Azure Storage verschlüsselt automatisch alle Daten vor dem Persistieren im Speicherkonto und entschlüsselt sie vor dem Abruf. Die Verschlüsselungs-, Entschlüsselungs- und Schlüsselverwaltungsprozesse sind für die Benutzer transparent. Kunden können sich auch dafür entscheiden, ihre eigenen Schlüssel mit Azure Key Vault zu verwalten. Weitere Informationen finden Sie unter Azure Storage-Verschlüsselung für Daten im Ruhezustand.

Client-seitige Verschlüsselung

Die Azure Storage-Client-Bibliotheken bieten Methoden zum Verschlüsseln von Daten aus der Client-Bibliothek, bevor sie über die Leitung gesendet werden, und zum Entschlüsseln der Antwort. Daten, die über die Client-seitige Verschlüsselung verschlüsselt werden, werden auch im Ruhezustand von Azure Storage verschlüsselt. Weitere Informationen zur client-seitigen Verschlüsselung finden Sie unter Client-seitige Verschlüsselung mit .NET für Azure Storage.

Redundanz

Um sicherzustellen, dass Ihre Daten dauerhaft sind, speichert Azure Storage mehrere Kopien Ihrer Daten. Wenn Sie Ihr Speicherkonto einrichten, wählen Sie eine Redundanzoption aus. Weitere Informationen finden Sie unter Azure Storage-Redundanz.

Daten in und aus Azure Storage übertragen

Sie haben mehrere Möglichkeiten, Daten in oder aus Azure Storage zu verschieben. Welche Option Sie wählen, hängt von der Größe Ihres Datensatzes und Ihrer Netzwerkbandbreite ab. Weitere Informationen finden Sie unter Wählen Sie eine Azure-Lösung für die Datenübertragung.

Preisgestaltung

Wenn Sie Entscheidungen darüber treffen, wie Ihre Daten gespeichert und auf sie zugegriffen wird, sollten Sie auch die damit verbundenen Kosten berücksichtigen. Weitere Informationen finden Sie unter Preise für Azure Storage.

Storage-APIs, Bibliotheken und Tools

Sie können mit jeder Sprache, die HTTP/HTTPS-Anfragen stellen kann, auf Ressourcen in einem Storage-Konto zugreifen. Zusätzlich bieten die Kerndienste von Azure Storage Programmierbibliotheken für mehrere gängige Sprachen. Diese Bibliotheken vereinfachen viele Aspekte der Arbeit mit Azure Storage, indem sie Details wie synchrone und asynchrone Aufrufe, Batching von Operationen, Ausnahmeverwaltung, automatische Wiederholungen, Betriebsverhalten usw. behandeln. Bibliotheken sind derzeit für die folgenden Sprachen und Plattformen verfügbar, weitere sind in Vorbereitung:

Azure Storage Daten API und Bibliotheksreferenzen

  • Azure Storage REST API
  • Azure Storage Client-Bibliothek für .NET
  • Azure Storage Client-Bibliothek für Java/Android
  • Azure Storage Client-Bibliothek für Node.js
  • Azure Storage Client-Bibliothek für Python
  • Azure Storage Client-Bibliothek für PHP
  • Azure Storage Client-Bibliothek für Ruby
  • Azure Storage Client-Bibliothek für C++

Azure Storage Management API und Bibliotheksreferenzen

  • Storage Resource Provider REST API
  • Storage Resource Provider Client Library für .NET
  • Storage Service Management REST API (Classic)

Azure Storage Datenbewegungs-API und Bibliotheksreferenzen

  • Storage Import/Export Service REST API
  • Storage Data Movement Client Library für .NET

Tools und Dienstprogramme

  • Azure PowerShell Cmdlets for Storage
  • Azure CLI Cmdlets for Storage
  • AzCopy Command-Line Utility
  • Azure Storage Explorer ist eine kostenlose, eigenständige App von Microsoft, mit der Sie visuell mit Azure Storage-Daten unter Windows, macOS und Linux arbeiten können.
  • Azure Resource Manager-Vorlagen für Azure Storage

Um die Kerndienste von Azure Storage in Betrieb zu nehmen, siehe Erstellen eines Speicherkontos.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.