Verbessern der Leistung für SMB Azure-Dateifreigaben
In diesem Artikel wird erläutert, wie Sie die Leistung für Premium SMB Azure-Dateifreigaben verbessern können, einschließlich der Verwendung von SMB Multichannel und dem Zwischenspeichern von Metadaten (Vorschau).
Gilt für:
Dateifreigabetyp | SMB | NFS |
---|---|---|
Standard-Dateifreigaben (GPv2), LRS/ZRS | ||
Standard-Dateifreigaben (GPv2), GRS/GZRS | ||
Premium-Dateifreigaben (FileStorage), LRS/ZRS |
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 Netzwerkwartezeit zu reduzieren.
- Verwenden Sie Multithreadanwendungen, und verteilen Sie die Last auf mehrere Dateien.
- Die Leistungsvorteile von SMB Multichannel erhöhen sich mit der Anzahl von Dateien, auf die die Last verteilt wird.
- Die Leistung einer Premium-Freigabe wird durch die bereitgestellte Freigabegröße (IOPS/Ausgang/Eingang) und Grenzwerte für eine einzelne Datei beschränkt. Einzelheiten dazu finden Sie unter Grundlegendes zur Bereitstellung für Premium-Dateifreigaben.
- Die maximale Leistung eines einzelnen VM-Clients ist weiterhin an VM-Grenzwerte gebunden. Beispielsweise kann Standard_D32s_v3 eine maximale Bandbreite von 16.000 MBit/s (oder 2 GBit/s) unterstützen. Die ausgehenden Vorgänge von der VM (Schreibvorgänge in den Speicher) werden gemessen, eingehende Vorgänge (Lesevorgänge aus dem Speicher) hingegen 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 beschränkt ist und die Workload noch immer unter den bereitgestellten Freigabegrenzwerten liegt, können Sie eine höhere Leistung erreichen, indem Sie die Last auf mehrere Clients verteilen.
Beziehung zwischen IOPS, Durchsatz und E/A-Größen
Durchsatz = E/A-Größe * IOPS
Höhere E/A-Größen führen zu höherem Durchsatz und zu längeren Wartezeiten, was eine geringere Anzahl von Netto-IOPS zur Folge hat. Geringere E/A-Größen führen zu höheren IOPS, haben aber auch einen geringeren Nettodurchsatz und kürzere Wartezeiten zur Folge. 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 Premium-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 fallen keine zusätzlichen Kosten für die Aktivierung von SMB Multichannel an.
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 Verwendung der Unterstützung für die emfpangsseitige Skalierung (Receive Side Scaling, RSS) für 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 eine höhere Skalierung von einer einzelnen VM oder einer kleinen Gruppe von VMs erreichen, während eine Verbindung mit Premium-Freigaben hergestellt wird. 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 Azure-Premium-Dateifreigaben verfügbar. Nicht für Azure-Standarddateifreigaben verfügbar.
- Wird nur für Windows-Clients unterstützt, die SMB 3.1.1 verwenden. Stellen Sie sicher, dass die SMB-Clientbetriebssysteme auf empfohlene Ebenen gepatcht sind.
- Dies wird für Linux-Clients derzeit nicht unterstützt oder empfohlen.
- Die maximale Anzahl von Kanälen ist vier. Einzelheiten dazu 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 bei Multithreadworkloads) sollte für Clients eine verbesserte Leistung mit SMB Multichannel auftreten. 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
- Erstellen Sie eine Premium-Dateifreigabe, oder verwenden Sie eine vorhandene Premium-Freigabe.
- 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.
- Binden Sie eine Dateifreigabe in Ihren Client ein.
- 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.
- Öffnen Sie PowerShell als Administrator, und verwenden Sie den folgenden Befehl:
Get-SmbMultichannelConnection |fl
- 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 Multithreadanwendungen und verteilen die Workload auf mehrere Dateien, sodass Sie mit SMB Multichannel bedeutende Leistungsverbesserungen bemerken sollten.
- Multithread/mehrere Dateien: Abhängig vom Workloadmuster sollten Sie eine beträchtliche Leistungsverbesserung in den Lese- und Schreib-E/As über mehrere Kanäle hinweg sehen. 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/einzelne Datei: Für die meisten Anwendungsfälle in dieser Kategorie werden Workloads von der Aktivierung von SMB Multichannel profitieren. Dies gilt insbesondere dann, wenn die Workload über eine durchschnittliche E/A-Größe > ~16K verfügt. 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 kommt es zu einer geringfügigen Leistungsminderung von ~10 %, wenn SMB Multichannel aktiviert ist. In diesem Fall ist es mit einer Ausnahme ideal, SMB Multichannel zu deaktivieren. Wenn die Singlethreadworkload die Last auf mehrere Dateien verteilen kann und eine durchschnittlich höhere E/A-Größe (> ~16K) verwendet, sollten durch SMB Multichannel geringfügige Leistungsvorteile auftreten.
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.
Size | vCPU | Memory: GiB | Temporärer Speicher (SSD): GiB | Max. Anzahl Datenträger | Maximaler Durchsatz (Cache und temporärer Speicher): IOPS/MBit/s (Cachegröße in GiB) | Maximaler Durchsatz des Datenträgers ohne Cache: IOPS/MBit/s | Maximale Anzahl NICs | Erwartete Netzwerkbandbreite (MBit/s) |
---|---|---|---|---|---|---|---|---|
Standard_D32s_v3 | 32 | 128 | 256 | 32 | 64000/512 (800) | 51200/768 | 8 | 16000 |
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:
- 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 ausgehende Vorgänge (oder Lesevorgänge des Speichers) nicht gemessen werden, konnte der Lesedurchsatz den von der VM veröffentlichten Grenzwert von 16.000 MBit/s (2 GiB/s) überschreiten. Beim Test wurden >2,7 GiB/s erzielt. Eingehende Vorgänge (oder Schreibvorgänge in den Speicher) unterliegen weiterhin den 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 Hochskalierungstest mit Multithread/Einzeldateien in den meisten Fällen Verbesserungen. Die Ergebnisse werden in den folgenden Diagrammen dargestellt:
- Bei einer einzelnen NIC mit größerer durchschnittlicher E/A-Größe (> ~16K) gab es bedeutende Verbesserungen sowohl bei Lese- wie auch Schreibvorgängen.
- Bei kleineren E/A-Größen gab es eine leichte Auswirkung von ~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 Premium SMB-Dateifreigaben
Das Zwischenspeichern von Metadaten ist eine Verbesserung für Premium-SMB-Azure-Dateifreigaben, die Folgendes verbessern soll:
- Verringern der Metadatenwartezeit
- Höhere Skalierungsgrenzwerte für Metadaten
- Erhöhen der Latenzkonsistenz, der verfügbaren IOPS und des Netzwerkdurchsatzes
Diese Previewfunktion verbessert die folgenden Metadaten-APIs und kann sowohl von Windows- als auch Linux-Clients verwendet werden:
- Erstellen
- Öffnen Sie den
- Schließen
- Löschen
Derzeit ist diese Previewfunktion nur für Premium SMB-Dateifreigaben (Dateifreigaben des Typs FileStorage-Speicherkonto) verfügbar. Es gibt keine zusätzlichen Kosten bei der Verwendung dieses Features.
Registrierung für das Feature
Um loszulegen, registrieren Sie sich über das Azure-Portal oder die Azure PowerShell für dieses Feature.
- Melden Sie sich beim Azure-Portal an.
- Suchen Sie nach Vorschaufeatures, und wählen Sie das Ergebnis aus.
- Wählen den Filter Typ und anschließend Microsoft.Storage aus.
- Wählen Sie Azure Premium Files Metadata Cache Preview und dann Registrieren aus.
Wichtig
Warten Sie 1–2 Tage, bis die Konten eingebunden werden, nachdem die Registrierung abgeschlossen wurde.
Regionale Verfügbarkeit
Derzeit ist die Vorschau für das Zwischenspeichern von Metadaten nur in den folgenden Azure-Regionen verfügbar. Um zusätzliche regionale Unterstützung anzufordern, registrieren Sie sich für die öffentliche Vorschau.
- Asien, Osten
- Australien, Mitte
- Australien (Osten)
- Australien, Südosten
- Brasilien Süd
- Kanada, Mitte
- Kanada, Osten
- Europa, Norden
- Europa, Westen
- Frankreich, Mitte
- Deutschland, Westen-Mitte
- Japan, Osten
- Japan, Westen
- Jio Indien, Westen
- Indien, Mitte
- Indien, Süden
- Indien, Westen
- Israel, Mitte
- Italien, Norden
- Korea, Mitte
- Korea, Süden
- Mexiko, Mitte
- Norwegen, Osten
- Polen, Mitte
- Katar, Mitte
- Spanien, Mitte
- Südafrika, Norden
- Schweden, Mitte
- Schweiz, Norden
- Vereinigte Arabische Emirate, Norden
- UK, Westen
- UK, Süden
- USA, Norden-Mitte
- USA, Süden-Mitte
- USA, Westen-Mitte
- USA, Westen 2
- USA, Westen 3
Tipp
Da wir die regionale Unterstützung für das Feature „Metadatencache“ erweitern, werden Premium-Dateispeicherkonten in den betreffenden Regionen automatisch für alle Abonnements, die für die Funktion „Zwischenspeichern von Metadaten“ registriert wurden, aktiviert.
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.
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.
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.
Nächste Schritte
- Überprüfen des Status von SMB Multichannel
- Weitere Informationen finden Sie in der Windows-Dokumentation für SMB Multichannel