Parallelstore ist ein vollständig verwaltetes, verteiltes Dateisystem mit niedriger Latenz, das die Anforderungen von KI/ML-Training und Hochleistungs-Computing-Arbeitslasten (HPC) erfüllt, die eine extrem niedrige Latenz (unter einer Millisekunde), vollständige POSIX-Semantik und einen hohen Durchsatz bei Metadatenoperationen erfordern. Parallelstore lässt sich auf Lesegeschwindigkeiten von 1 TB/s und Millionen von IOPS skalieren.
Wenn Sie einen Google Kubernetes Engine-Cluster (GKE) mit einer Parallelstore-Instanz verbinden möchten, verwenden Sie den Parallelstore-CSI-Treiber (Container Storage Interface). Mit dem Parallelstore-CSI-Treiber können Sie die GKE API verwenden, um Parallelstore-Instanzen als Volumes für Ihre zustandsorientierten Arbeitslasten (z. B. Pods und Jobs) zu nutzen. Es ist für KI/ML-Trainingsarbeitslasten optimiert, insbesondere für solche mit kleineren Dateigrößen und zufälligen Lesevorgängen.
GKE aktiviert den CSI-Treiber standardmäßig für Sie, wenn Sie einen neuen GKE Autopilot-Cluster erstellen. In neuen und vorhandenen GKE Standard-Clustern müssen Sie den CSI-Treiber aktivieren.
Vorteile
Mit dem Parallelstore-CSI-Treiber können Sie von Hochleistungsspeicher profitieren. Mit dem Parallelstore-CSI-Treiber können Sie Ihre HPC- und KI/ML-Trainingsarbeitslasten beschleunigen und schnell und konsistent auf freigegebene Daten zugreifen, um sie effizient zu verarbeiten und zu analysieren.
- Sie haben über die Kubernetes APIs Zugriff auf vollständig verwaltete parallele Dateisysteme als Speicher.
- Der Google Kubernetes Engine Parallelstore-CSI-Treiber unterstützt die Zugriffsmodi ReadWriteMany, ReadOnlyMany und ReadWriteOnce.
- Sie können den Google Kubernetes Engine Parallelstore-CSI-Treiber verwenden, um Ihre PersistentVolumes dynamisch bereitzustellen.
- Sie können in Kubernetes-Arbeitslasten auf vorhandene Parallelstore-Instanzen zugreifen. Sie können Parallelstore-Instanzen auch dynamisch erstellen und in Kubernetes-Arbeitslasten mit einem StatefulSet oder einem Deployment verwenden.
Beschränkungen
Datenpersistenz: Parallelstore ist ein „Scratch-plus“-Dateisystem. Sie wird durch lokale SSDs mit 2+1-Erasure-Coding gesichert und die durchschnittliche Zeit bis zum Datenverlust beträgt zwei Monate. Parallelstore ist kein langfristiger Speicher, sondern sollte als extrem schnelles Dateisystem für bestimmte Arbeitslasten betrachtet werden.
Einschränkung pro Pod: In GKE kann nur eine Parallelstore-Instanz pro Pod eingebunden werden.
- Datenübertragungen: Das Übertragen von Daten aus Cloud Storage in Parallelstore wird von der GKE API nicht unterstützt. Verwenden Sie für die Übertragung die Parallelstore API.
- Nutzbare Kapazität: Sie können die Speicherkapazität zwischen 12.000 GiB und 100.000 GiB konfigurieren.
- Unterstützte Zonen: Parallelstore wird in diesen Zonen unterstützt. Wenn sich die Region Ihres Clusters von der Ihrer Parallelstore-Instanz unterscheidet, kommt es zu einem spürbaren Rückgang der E/A-Leistung.
- VPC-SC-Einschränkungen für Parallelstore: Wenn Sie sowohl eine freigegebene VPC als auch VPC Service Controls verwenden, benötigen Sie das Hostprojekt, das das Netzwerk und das Dienstprojekt mit der Parallelstore-Instanz im selben Perimeter bereitstellt, damit die Parallelstore-Instanz ordnungsgemäß funktioniert. Wenn Sie das Hostprojekt und das Dienstprojekt durch einen Perimeter trennen, sind die vorhandenen Instanzen möglicherweise nicht mehr verfügbar und erstellen möglicherweise keine neuen Instanzen.
- Unterstützung von ARM-Maschinen: Der Parallelstore-CSI-Treiber unterstützt nur Knoten mit amd64-Architektur. ARM-basierte Knoten werden derzeit nicht unterstützt.
Voraussetzungen
Damit Sie den Parallelstore-CSI-Treiber verwenden können, müssen Ihre Cluster die folgenden Anforderungen erfüllen:
- Prüfen Sie, ob die neueste Version der Google Cloud CLI installiert ist. Die unterstützte Mindestversion der gcloud CLI für diese Funktion ist 469.0.0 oder höher.
- Verwenden Sie die Google Kubernetes Engine-Clusterversion 1.29 oder höher.
Nächste Schritte
- Volume erstellen und verwenden, das von einer Parallelstore-Instanz in Google Kubernetes Engine unterstützt wird
- Über Google Kubernetes Engine auf eine vorhandene Parallelstore-Instanz zugreifen