Teilen über


Verbessern der Leistung für SMB Azure-Dateifreigaben

In diesem Artikel wird erläutert, wie Sie die Leistung für SSD-(Premium)-SMB-Azure-Dateifreigaben verbessern können, einschließlich der Verwendung von SMB Multichannel und dem Zwischenspeichern von Metadaten (Vorschau).

Gilt für:

Verwaltungsmodell Abrechnungsmodell Medienebene Redundanz KMU NFS
Microsoft.Storage Bereitgestellt v2 HDD (Standard) Lokal (LRS) Ja Nein
Microsoft.Storage Bereitgestellt v2 HDD (Standard) Zone (ZRS) Ja Nein
Microsoft.Storage Bereitgestellt v2 HDD (Standard) Geografischer Raum (GRS) Ja Nein
Microsoft.Storage Bereitgestellt v2 HDD (Standard) GeoZone (GZRS) Ja Nein
Microsoft.Storage Bereitgestellt v1 SSD (Premium) Lokal (LRS) Ja Nein
Microsoft.Storage Bereitgestellt v1 SSD (Premium) Zone (ZRS) Ja Nein
Microsoft.Storage Nutzungsbasierte Bezahlung HDD (Standard) Lokal (LRS) Ja Nein
Microsoft.Storage Nutzungsbasierte Bezahlung HDD (Standard) Zone (ZRS) Ja Nein
Microsoft.Storage Nutzungsbasierte Bezahlung HDD (Standard) Geografischer Raum (GRS) Ja Nein
Microsoft.Storage Nutzungsbasierte Bezahlung HDD (Standard) GeoZone (GZRS) Ja Nein

Optimieren der Leistung

Die folgenden Tipps können Ihnen helfen, die Leistung zu optimieren:

  • Stellen Sie sicher, dass Sich Ihr Speicherkonto und Ihr Client in derselben Azure-Region befinden, um die Netzwerklatenz zu verringern.
  • Verwenden Sie Multithreaded-Anwendungen, und verteilen Sie die Last auf mehrere Dateien.
  • Die Leistungsvorteile von SMB Multichannel erhöhen sich mit der Anzahl der Dateien, die die Last verteilen.
  • Die Leistung von SSD-Freigaben ist an die bereitgestellte Freigabegröße gebunden, einschließlich IOPS und Durchsatz sowie einzelner Dateigrenzwerte. Ausführliche Informationen finden Sie unter Grundlegendes zum Bereitstellungsmodell v1.
  • Die maximale Leistung eines einzelnen VM-Clients ist weiterhin an VM-Grenzwerte gebunden. Beispielsweise unterstützt Standard_D32s_v3 eine maximale Bandbreite von ca. 1,86 GiB/s. Der Ausgangsverkehr von der VM (Schreibvorgänge in den Speicher) wird getaktet, aber der Eingangsverkehr (Lesevorgänge aus dem Speicher) nicht. Die Leistung der Dateifreigabe hängt unter anderem von den Grenzwerten des Computernetzwerks, den CPUs, dem internen Speicher, der verfügbaren Netzwerkbandbreite, den E/A-Größen und der Parallelität ab.
  • Der erste Test dient in der Regel zum Aufwärmen. Verwerfen Sie die Ergebnisse, und wiederholen Sie den Test.
  • Wenn die Leistung durch einen einzelnen Client begrenzt ist und die Workload noch unter den bereitgestellten Freigabegrenzwerten liegt, können Sie eine höhere Leistung erzielen, indem Sie die Last über mehrere Clients verteilen.

Beziehung zwischen IOPS, Durchsatz und E/A-Größen

Durchsatz = E/A-Größe * IOPS

Höhere E/A-Größen steigern den Durchsatz und weisen höhere Latenzen auf, was zu einer niedrigeren Anzahl von Netto-IOPS führt. Kleinere E/A-Größen führen zu höheren IOPS, führen jedoch zu einem niedrigeren Nettodurchsatz und zu geringeren Latenzen. Weitere Informationen finden Sie unter Grundlegendes zur Leistung für Azure Files.

SMB Multichannel

SMB Multichannel ermöglicht einem SMB-Client das Herstellen mehrerer Netzwerkverbindungen mit einer SMB-Dateifreigabe. Azure Files unterstützt SMB Multichannel bei SSD-Dateifreigaben für Windows-Clients. Auf der Dienstseite ist SMB Multichannel jetzt standardmäßig für alle neu erstellten Speicherkonten in allen Azure-Regionen aktiviert. Es gibt keine zusätzlichen Kosten für die Aktivierung von SMB Multichannel.

Vorteile

SMB Multichannel ermöglicht es Clients, mehrere Netzwerkverbindungen zu verwenden, die eine bessere Leistung bereitstellen, während gleichzeitig die Betriebskosten gesenkt werden. Bessere Leistung wird durch Bandbreitenaggregation über mehrere NICs und die Nutzung der Unterstützung für die empfangsseitige Skalierung (Receive Side Scaling, RSS) bei NICs erzielt, um die E/A-Last auf mehrere CPUs zu verteilen.

  • Erhöhter Durchsatz: Mehrere Verbindungen ermöglichen das parallele Übertragen von Daten über mehrere Pfade. Davon profitieren diejenigen Workloads erheblich, die größere Dateigrößen mit größeren E/A-Größen verwenden und hohen Durchsatz von einer einzelnen VM oder einer kleineren Gruppe von VMs erfordern. Zu diesen Workloads zählen Medien- und Unterhaltungsdatenflüsse für Inhaltserstellung oder Transcodierung, Genomik und Finanzdienst-Risikoanalyse.
  • Höhere IOPS: Die NIC-RSS-Funktion ermöglicht eine effektive Lastenverteilung auf mehrere CPUs mit mehreren Verbindungen. Dies ermöglicht eine höhere IOPS-Skalierung und eine effektive Auslastung von VM-CPUs. Dies ist für Workloads mit kleinen E/A-Größen nützlich, z. B. für Datenbankanwendungen.
  • Netzwerkfehlertoleranz: Mehrere Verbindungen vermindern das Risiko von Unterbrechungen, da Clients nicht mehr von einer einzelnen Verbindung abhängig sind.
  • Automatische Konfiguration: Wenn SMB Multichannel für Clients und Speicherkonten aktiviert ist, ermöglicht dies die dynamische Ermittlung vorhandener Verbindungen und das Erstellen zusätzlicher Verbindungspfade bei Bedarf.
  • Kostenoptimierung: Workloads können von einer einzelnen VM oder einer kleinen Gruppe von VMs aus besser skalieren, während sie eine Verbindung zu SSD-Dateifreigaben aufbauen. Dies kann die Gesamtbetriebskosten verringern, indem die Anzahl der zum Ausführen und Verwalten einer Workload erforderlichen VMs reduziert wird.

Weitere Informationen zu SMB Multichannel finden Sie in der Windows-Dokumentation.

Diese Funktion bietet größere Leistungsvorteile für Multithreadanwendungen, hilft aber in der Regel Singlethreadanwendungen nicht. Weitere Informationen finden Sie im Abschnitt Leistungsvergleich.

Einschränkungen

SMB Multichannel für Azure-Dateifreigaben weist derzeit die folgenden Einschränkungen auf:

  • Nur für SSD-Dateifreigaben verfügbar. Nicht für HDD-Azure-Dateifreigaben verfügbar.
  • Wird nur für Clients unterstützt, die SMB 3.1.1 verwenden. Stellen Sie sicher, dass die SMB-Clientbetriebssysteme auf empfohlene Ebenen gepatcht sind.
  • Die maximale Anzahl von Kanälen beträgt vier. Ausführliche Informationen finden Sie hier.

Konfiguration

SMB Multichannel funktioniert nur, wenn die Funktion sowohl auf der Clientseite (Ihr Client) als auch auf der Dienstseite (Ihr Azure-Speicherkonto) aktiviert ist.

SMB Multichannel ist auf Windows-Clients standardmäßig aktiviert. Sie können Ihre Konfiguration überprüfen, indem Sie den folgenden PowerShell-Befehl ausführen:

Get-SmbClientConfiguration | Select-Object -Property EnableMultichannel

Wenn SMB Multichannel für Ihr Azure-Speicherkonto nicht aktiviert ist, lesen Sie den SMB Multichannel-Status.

Deaktivieren von SMB Multichannel

In den meisten Szenarien, insbesondere Multithread-Workloads, sehen Clients eine verbesserte Leistung mit SMB Multichannel. Für einige spezifische Szenarien (z. B. für Singlethreadworkloads oder zu Testzwecken) möchten Sie jedoch möglicherweise SMB Multichannel deaktivieren. Weitere Informationen finden Sie unter Leistungsvergleich und Status von SMB Multichannel.

Überprüfen, ob SMB Multichannel ordnungsgemäß konfiguriert ist

  1. Erstellen Sie eine neue SSD-Dateifreigabe, oder verwenden Sie eine vorhandene SSD-Dateifreigabe.
  2. Stellen Sie sicher, dass Ihr Client SMB Multichannel unterstützt (für mindestens einen Netzwerkadapter ist empfangsseitige Skalierung aktiviert). Weitere Informationen finden Sie in der Windows-Dokumentation.
  3. Binden Sie eine Dateifreigabe in Ihren Client ein.
  4. Generieren Sie mit Ihrer Anwendung eine Auslastung. Ein Kopiertool, z. B. robocopy /MT oder ein beliebiges Leistungstool wie Diskspd zum Lesen/Schreiben von Dateien kann eine Auslastung generieren.
  5. Öffnen Sie PowerShell als Administrator, und verwenden Sie den folgenden Befehl: Get-SmbMultichannelConnection |fl
  6. Suchen Sie nach den Eigenschaften MaxChannels und CurrentChannels.

Leistungsvergleich

Es gibt zwei Kategorien von Lesen/Schreiben-Workloadmustern: Singlethread und Multithread. Bei den meisten Workloads werden mehrere Dateien verwendet. Es gibt jedoch möglicherweise bestimmte Anwendungsfälle, in denen die Workload eine einzelne Datei in einer Freigabe verwendet. In diesem Abschnitt werden verschiedene Anwendungsfälle und die Leistungsauswirkungen der einzelnen Anwendungsfälle behandelt. Im Allgemeinen sind die meisten Workloads Multithreaded-Anwendungen, die die Workload auf mehrere Dateien verteilen, sodass man mit SMB Multichannel erhebliche Leistungsverbesserungen bemerken sollte.

  • Mehrere Threads/mehrere Dateien: Abhängig vom Workload-Muster sollten Sie eine beträchtliche Leistungsverbesserung in den Lese- und Schreib-E/A-Vorgängen über mehrere Kanäle hinweg beobachten. Die Leistungssteigerungen variieren in Bezug auf IOPS, Durchsatz und Latenz zwischen doppelter und vierfacher Leistung. Für diese Kategorie sollte SMB Multichannel aktiviert werden, um optimale Leistung zu erzielen.
  • Multithread/Einzeldatei: Bei den meisten Anwendungsfällen in dieser Kategorie profitieren Workloads davon, dass SMB Multichannel aktiviert ist, insbesondere wenn die Workload eine durchschnittliche E/A-Größe aufweist, die größer als 16 KiB ist. Einige Beispielszenarien, die von SMB Multichannel profitieren, sind die Sicherung oder Wiederherstellung einer einzelnen großen Datei. Eine Ausnahme, bei der Sie SMB Multichannel möglicherweise deaktivieren möchten, besteht dann, wenn Ihre Workload viele kleine E/As durchführt. In diesem Fall könnte es zu einem geringfügigen Leistungsverlust von 10 % kommen. Abhängig vom Anwendungsfall sollten Sie die Last auf mehrere Dateien verteilen oder die Funktion deaktivieren. Weitere Informationen finden Sie im Abschnitt Konfiguration.
  • Singlethread/mehrere Dateien oder einzelne Datei: Bei den meisten Singlethreadworkloads gibt es minimale Leistungsvorteile aufgrund fehlender Parallelität. In der Regel gibt es eine geringfügige Leistungsbeeinträchtigung von 10%, wenn SMB Multichannel aktiviert ist. In diesem Fall ist es mit einer Ausnahme ideal, SMB Multichannel zu deaktivieren. Wenn die Workload eines einzelnen Threads die Auslastung über mehrere Dateien verteilen kann und eine durchschnittlich größere I/O-Größe (größer als 16 KiB) verwendet, sollten sich leichte Leistungsvorteile durch SMB Multichannel ergeben.

Leistungstestkonfiguration

Für die Diagramme in diesem Artikel wurde die folgende Konfiguration verwendet: Eine einzelne VM des Typs Standard D32s v3 mit einer einzelnen RSS-fähigen NIC mit vier Kanälen. Die Last wurde mithilfe von „diskspd.exe“, Multithread mit E/A-Tiefe 10 und zufälliger E/A mit verschiedenen E/A-Größen generiert.

Multithreading-/mehrere Dateien mit SMB Multichannel

Die Auslastung wurde für 10 Dateien mit verschiedenen E/A-Größen generiert. Die Testergebnisse für horizontales Hochskalieren zeigten deutliche Verbesserungen bei den IOPS- und Durchsatztestergebnissen mit aktiviertem SMB Multichannel. Die Ergebnisse werden in den folgenden Diagrammen dargestellt:

Diagramm der Leistung.

Diagramm der Durchsatzleistung.

  • Für eine einzelne NIC wurde für Lesevorgänge eine zwei- bis dreifache Leistungssteigerung beobachtet und für Schreibvorgänge eine zwei- bis vierfache Steigerung in Bezug auf IOPS und Durchsatz.
  • SMB Multichannel ermöglichte es IOPS und Durchsatz, VM-Grenzwerte auch mit einer einzelnen NIC und dem Grenzwert von vier Kanälen zu erreichen.
  • Da der Ausgang (oder Lesezugriff auf den Speicher) nicht getaktet wird, konnte der Lesedurchsatz die veröffentlichte VM-Grenze von ca. 1,86 GiB /s überschreiten. Der Test erreichte mehr als 2,7 GiB / Sek. Ein- (oder Schreibvorgänge in den Speicher) unterliegen weiterhin VM-Grenzwerten.
  • Das Verteilen der Last auf mehrere Dateien hat für beträchtliche Verbesserungen gesorgt.

Ein Beispielbefehl, der in diesem Test verwendet wurde, ist Folgender:

diskspd.exe -W300 -C5 -r -w100 -b4k -t8 -o8 -Sh -d60 -L -c2G -Z1G z:\write0.dat z:\write1.dat z:\write2.dat z:\write3.dat z:\write4.dat z:\write5.dat z:\write6.dat z:\write7.dat z:\write8.dat z:\write9.dat .

Multithread-/Einzeldateiworkloads mit SMB Multichannel

Die Auslastung wurde für eine einzelne 128 GiB-Datei generiert. Bei aktiviertem SMB Multichannel zeigte der Skalierungstest mit mehreren Threads/einzelnen Dateien in den meisten Fällen Verbesserungen. Die Ergebnisse werden in den folgenden Diagrammen dargestellt:

Diagramm der IOPS-Leistung.

Diagramm der Durchsatzleistung einer einzelnen Datei.

  • Bei einer einzelnen NIC mit einer größeren durchschnittliche E/A-Größe (größer als 16 KiB) gab es erhebliche Verbesserungen bei Lese- und Schreibvorgängen.
  • Bei kleineren E/A-Größen gab es einen leichten Einfluss von ca. 10 % auf die Leistung bei aktiviertem SMB Multichannel. Dies kann behoben werden, indem Sie die Last auf mehrere Dateien verteilen oder die Funktion deaktivieren.
  • Die Leistung wird weiterhin durch Grenzwerte für eine einzelne Datei beschränkt.

Zwischenspeichern von Metadaten für SSD-Dateifreigaben

Die Metadatenzwischenspeicherung ist eine Verbesserung für SSD-Azure-Dateifreigaben, die die Metadatenlatenz verringert und Grenzwerte für die Metadatenskalierung erhöht. Das Feature erhöht die Latenzkonsistenz und die verfügbaren IOPS und erhöht den Netzwerkdurchsatz.

Dieses Feature verbessert die Leistung der folgenden Metadaten-APIs. Sowohl Windows- als auch Linux-Clients können sie verwenden:

  • Höhere Skalierungsgrenzwerte für Metadaten
  • Erhöhen der Latenzkonsistenz, der verfügbaren IOPS und des Netzwerkdurchsatzes

Dieses Feature verbessert die folgenden Metadaten-APIs und kann sowohl von Windows- als auch von Linux-Clients verwendet werden:

  • Erstellen
  • Öffnen
  • Schließen
  • Löschen

Derzeit ist die Funktion nur für SSD-Dateifreigaben verfügbar. Es gibt keine zusätzlichen Kosten für die Verwendung dieses Features. Sie können sich auch registrieren, um die Grenzwerte für das Dateihandle für SSD-Dateifreigaben (Vorschau) zu erhöhen.

Registrieren Sie sich für die Funktion zur Metadatenzwischenspeicherung

Um loszulegen, registrieren Sie sich über das Azure-Portal oder die Azure PowerShell für dieses Feature.

  1. Melden Sie sich beim Azure-Portal an.
  2. Suchen Sie nach Vorschaufunktionen und wählen Sie sie aus.
  3. Wählen den Filter Typ und anschließend Microsoft.Storage aus.
  4. Wählen Sie Metadatencache von Azure Premium Files und dann Registrieren aus.

Wichtig

  • Obwohl unter "Vorschaufeatures" aufgeführt, berücksichtigen wir GA SLAs und machen dies bald zur Standardeinstellung für alle Konten, wodurch die Notwendigkeit für die Registrierung entfernt wird.
  • Sobald AFEC registriert ist, wenden Sie sich bitte an azfilespreview@microsoft.com für weitere Anweisungen.

Leistungsverbesserungen beim Zwischenspeichern von Metadaten

Die meisten Workloads oder Verwendungsmuster, die Metadaten enthalten, können vom Zwischenspeichern von Metadaten profitieren. Um festzustellen, ob Ihre Workload Metadaten enthält, können Sie Azure Monitor verwenden, um die Transaktionen nach API-Dimension aufzuteilen.

Zu den typischen Metadaten-lastigen Workloads und Verwendungsmustern gehören:

  • Web-/App-Dienste
  • DevOps-Aufgaben
  • Indizierungs-/Batchaufträge
  • Virtuelle Desktops mit Stammverzeichnissen oder anderen Workloads, die hauptsächlich mit vielen kleinen Dateien, Verzeichnissen oder Handles interagieren

Die folgenden Diagramme zeigen die möglichen Ergebnisse.

Verringern der Metadatenwartezeit

Durch das Zwischenspeichern von Datei- und Verzeichnispfaden für zukünftige Lookups kann das Zwischenspeichern von Metadaten die Wartezeit für Dateien und Verzeichnisse mit häufig verwendeten Dateien und Verzeichnissen um 30 % oder mehr reduzieren, wenn es sich um Metadaten-lastige Workloads im großen Stil handelt.

Diagramm mit Latenz in Millisekunden mit und ohne Zwischenspeichern von Metadaten.

Erhöhen der verfügbaren IOPS

Das Zwischenspeichern von Metadaten kann die verfügbaren IOPS für Metadaten-lastige Workloads im großen Stil um mehr als 60 % erhöhen.

Diagramm mit verfügbaren IOPS mit und ohne Zwischenspeicherung von Metadaten.

Erhöhen des Netzwerkdurchsatzes

Das Zwischenspeichern von Metadaten kann den Netzwerkdurchsatz für Metadaten-lastige Workloads im großen Stil um mehr als 60 % erhöhen.

Diagramm, das den Netzwerkdurchsatz mit und ohne Zwischenspeicherung von Metadaten zeigt.

Registrieren für erhöhte Grenzwerte für das Dateihandle (Vorschau)

Um die maximale Anzahl gleichzeitiger Handles pro Datei und Verzeichnis für SSD SMB-Dateifreigaben von 2.000 auf 10.000 zu erhöhen, registrieren Sie sich für das Vorschaufeature über das Azure-Portal oder Azure PowerShell. Wenn Sie Fragen haben, senden Sie eine E-Mail an azfilespreview@microsoft.com.

  1. Melden Sie sich beim Azure-Portal an.
  2. Suchen Sie nach Vorschaufunktionen und wählen Sie sie aus.
  3. Wählen den Filter Typ und anschließend Microsoft.Storage aus.
  4. Wählen Sie die Anzahl der erweiterten geöffneten Ziehpunkte für Azure Premium Files aus, und wählen Sie dann Registrieren aus.

Nächste Schritte