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-west1befinden, müssen sich Ihre Client-VM und Ihre Filestore-Instanz inus-central1befinden.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.