Instanzleistung

Auf dieser Seite werden die für Filestore-Instanzen verfügbaren Leistungsoptionen vorgestellt und allgemeine Empfehlungen zur Leistungsoptimierung gegeben. Wenn Sie in der Google Cloud Console zonale und regionale Instanzen erstellen, ist die benutzerdefinierte Leistung standardmäßig aktiviert. So können Sie IOPS unabhängig von der Kapazität skalieren, um die spezifischen Anforderungen Ihrer Arbeitslast zu erfüllen.

In der folgenden Tabelle sind die Leistungsgrenzwerte für die niedrigeren und höheren Kapazitätsbereiche unter benutzerdefinierten Leistungseinstellungen zusammengefasst:

Kapazitätsbereich Dienststufe Kapazität Bereitgestellte IOPS pro TiB
Niedriger Kapazitätsbereich Regional 100 GiB bis 10.239 GiB 4.000 bis 17.000
Zonal 1 TiB bis 9,75 TiB 4.000 bis 17.000
Höherer Kapazitätsbereich Regional 10 TiB bis 100 TiB 3.000 bis 7.500
Zonal 10 TiB bis 100 TiB 3.000 bis 7.500

Leistungsberechnungen nachvollziehen

In der folgenden Tabelle sind Leistungsberechnungen basierend auf den bereitgestellten IOPS pro TiB und der zugewiesenen Kapazität aufgeführt. Die Berechnungen basieren auf verschiedenen Kapazitätsbereichen, um zu zeigen, wie sich die Werte für Lese-IOPS, Schreib-IOPS, Lesedurchsatz und Schreibdurchsatz für die minimalen und maximalen IOPS pro TiB-Werte ändern.

Weitere Informationen finden Sie unter Lese- und Schreib-IOPS.

Kapazitätsbereich Minimale und maximale bereitgestellte
-IOPS pro TiB
Kapazität IOPS für Lesevorgänge IOPS für Schreibvorgänge Lesedurchsatz (MiB/s) Durchsatz für Schreibvorgänge (MiB/s) Lesedurchsatz für einen einzelnen Client (MiB/s) Schreibdurchsatz für einen einzelnen Client (MiB/s)
Niedrigerer Kapazitätsbereich
(100 GiB bis 10.239 GiB)
4.000 100 GiB 2.000* 600 47 16 47 16
600 GiB 2.344 703 55 19 55 19
1.024 GiB 4.000 1.200 94 32 94 32
10.239 GiB 39.996 11.999 940 320 450 260
17.000 100 GiB 2.000 600 47 16 47 16
600 GiB 9.961 2.988 234 80 234 80
1.024 GiB 17.000 5.100 400 136 400 136
10.239 GiB 169.983 50.995 3.995 1.360 450 260
Höherer Kapazitätsbereich 
(10 TiB bis 100 TiB)
3.000 10 TiB 30.000 9.000 705 240 705 240
7.500 100 TiB 750.000 225.000 17.625 6.000 1.600 800

* Für 1.024-GiB-Instanzen muss die benutzerdefinierte Leistung mit mindestens 2.000 IOPS aktiviert sein. Weitere Informationen finden Sie unter Instanzen mit geringer Kapazität.

Leistungsskalierung

In Szenarien mit einem oder wenigen Clients müssen Sie die Anzahl der TCP-Verbindungen mit der Bereitstellungsoption nconnect erhöhen, um die maximale NFS-Leistung zu erreichen.

Für bestimmte Dienststufen empfehlen wir, die folgende Anzahl von Verbindungen zwischen Client und Server anzugeben:

Stufe Kapazität Anzahl der Verbindungen
Regional, zonal 1–9,75 TiB nconnect=2
Regional, zonal 10–100 TiB nconnect=7
Basic SSD - nconnect=7
Enterprise - nconnect=2
Hochskalierte SSD - nconnect=7

Im Allgemeinen gilt: Je größer die Dateifreigabekapazität und je weniger Client-VMs verbunden sind, desto mehr Leistung erzielen Sie, wenn Sie zusätzliche Verbindungen mit nconnect angeben.

Empfohlener Client-Maschinentyp

Wir empfehlen einen Compute Engine-Maschinentyp wie n2-standard-8, der eine Bandbreite für ausgehenden Traffic von mindestens 16 Gbit/s bietet. Mit dieser Bandbreite für ausgehenden Traffic kann der Client eine Lesebandbreite von etwa 16 Gbit/s für cachefreundliche Arbeitslasten erreichen. Weitere Informationen finden Sie unter Netzwerkbandbreite.

Bereitstellungsoptionen für Linux-Clients

Wir empfehlen die Verwendung der folgenden NFS-Bereitstellungsoptionen, insbesondere hard-Bereitstellung, async sowie die Optionen rsize und wsize, um die beste Leistung auf Linux-Client-VM-Instanzen zu erzielen. Weitere Informationen zu NFS-Bereitstellungsoptionen finden Sie unter nfs.

Standardeinstellung Beschreibung
hard Der NFS-Client wiederholt NFS-Anforderungen auf unbestimmte Zeit.
timeo=600 Der NFS-Client wartet 600 Dezisekunden (60 Sekunden), bevor eine NFS-Anforderung wiederholt wird.
retrans=3 Der NFS-Client versucht dreimal, NFS-Anforderungen zu erfüllen, bevor weitere Wiederherstellungsmaßnahmen ergriffen werden.
rsize=524288 Der NFS-Client kann pro READ-Anfrage maximal 524.288 Byte vom NFS-Server empfangen.
Hinweis: Legen Sie für Instanzen der Basisstufe den Wert rsize auf 1048576 fest.
wsize=524288 Der NFS-Client kann pro WRITE-Anfrage maximal 524.288 Byte an den NFS-Server senden.
resvport Der NFS-Client verwendet einen privilegierten Quellport, wenn er mit dem NFS-Server für diesen Bereitstellungspunkt kommuniziert.
async Der NFS-Client verzögert das Senden von Anwendungsschreibvorgängen an den NFS-Server, bis bestimmte Bedingungen erfüllt sind.
Achtung: Durch die Verwendung der Option sync wird die Leistung erheblich reduziert.

NFS-Lesedurchsatz mit dem Parameter read_ahead_kb optimieren

Der NFS-Parameter read_ahead_kb gibt die Datenmenge in Kilobyte an, die der Linux-Kernel bei einem sequenziellen Lesevorgang vorab abrufen soll. Daher können die nachfolgenden Leseanfragen direkt aus dem Speicher verarbeitet werden, um die Latenz zu reduzieren und die Gesamtleistung zu verbessern.

Bei Linux-Kernel-Versionen ab 5.4 verwendet der Linux-NFS-Client einen Standardwert für read_ahead_kb von 128 KB. Wir empfehlen, diesen Wert auf 20 MB zu erhöhen, um den sequenziellen Lesedurchsatz zu verbessern.

Nachdem Sie die Dateifreigabe erfolgreich auf der Linux-Client-VM bereitgestellt haben, können Sie den Parameterwert read_ahead_kb mit dem folgenden Skript manuell anpassen:

mount_point=MOUNT_POINT_DIRECTORY
device_number=$(stat -c '%d' $mount_point)
((major = ($device_number & 0xFFF00) >> 8))
((minor = ($device_number & 0xFF) | (($device_number >> 12) & 0xFFF00)))
sudo bash -c "echo 20480 > /sys/class/bdi/$major:$minor/read_ahead_kb"

Ersetzen Sie Folgendes:

MOUNT_POINT_DIRECTORY ist der Pfad zum Verzeichnis, in dem die Dateifreigabe bereitgestellt wird.

Leistung einzelner und mehrerer Client-VMs

Die skalierbaren Filestore-Dienststufen sind für mehrere Client-VMs und nicht für eine einzelne Client-VM leistungsoptimiert.

Für zonale, regionale und Enterprise-Instanzen sind mindestens vier Client-VMs erforderlich, um die volle Leistung nutzen zu können. So wird sichergestellt, dass alle VMs im zugrunde liegenden Filestore-Cluster vollständig genutzt werden.

Zur Veranschaulichung: Der kleinste skalierbare Filestore-Cluster hat vier VMs. Jede Client-VM kommuniziert mit nur einer Filestore-Cluster-VM, unabhängig von der Anzahl der NFS-Verbindungen pro Client, die mit der Mount-Option nconnect angegeben werden. Wenn Sie eine einzelne Client-VM verwenden, werden Lese- und Schreibvorgänge nur von einer einzelnen Filestore-Cluster-VM ausgeführt.

Kapazitätsbasierte Leistungsgrenzen

Kapazitätsbasierte Limits gelten für Dienststufen, die keine benutzerdefinierte Leistung unterstützen, z. B. Basic-Stufen, oder für Instanzen, in denen Sie die benutzerdefinierte Leistung manuell deaktivieren.

Jede Filestore-Dienststufe bietet eine andere Leistungsebene, die aufgrund von Faktoren wie der Verwendung von Caching, der Anzahl der Client-VMs, dem Maschinentyp der Client-VMs und der getesteten Arbeitslast variieren kann.

In der folgenden Tabelle ist die maximale Leistung aufgeführt, die Sie erreichen können, wenn Sie die Mindest- und Höchstkapazität für jede Dienststufe festlegen. Alle Tabellenwerte sind geschätzte Limits.

Dienststufe Kapazität IOPS für Lesevorgänge IOPS für Schreibvorgänge Lesedurchsatz (MiB/s) Durchsatz für Schreibvorgänge (MiB/s) Lesedurchsatz für einen einzelnen Client (MiB/s) Schreibdurchsatz für einen einzelnen Client (MiB/s)
Zonal 1 TiB 9.200 2.600 260 88 260 88
9,75 TiB 89.700 25.350 2.535 858 450 260
10 TiB 92.000 26.000 2.600 880 1.600 800
100 TiB 920.000 260.000 26.000 8.800 1.600 800
Regional 1 TiB 12.000 4.000 120 100 120 100
9,75 TiB 117.000 39.000 1.170 975 450 260
10 TiB 92.000 26.000 2.600 880 1.600 800
100 TiB 920.000 260.000 26.000 8.800 1.600 800
Enterprise 1 TiB 12.000 4.000 120 100 120 100
10 TiB 120.000 40.000 1.200 1.000 450 260
Basic HDD 1 TiB bis 10 TiB 600 1.000 100 100 100 100
10 TiB bis 63,9 TiB 1.000 5.000 180 120 180 120
Basic SSD 2,5 TiB bis 63,9 TiB 60.000 25.000 1.200 350 1.200 350

Leistung für Google Cloud Ressourcen verbessern

Vorgänge für mehrere Google Cloud Ressourcen, z. B. das Kopieren von Daten aus Cloud Storage in eine Filestore-Instanz mit der Google Cloud CLI, können langsam sein. So können Sie Leistungsprobleme beheben:

  • Der Cloud Storage-Bucket, die Client-VM und die Filestore-Instanz müssen sich alle in derselben Region befinden.

    Dual-Regionen bieten eine Option mit maximaler Leistung für in Cloud Storage gespeicherte Daten. Wenn Sie diese Option verwenden, müssen sich die anderen Ressourcen in einer der einzelnen Regionen befinden, die in der Dual-Region enthalten sind. Wenn sich Ihre Cloud Storage-Daten beispielsweise in us-central1,us-west1 befinden, müssen sich Ihre Client-VM und Ihre Filestore-Instanz in us-central1 befinden.

  • Prüfen Sie als Referenz die Leistung einer VM mit einem angehängten Persistent Disk (PD) und vergleichen Sie sie mit der Leistung einer Filestore-Instanz.

    • Wenn die Leistung der VM mit angehängtem PD ähnlich oder langsamer ist als die der Filestore-Instanz, kann dies auf einen Leistungsengpass hinweisen, der nicht mit Filestore zusammenhängt. Wenn Sie die grundlegende Leistung Ihrer Nicht-Filestore-Ressourcen verbessern möchten, können Sie die gcloud CLI-Attribute anpassen, die mit parallelen zusammengesetzten Uploads verknüpft sind. Weitere Informationen finden Sie unter So verwenden Tools und APIs parallele zusammengesetzte Uploads.
    • Wenn die Leistung der Filestore-Instanz deutlich langsamer ist als die der VM mit angehängtem
      -PD, versuchen Sie, den Vorgang auf mehrere VMs zu verteilen, um die Leistung von Lesevorgängen aus Cloud Storage zu verbessern.

Nächste Schritte