Perspektive von Azure Well-Architected Framework auf Azure Blob Storage

Azure Blob Storage ist eine Microsoft-Objektspeicherlösung für die Cloud. Blob Storage ist für die Speicherung großer Mengen unstrukturierter Daten optimiert. Unstrukturierte Daten sind Daten, die keinem bestimmten Datenmodell und keiner bestimmten Definition entsprechen (also beispielsweise Text- oder Binärdaten).

In diesem Artikel wird davon ausgegangen, dass Sie als Architekt Ihre Speicheroptionen überprüft und Blob Storage als Speicherdienst ausgewählt haben, auf dem Ihre Workloads ausgeführt werden sollen. Die Anleitung in diesem Artikel enthält Architekturempfehlungen, die den Prinzipien der Säulen des Azure Well-Architected Framework zugeordnet sind.

Wichtig

So verwenden Sie dieses Handbuch

Jeder Abschnitt verfügt über eine Entwurfsprüfliste , die architektonische Themenbereiche zusammen mit Designstrategien darstellt.

Außerdem sind Empfehlungen zu den Technologiefunktionen enthalten, die bei der Implementierung dieser Strategien helfen können. Die Empfehlungen stellen keine vollständige Liste aller Konfigurationen dar, die für Blob Storage und deren Abhängigkeiten verfügbar sind. Stattdessen werden die wichtigsten Empfehlungen aufgelistet, die den Entwurfsperspektiven zugeordnet sind. Verwenden Sie die Empfehlungen, um Ihre Machbarkeitsstudie zu erstellen oder Ihre vorhandenen Umgebungen zu optimieren.

Zuverlässigkeit

Der Zweck der Zuverlässigkeitssäule besteht darin, fortlaufende Funktionen bereitzustellen, indem genügend Resilienz und die Fähigkeit zur schnellen Wiederherstellung von Fehlern erstellt werden.

Die Zuverlässigkeitsdesignprinzipien bieten eine allgemeine Designstrategie, die für einzelne Komponenten, Systemflüsse und das gesamte System angewendet wird.

Prüfliste für den Entwurf

Starten Sie Ihre Designstrategie basierend auf der Prüfliste für die Designüberprüfung für Zuverlässigkeit.

  • Verwenden Sie die Fehlermodusanalyse: Minimieren Sie Fehlerpunkte, indem Sie interne Abhängigkeiten berücksichtigen, z. B. die Verfügbarkeit virtueller Netzwerke, Azure Key Vault oder Azure Content Delivery Network oder Azure Front Door-Endpunkte. Fehler können auftreten, wenn Anmeldeinformationen, die von Workloads für den Zugriff auf Blob Storage erforderlich sind, im Key Vault fehlen oder Workloads einen Endpunkt basierend auf einem entfernten Inhaltsübermittlungsnetzwerk verwenden. In diesen Fällen müssen Workloads möglicherweise einen alternativen Endpunkt verwenden, um eine Verbindung herzustellen. Allgemeine Informationen zur Fehlermodusanalyse finden Sie unter Empfehlungen für die Analyse des Fehlermodus.

  • Definieren von Zuverlässigkeits- und Wiederherstellungszielen: Überprüfen Sie die Vereinbarungen auf Azure-Dienstebene (SLAs). Leiten Sie das Ziel auf Service-Level (SLO) für das Speicherkonto ab. Beispielsweise kann die SLO von der von Ihnen ausgewählten Redundanzkonfiguration betroffen sein. Berücksichtigen Sie die Auswirkungen eines regionalen Ausfalls, das Potenzial für Datenverlust und die Zeit, die erforderlich ist, um den Zugriff nach einem Ausfall wiederherzustellen. Berücksichtigen Sie auch die Verfügbarkeit interner Abhängigkeiten, die Sie als Teil der Fehlermodusanalyse identifiziert haben.

  • Konfigurieren sie Datenredundanz: Wählen Sie für maximale Haltbarkeit eine Konfiguration aus, die Daten über Verfügbarkeitszonen oder globale Regionen kopiert. Wählen Sie für die maximale Verfügbarkeit eine Konfiguration aus, mit der Clients Daten aus der sekundären Region während eines Ausfalls der primären Region lesen können.

  • Designanwendungen: Entwerfen Sie Anwendungen, um nahtlos in das Lesen von Daten aus der sekundären Region zu wechseln, wenn der primäre Bereich aus irgendeinem Grund nicht verfügbar ist. Dies gilt nur für georedundante Speicherkonfigurationen (GEO-Redundant Storage, GRS) und geozonenredundanten Speicherkonfigurationen.This only applies to geo-redundant storage (GRS) and geo-zone-redundant storage (GZRS) configurations. Das Entwerfen von Anwendungen zur Behandlung von Ausfallen reduziert Ausfallzeiten für Endbenutzer.

  • Erkunden Sie Features, mit denen Sie Ihre Wiederherstellungsziele erreichen können: Machen Sie Blobs wiederherstellbar, damit sie wiederhergestellt werden können, wenn sie fehlerhaft, bearbeitet oder gelöscht wurden.

  • Erstellen Eines Wiederherstellungsplans: Erwägen Sie Datenschutzfeatures, Sicherungs- und Wiederherstellungsvorgänge oder Failoverprozeduren. Bereiten Sie sich auf potenzielle Datenverluste und Dateninkonsistenzen sowie die Zeit und Kosten eines Ausfalls vor. Weitere Informationen finden Sie unter Empfehlungen für das Entwerfen einer Notfallwiederherstellungsstrategie.

  • Überwachen potenzieller Verfügbarkeitsprobleme: Abonnieren Sie das Azure Service Health-Dashboard , um potenzielle Verfügbarkeitsprobleme zu überwachen. Verwenden Sie Speichermetriken in Azure Monitor und Diagnoseprotokollen, um Warnungen zu untersuchen.

Empfehlungen

Empfehlung Vorteil
Konfigurieren Sie Ihr Konto für Redundanz.

Konfigurieren Sie Ihr Konto für maximale Verfügbarkeit und Haltbarkeit mithilfe von zonenredundanten Speicher (ZRS) oder GZRS.
Redundanz schützt Ihre Daten vor unerwarteten Fehlern. Die ZRS- und GZRS-Konfigurationsoptionen replizieren in verschiedenen Verfügbarkeitszonen und ermöglichen Es Anwendungen, daten während eines Ausfalls weiterzulesen. Weitere Informationen finden Sie unter Haltbarkeit und Verfügbarkeit nach Ausfallszenario und Haltbarkeits - und Verfügbarkeitsparametern.
Bewerten Sie vor dem Initiieren eines Failovers oder Failbacks das Potenzial für Datenverlust , indem Sie den Wert der letzten Synchronisierungszeiteigenschaft überprüfen. Diese Empfehlung gilt nur für GRS- und GZRS-Konfigurationen. Diese Eigenschaft hilft Ihnen zu schätzen, wie viele Daten verloren gehen können, indem Sie ein Kontofailover initiieren.

Alle Daten und Metadaten, die vor der letzten Synchronisierungszeit geschrieben wurden, sind in der sekundären Region verfügbar, aber Daten und Metadaten, die nach der letzten Synchronisierungszeit geschrieben wurden, gehen möglicherweise verloren, da sie nicht in den sekundären Bereich geschrieben wurde.
Aktivieren Sie als Teil Ihrer Sicherungs- und Wiederherstellungsstrategie die Optionen für das vorläufige Löschen des Containers, blob soft delete, versionsing und point-in-time restore . Mit der Option "Vorläufiges Löschen" kann ein Speicherkonto gelöschte Container und Blobs wiederherstellen.

Mit der Versionsverwaltungsoption werden Änderungen, die an Blobs vorgenommen wurden, automatisch nachverfolgt. Mit dieser Option können Sie ein BLOB in einen vorherigen Zustand wiederherstellen.

Die Punkt-in-Time-Wiederherstellungsoption schützt vor versehentlicher Bloblöschung oder Beschädigung und ermöglicht es Ihnen, BLOB-Daten in einem früheren Zustand wiederherzustellen.

Weitere Informationen finden Sie unter Übersicht zum Datenschutz.

Sicherheit

Der Zweck der Säule "Sicherheit" besteht darin, vertraulichkeits-, Integritäts- und Verfügbarkeitsgarantien für die Arbeitsauslastung bereitzustellen.

Die Prinzipien des Sicherheitsdesigns stellen eine allgemeine Entwurfsstrategie für die Erreichung dieser Ziele bereit, indem Ansätze auf den technischen Entwurf Ihrer Blob Storage-Konfiguration angewendet werden.

Prüfliste für den Entwurf

Starten Sie Ihre Designstrategie basierend auf der Prüfliste für die Designüberprüfung für Sicherheit. Identifizieren Sie Sicherheitsrisiken und Kontrollen, um den Sicherheitsstatus zu verbessern. Erweitern Sie die Strategie, um bei Bedarf weitere Ansätze einzuschließen.

  • Überprüfen Sie die Sicherheitsgrundwerte für Azure Storage: Überprüfen Sie zunächst die Sicherheitsgrundwerte für Speicher.

  • Verwenden Sie Netzwerksteuerelemente, um den Eingangs- und Ausgangsdatenverkehr einzuschränken: Deaktivieren Sie den gesamten öffentlichen Datenverkehr für das Speicherkonto. Verwenden Sie Kontonetzwerksteuerelemente, um den minimalen Zugriff zu gewähren, der von Benutzern und Anwendungen benötigt wird. Weitere Informationen finden Sie unter How to approach network security for your storage account.

  • Reduzieren Sie die Angriffsfläche: Das Verhindern des anonymen Zugriffs, des Kontoschlüsselzugriffs oder des Zugriffs über nicht sichere (HTTP)-Verbindungen kann die Angriffsfläche verringern. Clients müssen Daten mithilfe der neuesten Version des TLS-Protokolls (Transport Layer Security) senden und empfangen.

  • Autorisieren des Zugriffs ohne Verwendung von Kennwörtern oder Schlüsseln: Die Microsoft Entra-ID bietet im Vergleich zu gemeinsam genutzten Schlüsseln und freigegebenen Zugriffssignaturen eine bessere Sicherheit und Benutzerfreundlichkeit. Gewähren Sie Sicherheitsprinzipalen nur die Berechtigungen, die für sie erforderlich sind, um ihre Aufgaben auszuführen.

  • Schützen vertraulicher Informationen: Schützen Sie vertrauliche Informationen, z. B. Kontoschlüssel und Signaturtoken für gemeinsame Zugriffsberechtigungen. Obwohl diese Autorisierungsformen im Allgemeinen nicht empfohlen werden, sollten Sie sicherstellen, dass Sie sie sicher drehen, ablaufen und speichern.

  • Aktivieren Sie die erforderliche Option für die sichere Übertragung: Durch Aktivieren dieser Einstellung für alle Speicherkonten wird sichergestellt, dass alle Anforderungen für das Speicherkonto über sichere Verbindungen erfolgen müssen. Alle anforderungen, die über HTTP vorgenommen wurden, schlagen fehl.

  • Schützen kritischer Objekte: Anwenden von Unveränderlichkeitsrichtlinien zum Schutz kritischer Objekte. Richtlinien schützen Blobs, die für rechtliche, Compliance- oder andere Geschäftszwecke gespeichert sind, vor der Änderung oder Löschung. Konfigurieren Sie Haltebereiche für festgelegte Zeiträume oder bis Einschränkungen von einem Administrator aufgehoben werden.

  • Erkennen von Bedrohungen: Aktivieren Sie Microsoft Defender für Speicher , um Bedrohungen zu erkennen. Bei Anomalien im Rahmen von Aktivitäten werden Sicherheitswarnungen ausgelöst. Die Warnungen benachrichtigen Abonnementadministratoren per E-Mail mit Details zu verdächtigen Aktivitäten und Empfehlungen zur Untersuchung und Behebung von Bedrohungen.

Empfehlungen

Empfehlung Vorteil
Deaktivieren Sie den anonymen Lesezugriff auf Container und Blobs. Wenn anonymer Zugriff für ein Speicherkonto zulässig ist, kann ein Benutzer, der über die entsprechenden Berechtigungen verfügt, die Einstellung für den anonymen Zugriff eines Containers ändern, um den anonymen Zugriff auf die Daten in diesem Container zu ermöglichen.
Wenden Sie eine Azure Resource Manager-Sperre auf das Speicherkonto an. Durch das Sperren eines Kontos wird verhindert, dass es gelöscht und Datenverlust verursacht wird.
Deaktivieren Sie den Datenverkehr an die öffentlichen Endpunkte Ihres Speicherkontos . Erstellen Sie private Endpunkte für Clients, die in Azure ausgeführt werden. Aktivieren Sie den öffentlichen Endpunkt nur, wenn Clients und Dienste außerhalb von Azure direkten Zugriff auf Ihr Speicherkonto erfordern. Aktivieren Sie Firewallregeln, die den Zugriff auf bestimmte virtuelle Netzwerke beschränken. Beginnen Sie mit null Zugriff, und autorisieren Sie dann inkrementell die niedrigsten Zugriffsebenen, die für Clients und Dienste erforderlich sind, um das Risiko zu minimieren, unnötige Öffnungen für Angreifer zu erstellen.
Autorisieren des Zugriffs mithilfe der rollenbasierten Zugriffssteuerung (Azure Role-Based Access Control, RBAC). Bei RBAC gibt es keine Kennwörter oder Schlüssel, die kompromittiert werden können. Der Sicherheitsprinzipal (Benutzer, Gruppe, verwaltete Identität oder Dienstprinzipal) wird von Microsoft Entra-ID authentifiziert, um ein OAuth 2.0-Token zurückzugeben. Das Token wird verwendet, um eine Anforderung für den Blob Storage-Dienst zu autorisieren.
Freigabeschlüsselautorisierung nicht zulassen. Dadurch werden nicht nur Kontoschlüsselzugriff, sondern auch Signaturtoken für gemeinsame Dienste und Konten deaktiviert, da sie auf Kontoschlüsseln basieren. Nur gesicherte Anforderungen, die mit der Microsoft Entra-ID autorisiert sind, sind zulässig.
Es wird empfohlen, keinen Kontoschlüssel zu verwenden. Wenn Sie Kontoschlüssel verwenden müssen, speichern Sie sie in Key Vault, und stellen Sie sicher, dass Sie sie regelmäßig neu generieren. Mit Key Vault können Sie Schlüssel zur Laufzeit abrufen, anstatt sie mithilfe Ihrer Anwendung zu speichern. Key Vault macht es auch einfach, Ihre Schlüssel ohne Unterbrechung ihrer Anwendungen zu drehen. Durch das regelmäßige Drehen der Kontoschlüssel wird das Risiko reduziert, dass Ihre Daten böswilligen Angriffen ausgesetzt werden.
Es wird empfohlen, keine gemeinsamen Zugriffssignaturtoken zu verwenden. Bewerten Sie, ob Sie freigegebene Zugriffssignaturtoken benötigen, um den Sicheren Zugriff auf Blob Storage-Ressourcen zu gewährleisten. Wenn Sie eine Signatur erstellen müssen, überprüfen Sie diese Liste der bewährten Methoden für gemeinsame Zugriffssignaturen, bevor Sie sie erstellen und verteilen. Bewährte Methoden können Ihnen helfen, zu verhindern, dass ein freigegebenes Zugriffssignaturtoken verloren geht, und schnell wiederhergestellt werden, wenn ein Verlust auftritt.
Konfigurieren Sie Ihr Speicherkonto , damit Clients Daten mithilfe der Mindestversion von TLS 1.2 senden und empfangen können. TLS 1.2 ist sicherer und schneller als TLS 1.0 und 1.1, die moderne Kryptografiealgorithmen und Suites mit Verschlüsselungsverfahren nicht unterstützen.
Erwägen Sie die Verwendung Ihres eigenen Verschlüsselungsschlüssels zum Schutz der Daten in Ihrem Speicherkonto. Weitere Informationen finden Sie unter Kundenseitig verwaltete Schlüssel für die Azure Storage-Verschlüsselung. Vom Kunden verwaltete Schlüssel bieten mehr Flexibilität und Kontrolle. Sie können z. B. Verschlüsselungsschlüssel im Key Vault speichern und automatisch drehen.

Kostenoptimierung

Die Kostenoptimierung konzentriert sich auf das Erkennen von Ausgabenmustern, priorisieren von Investitionen in kritische Bereiche und die Optimierung in anderen Bereichen, um das Budget und die Geschäftlichen Anforderungen der Organisation zu erfüllen.

Die Designprinzipien für die Kostenoptimierung bieten eine allgemeine Entwurfsstrategie, um diese Ziele zu erreichen und bei Bedarf Kompromisse im technischen Design im Zusammenhang mit Blob Storage und seiner Umgebung zu treffen.

Prüfliste für den Entwurf

Starten Sie Ihre Designstrategie basierend auf der Prüfliste für die Entwurfsüberprüfung für Kostenoptimierung für Investitionen. Optimieren Sie den Entwurf so, dass die Arbeitsauslastung mit dem Budget übereinstimmt, das für die Workload zugewiesen ist. Ihr Design sollte die richtigen Azure-Funktionen verwenden, Investitionen überwachen und Möglichkeiten zur Optimierung im Laufe der Zeit finden.

  • Identifizieren Sie die Meter, die zum Berechnen Ihrer Rechnung verwendet werden: Meter werden verwendet, um die Menge der im Konto gespeicherten Daten (Datenkapazität) sowie die Anzahl und art der Vorgänge zu verfolgen, die zum Schreiben und Lesen von Daten ausgeführt werden. Es gibt auch Meter, die der Verwendung optionaler Features wie BLOB-Indextags, Blob-Bestand, Änderungsfeedunterstützung, Verschlüsselungsbereiche und SFTP-Unterstützung (SSH File Transfer Protocol) zugeordnet sind. Weitere Informationen finden Sie unter How you're charged for Blob Storage.

  • Verstehen des Preises für jeden Meter: Stellen Sie sicher, dass Sie die entsprechende Preisseite verwenden und die entsprechenden Einstellungen auf dieser Seite anwenden. Weitere Informationen finden Sie unter Ermitteln des Einzelpreises für jeden Meter. Berücksichtigen Sie die Anzahl der Vorgänge, die jedem Preis zugeordnet sind. Beispielsweise gilt der Preis für Schreib- und Lesevorgänge für 10.000 Vorgänge. Um den Preis eines einzelnen Vorgangs zu ermitteln, dividieren Sie den aufgeführten Preis um 10.000.

  • Schätzen Sie die Kosten der Kapazität und des Betriebs: Sie können die Kosten für die Datenspeicherung, den Ausgang und den Ausgang modellieren, indem Sie den Azure-Preisrechner verwenden. Verwenden Sie Felder, um die Kosten zu vergleichen, die verschiedenen Regionen, Kontotypen, Namespacetypen und Redundanzkonfigurationen zugeordnet sind. Für bestimmte Szenarien können Sie Beispielberechnungen und Arbeitsblätter verwenden, die in der Microsoft-Dokumentation verfügbar sind. Sie können beispielsweise die Kosten für die Archivierung von Daten schätzen oder die Kosten für die Verwendung des AzCopy-Befehls zum Übertragen von Blobs schätzen.

  • Wählen Sie ein Abrechnungsmodell für die Kapazität aus: Bewerten Sie, ob die Verwendung eines verpflichtungsbasierten Modells kostengünstiger ist als die Verwendung eines verbrauchsbasierten Modells. Wenn Sie nicht sicher sind, wie viel Kapazität Sie benötigen, können Sie mit einem verbrauchsbasierten Modell beginnen, die Kapazitätsmetriken überwachen und dann später auswerten.

  • Wählen Sie einen Kontotyp, eine Redundanzstufe und eine Standardzugriffsstufe aus: Sie müssen einen Wert für jede dieser Einstellungen auswählen, wenn Sie ein Speicherkonto erstellen. Alle Werte wirken sich auf Transaktionsgebühren und Kapazitätsgebühren aus. Alle diese Einstellungen mit Ausnahme des Kontotyps können geändert werden, nachdem das Konto erstellt wurde.

  • Wählen Sie die kostengünstigste Standardzugriffsstufe aus: Es sei denn, eine Ebene wird bei jedem Blob-Upload angegeben, blobs weisen deren Zugriffsebene von der Standardeinstellung der Zugriffsebene ab. Eine Änderung der Einstellung für die Standardzugriffsebene eines Speicherkontos gilt für alle Blobs im Konto, für die keine explizite Zugriffsebene festgelegt ist. Diese Kosten können erheblich sein, wenn Sie eine große Anzahl von Blobs gesammelt haben. Weitere Informationen dazu, wie sich eine Leiste auf jedes vorhandene Blob auswirkt, finden Sie unter Ändern der Zugriffsebene eines Blobs.

  • Laden Sie Daten direkt auf die kosteneffizienteste Zugriffsebene hoch: Wenn beispielsweise die Standardeinstellung für die Zugriffsstufe Ihres Kontos heiß ist, Sie Jedoch Dateien für Archivierungszwecke hochladen, geben Sie eine kühlere Ebene als Archiv oder eine kalte Ebene als Teil Des Uploadvorgangs an. Verwenden Sie nach dem Hochladen von Blobs Lebenszyklusverwaltungsrichtlinien, um Blobs basierend auf Nutzungsmetriken wie der letzten Zugriffszeit auf die kosteneffizientesten Ebenen zu verschieben. Indem Sie die optimale Ebene bereits im Voraus auswählen, können Sie Kosten senken. Wenn Sie die Ebene eines bereits hochgeladenen Block-Blobs ändern, zahlen Sie die Kosten für das Schreiben in die erste Stufe, wenn Sie das Blob zum ersten Mal hochladen, und zahlen dann die Kosten für das Schreiben auf die gewünschte Ebene.

  • Haben Sie einen Plan für die Verwaltung des Datenlebenszyklus: Optimieren Sie Transaktions- und Kapazitätskosten, indem Sie Zugriffsebenen und Lebenszyklusverwaltung nutzen. Daten, die weniger häufig verwendet werden, sollten in kühleren Zugriffsebenen platziert werden, während daten, auf die häufig zugegriffen wird, in wärmeren Zugriffsebenen platziert werden sollten.

  • Entscheiden Sie, welche Features Sie benötigen: Einige Features wie Versionsverwaltung und blob soft delete verursachen zusätzliche Transaktions- und Kapazitätskosten sowie andere Gebühren. Überprüfen Sie die Abschnitte "Preise und Abrechnung" in Artikeln, in denen diese Funktionen beschrieben werden, wenn Sie auswählen, welche Funktionen Zu Ihrem Konto hinzugefügt werden sollen.

    Wenn Sie z. B. das Blobinventarfeature aktivieren, werden Sie für die Anzahl der gescannten Objekte in Rechnung gestellt. Wenn Sie BLOB-Indextags verwenden, werden Sie für die Anzahl der Indextags in Rechnung gestellt. Wenn Sie die SFTP-Unterstützung aktivieren, werden Sie stündlich in Rechnung gestellt, auch wenn keine SFTP-Übertragungen vorhanden sind. Wenn Sie sich für die Verwendung eines Features entscheiden, vergewissern Sie sich, dass das Feature deaktiviert ist, da einige Features automatisch aktiviert sind, wenn Sie das Konto erstellen.

  • Erstellen Sie Guardrails: Erstellen Sie Budgets basierend auf Abonnements und Ressourcengruppen. Verwenden Sie Governancerichtlinien, um Ressourcentypen, Konfigurationen und Speicherorte einzuschränken. Verwenden Sie darüber hinaus RBAC, um Aktionen zu blockieren, die zu Überlastungen führen können.

  • Überwachen sie die Kosten: Stellen Sie sicher, dass Die Kosten in Budgets bleiben, kosten mit Prognosen vergleichen und sehen, wo ausstehende Kosten entstehen. Sie können den Kostenanalysebereich im Azure-Portal verwenden, um Die Kosten zu überwachen. Sie können Kostendaten auch in ein Speicherkonto exportieren und diese Daten mithilfe von Excel oder Power BI analysieren.

  • Überwachen Sie die Verwendung: Überwachen Sie kontinuierlich Nutzungsmuster und erkennen Sie nicht verwendete oder nicht genutzte Konten und Container. Verwenden Sie Speichererkenntnisse für Identitätskonten ohne oder geringe Verwendung. Aktivieren Sie Blobinventarberichte, und verwenden Sie Tools wie Azure Databricks oder Azure Synapse Analytics und Power BI, um Kostendaten zu analysieren. Achten Sie auf unerwartete Kapazitätssteigerungen, was möglicherweise darauf hindeutet, dass Sie zahlreiche Protokolldateien, BLOB-Versionen oder vorläufig gelöschte Blobs sammeln. Entwickeln Sie eine Strategie zum Ablaufen oder Übertragen von Objekten zu kostengünstigeren Zugriffsebenen. Sie haben einen Plan für das Ablaufen von Objekten oder das Verschieben von Objekten auf erschwinglichere Zugriffsebenen.

Empfehlungen

Empfehlung Vorteil
Packen Sie kleine Dateien in größere Dateien , bevor Sie sie in kühlere Ebenen verschieben. Sie können Dateiformate wie TAR oder ZIP verwenden. Kühlerstufen haben höhere Datenübertragungskosten. Durch weniger große Dateien können Sie die Anzahl der Vorgänge verringern, die zum Übertragen von Daten erforderlich sind.
Verwenden Sie die Standardprioritäts-Rehydration, wenn Blobs aus dem Archivspeicher rehydratiert werden. Verwenden Sie rehydration mit hoher Priorität nur für Notfalldatenwiederherstellungssituationen. Weitere Informationen finden Sie unter "Rehydratieren eines archivierten Blobs auf einer Onlineebene". Die Rehydration mit hoher Priorität von der Archivebene kann zu höheren als normalen Rechnungen führen.
Verringern Sie die Kosten für die Verwendung von Ressourcenprotokollen, indem Sie den geeigneten Speicherort des Protokollspeicherorts auswählen und Protokollaufbewahrungszeiträume verwalten. Wenn Sie nur gelegentlich Protokolle abfragen möchten (z. B. Abfragen von Protokollen für die Complianceüberwachung), sollten Sie Ressourcenprotokolle an ein Speicherkonto senden, anstatt sie an einen Azure Monitor Logs-Arbeitsbereich zu senden. Sie können eine serverlose Abfragelösung wie Azure Synapse Analytics verwenden, um Protokolle zu analysieren. Weitere Informationen finden Sie unter Optimieren der Kosten für seltene Abfragen. Verwenden Sie Lebenszyklusverwaltungsrichtlinien zum Löschen oder Archivieren von Protokollen. Das Speichern von Ressourcenprotokollen in einem Speicherkonto für spätere Analysen kann eine günstigere Option sein. Die Verwendung von Lebenszyklusverwaltungsrichtlinien zum Verwalten der Protokollaufbewahrung in einem Speicherkonto verhindert eine große Anzahl von Protokolldateien, die im Laufe der Zeit entstehen, was zu unnötigen Kapazitätsgebühren führen kann.
Wenn Sie die Versionsverwaltung aktivieren, verwenden Sie eine Lifecycle-Verwaltungsrichtlinie, um alte BLOB-Versionen automatisch zu löschen. Jeder Schreibvorgang in ein BLOB erstellt eine neue Version. Dies erhöht die Kapazitätskosten. Sie können die Kosten überprüfen, indem Sie nicht mehr benötigte Versionen entfernen.
Wenn Sie die Versionsverwaltung aktivieren, platzieren Sie Blobs, die häufig in ein Konto überschrieben werden, für das keine Versionsverwaltung aktiviert ist. Jedes Mal, wenn ein Blob überschrieben wird, wird eine neue Version hinzugefügt, was zu erhöhten Speicherkapazitätsgebühren führt. Um Kapazitätsgebühren zu reduzieren, speichern Sie häufig überschriebene Daten in einem separaten Speicherkonto mit deaktivierter Versionsverwaltung.
Wenn Sie "Vorläufiges Löschen" aktivieren, platzieren Sie Blobs, die häufig in ein Konto überschrieben werden, für das kein vorläufiges Löschen aktiviert ist. Legen Sie Aufbewahrungszeiträume fest. Erwägen Sie, mit einem kurzen Aufbewahrungszeitraum zu beginnen, um besser zu verstehen, wie sich das Feature auf Ihre Rechnung auswirkt. Die empfohlene Mindestaufbewahrungsdauer beträgt sieben Tage. Jedes Mal, wenn ein Blob überschrieben wird, wird eine neue Momentaufnahme erstellt. Die Ursache für erhöhte Kapazitätsgebühren kann schwierig sein, da die Erstellung dieser Momentaufnahme nicht in Protokollen angezeigt wird. Um Kapazitätsgebühren zu reduzieren, speichern Sie häufig überschriebene Daten in einem separaten Speicherkonto mit deaktiviertem vorläufigem Löschen. Ein Aufbewahrungszeitraum sorgt dafür, dass vorläufig gelöschte Blobs sich auffüllen und zu den Kapazitätskosten addiert werden.
Aktivieren Sie die SFTP-Unterstützung nur, wenn sie zum Übertragen von Daten verwendet wird. Das Aktivieren des SFTP-Endpunkts verursacht stündliche Kosten. Indem Sie den SFTP-Support durchdacht deaktivieren und es dann nach Bedarf aktivieren, können Sie passive Gebühren vermeiden, die in Ihrem Konto anfallen.
Deaktivieren Sie alle Verschlüsselungsbereiche, die nicht benötigt werden, um unnötige Gebühren zu vermeiden. Verschlüsselungsbereiche verursachen eine Gebühr pro Monat.

Optimaler Betrieb

Operational Excellence konzentriert sich in erster Linie auf Verfahren für Entwicklungspraktiken, Observability und Release Management.

Die Designprinzipien der Operational Excellence bieten eine allgemeine Designstrategie, um diese Ziele für die betrieblichen Anforderungen der Arbeitsauslastung zu erreichen.

Prüfliste für den Entwurf

Starten Sie Ihre Designstrategie basierend auf der Prüfliste für die Designüberprüfung für Operational Excellence zum Definieren von Prozessen für Observability, Tests und Bereitstellung im Zusammenhang mit Ihrer Blob Storage-Konfiguration.

  • Erstellen Sie Standard- und Notfallwiederherstellungspläne: Erwägen Sie Datenschutzfeatures, Sicherungs- und Wiederherstellungsvorgänge und Failoverprozeduren. Bereiten Sie sich auf potenzielle Datenverluste und Dateninkonsistenzen sowie die Zeit und Kosten eines Ausfalls vor.

  • Überwachen Sie den Status Ihres Speicherkontos: Erstellen Sie Dashboards für Speichereinblicke , um Die Verfügbarkeit, Leistung und Resilienzmetriken zu überwachen. Richten Sie Warnungen ein, um Probleme in Ihrem System zu identifizieren und zu beheben, bevor Ihre Kunden sie bemerken. Verwenden Sie Diagnoseeinstellungen, um Ressourcenprotokolle an einen Azure Monitor Logs-Arbeitsbereich weiterzuleiten. Anschließend können Sie Protokolle abfragen, um Warnungen genauer zu untersuchen.

  • Aktivieren Sie Blobinventarberichte: Aktivieren Sie Blobinventarberichte, um die Aufbewahrung, den gesetzlichen Aufbewahrungsstatus oder den Verschlüsselungsstatus Ihrer Speicherkontoinhalte zu überprüfen. Sie können blobinventarberichte auch verwenden, um die Gesamtdatengröße, das Alter, die Tierverteilung oder andere Attribute Ihrer Daten zu verstehen. Verwenden Sie Tools wie Azure Databricks oder Azure Synapse Analytics und Power BI, um Bestandsdaten besser zu visualisieren und Berichte für Projektbeteiligte zu erstellen.

  • Richten Sie Richtlinien ein, die Blobs löschen oder auf kosteneffiziente Zugriffsebenen verschieben: Erstellen Sie eine Lifecycle-Verwaltungsrichtlinie mit einer anfänglichen Gruppe von Bedingungen. Die Richtlinie wird automatisch gelöscht oder die Zugriffsebene von Blobs basierend auf den von Ihnen definierten Bedingungen festgelegt. Analysieren Sie die Verwendung von Containern in regelmäßigen Abständen mithilfe von Monitormetriken und Blobinventarberichten, sodass Sie Bedingungen verfeinern können, um die Kosteneffizienz zu optimieren.

Empfehlungen

Empfehlung Vorteil
Verwenden Sie die Infrastruktur als Code (IaC), um die Details Ihrer Speicherkonten in Azure Resource Manager-Vorlagen (ARM-Vorlagen), Bicep oder Terraform zu definieren. Sie können Ihre vorhandenen DevOps-Prozesse verwenden, um neue Speicherkonten bereitzustellen, und Azure-Richtlinie verwenden, um ihre Konfiguration zu erzwingen.
Verwenden Sie Speichereinblicke, um die Integrität und Leistung Ihrer Speicherkonten nachzuverfolgen. Speichererkenntnisse bieten eine einheitliche Übersicht über Fehler, Leistung, Verfügbarkeit und Kapazität für alle Speicherkonten. Sie können die Integrität und den Betrieb der einzelnen Konten nachverfolgen. Erstellen Sie ganz einfach Dashboards und Berichte, mit denen Projektbeteiligte den Status Ihrer Speicherkonten nachverfolgen können.

Effiziente Leistung

Die Leistungseffizienz geht es um Standard nachhaltige Benutzererfahrung auch dann, wenn die Auslastung durch die Verwaltung der Kapazität erhöht wird. Die Strategie umfasst die Skalierung von Ressourcen, das Identifizieren und Optimieren potenzieller Engpässe und die Optimierung der Spitzenleistung.

Die Designprinzipien für die Leistungseffizienz bieten eine allgemeine Entwurfsstrategie, um diese Kapazitätsziele gegen die erwartete Nutzung zu erreichen.

Prüfliste für den Entwurf

Starten Sie Ihre Designstrategie basierend auf der Prüfliste für die Entwurfsüberprüfung für die Leistungseffizienz. Definieren Sie einen Basisplan, der auf Schlüsselleistungsindikatoren für Ihre Blob Storage-Konfiguration basiert.

  • Planen der Skalierung: Grundlegendes zu den Skalierungszielen für Speicherkonten.

  • Wählen Sie den optimalen Speicherkontotyp aus: Wenn Ihre Workload hohe Transaktionsraten, kleinere Objekte und eine konsistent niedrige Transaktionslatenz erfordert, sollten Sie die Verwendung von Premium-Block-BLOB-Speicherkonten in Betracht ziehen. Ein allgemeines v2-Standardkonto ist in den meisten Fällen am besten geeignet.

  • Verringern Sie den Reiseabstand zwischen Client und Server: Platzieren Sie Daten in Regionen, die dem Verbinden von Clients am nächsten sind (idealerweise in derselben Region). Optimieren Sie für Clients in Regionen, die weit entfernt sind, indem Sie die Objektreplikation oder ein Inhaltsübermittlungsnetzwerk verwenden. Standardnetzwerkkonfigurationen bieten die beste Leistung. Ändern Sie Netzwerkeinstellungen nur, um die Sicherheit zu verbessern. Im Allgemeinen verringern Die Netzwerkeinstellungen nicht die Entfernung und verbessern die Leistung nicht.

  • Wählen Sie ein effizientes Benennungsschema aus: Verringern Sie die Latenz von Listen-, Listen-, Abfrage- und Lesevorgängen mithilfe von Hashtagpräfixen am nächsten am Anfang des Blobpartitionsschlüssels (Konto, Container, virtuelles Verzeichnis oder Blob-Name). Dieses Schema profitiert hauptsächlich von Konten, die über einen flachen Namespace verfügen.

  • Optimieren Sie die Leistung von Datenclients: Wählen Sie ein Datenübertragungstool aus, das für die Datengröße, die Übertragungshäufigkeit und die Bandbreite Ihrer Workloads am besten geeignet ist. Einige Tools wie AzCopy sind für die Leistung optimiert und erfordern wenig Eingriff. Berücksichtigen Sie die Faktoren, die die Latenz beeinflussen, und optimieren Sie die Leistung, indem Sie die Anleitung zur Leistungsoptimierung überprüfen, die mit jedem Tool veröffentlicht wird.

  • Optimieren Sie die Leistung von benutzerdefiniertem Code: Erwägen Sie die Verwendung von Speicher-SDKs, anstatt Eigene Wrapper für BLOB-REST-Vorgänge zu erstellen. Azure SDKs sind für die Leistung optimiert und bieten Mechanismen zur Feinabstimmung der Leistung. Überprüfen Sie vor dem Erstellen einer Anwendung die Prüfliste für Leistung und Skalierbarkeit für Blob Storage. Erwägen Sie die Verwendung der Abfragebeschleunigung , um unerwünschte Daten während der Speicheranforderung herauszufiltern und Clients daran zu hindern, datenlos über das Netzwerk zu übertragen.

  • Erfassen Von Leistungsdaten: Überwachen Sie Ihr Speicherkonto, um Leistungsengpässe zu identifizieren, die durch Drosselung auftreten. Weitere Informationen finden Sie unter Überwachen Ihres Speicherdiensts mit Monitor Storage Insights. Verwenden Sie sowohl Metriken als auch Protokolle. Metriken stellen Zahlen wie Drosselungsfehler bereit. Protokolle beschreiben die Aktivität. Wenn Drosselungsmetriken angezeigt werden, können Sie Protokolle verwenden, um zu ermitteln, welche Clients Drosselungsfehler erhalten. Weitere Informationen finden Sie unter Überwachung von Datenebenenvorgängen.

Empfehlungen

Empfehlung Vorteil
Stellen Sie Speicherkonten in derselben Region bereit, in der abhängige Ressourcen platziert werden. Für Anwendungen, die nicht in Azure gehostet werden, z. B. Apps für mobile Geräte oder lokale Unternehmensdienste, suchen Sie das Speicherkonto in einer Region, die sich näher an diesen Clients befindet. Weitere Informationen finden Sie unter Azure-Geografien.

Wenn Clients aus einer anderen Region keine gleichen Daten benötigen, erstellen Sie in jeder Region ein separates Konto.

Wenn Clients aus einer anderen Region nur einige Daten erfordern, sollten Sie eine Objektreplikationsrichtlinie verwenden, um relevante Objekte asynchron in ein Speicherkonto in der anderen Region zu kopieren.
Die Verringerung des physischen Abstands zwischen speicherkonto und VMs, Diensten und lokalen Clients kann die Leistung verbessern und die Netzwerklatenz verringern. Die Reduzierung der physischen Entfernung reduziert auch die Kosten für anwendungen, die in Azure gehostet werden, da die Bandbreitennutzung innerhalb einer einzelnen Region kostenlos ist.
Für eine breite Nutzung durch Webclients (Streaming von Video-, Audio- oder statischen Websiteinhalten) sollten Sie ein Inhaltsübermittlungsnetzwerk über Azure Front Door verwenden. Inhalte werden schneller an Clients übermittelt, da es das globale Microsoft Edge-Netzwerk mit Hunderten globaler und lokaler Präsenzpunkte auf der ganzen Welt verwendet.
Fügen Sie eine Hashzeichensequenz (z. B. drei Ziffern) so früh wie möglich im Partitionsschlüssel eines Blobs hinzu. Der Partitionsschlüssel ist der Kontoname, der Containername, der virtuelle Verzeichnisname und der BLOB-Name. Wenn Sie Zeitstempel in Namen verwenden möchten, sollten Sie am Anfang dieses Stempels einen Sekundenwert hinzufügen. Weitere Informationen finden Sie unter Partitionierung. Die Verwendung eines Hashcodes oder Sekundenwerts, der dem Anfang eines Partitionsschlüssels am nächsten ist, reduziert die Zeit, die zum Auflisten von Abfragen und Lesen von Blobs erforderlich ist.
Verwenden Sie beim Hochladen von Blobs oder Blöcken eine Blob- oder Blockgröße, die größer als 256 KiB ist. Blob- oder Blockgrößen über 256 KiB nutzen leistungsverbesserungen in der Plattform, die speziell für größere Blobs und Blockgrößen entwickelt wurden.

Azure-Richtlinien

Azure bietet einen umfassenden Satz integrierter Richtlinien im Zusammenhang mit Blob Storage und seinen Abhängigkeiten. Einige der vorstehenden Empfehlungen können über Azure-Richtlinien überwacht werden. Sie können beispielsweise überprüfen, ob:

  • Anonymer öffentlicher Lesezugriff auf Container und Blobs ist nicht aktiviert.
  • Diagnoseeinstellungen für Blob Storage werden so festgelegt, dass Ressourcenprotokolle in einen Azure Monitor Logs-Arbeitsbereich gestreamt werden.
  • Es werden nur Anforderungen von sicheren Verbindungen (HTTPS) akzeptiert.
  • Eine Ablaufrichtlinie für freigegebene Zugriffssignaturen ist aktiviert.
  • Die mandantenübergreifende Objektreplikation ist deaktiviert.
  • Die Autorisierung für gemeinsam genutzte Schlüssel ist deaktiviert.
  • Netzwerkfirewallregeln werden auf das Konto angewendet.

Für eine umfassende Governance überprüfen Sie die integrierten Azure-Richtliniendefinitionen für Speicher und andere Richtlinien, die sich auf die Sicherheit der Computeebene auswirken können.

Azure Advisor-Empfehlungen

Bei Azure Advisor handelt es sich um einen personalisierten Cloudberater, der Sie mit bewährten Methoden zum Optimieren von Azure-Bereitstellungen unterstützt. Hier sind einige Empfehlungen, die Ihnen helfen können, die Zuverlässigkeit, Sicherheit, Kosteneffizienz, Leistung und operative Exzellenz von Blob Storage zu verbessern.

Nächster Schritt

Weitere Informationen zu Blob Storage finden Sie in der Blob Storage-Dokumentation.