Wenn Sie einen virtuellen Dataproc on GKE-Cluster erstellen oder aktualisieren, geben Sie einen oder mehrere Knotenpools an, die der virtuelle Cluster zum Ausführen von Jobs verwendet. Dieser Cluster wird als der Cluster bezeichnet, der von den angegebenen Knotenpools „verwendet“ oder „zugeordnet“ wird. Wenn ein angegebener Knotenpool in Ihrem GKE-Cluster nicht vorhanden ist, wird er von Dataproc in GKE mit den von Ihnen angegebenen Einstellungen im GKE-Cluster erstellt. Wenn der Knotenpool vorhanden ist und von Dataproc erstellt wurde, wird er validiert, um zu bestätigen, dass seine Einstellungen mit den angegebenen Einstellungen übereinstimmen.
Dataproc on GKE-Knotenpooleinstellungen
Sie können die folgenden Einstellungen für Knotenpools angeben, die von Ihren virtuellen Dataproc on GKE-Clustern verwendet werden. Diese Einstellungen sind eine Teilmenge der GKE-Knotenpooleinstellungen:
accelerators
acceleratorCount
acceleratorType
gpuPartitionSize
*localSsdCount
machineType
minCpuPlatform
minNodeCount
maxNodeCount
preemptible
spot
*
Hinweise:
gpuPartitionSize
kann in der Dataproc APIGkeNodePoolAcceleratorConfig
festgelegt werden.spot
kann in der Dataproc API GkeNodeConfig festgelegt werden.
Knotenpool löschen
Wenn ein Dataproc on GKE-Cluster gelöscht wird, werden die vom Cluster verwendeten Knotenpools nicht gelöscht. Unter Knotenpool löschen finden Sie Informationen zum Löschen von Knotenpools, die nicht mehr von Dataproc in GKE-Clustern verwendet werden.
Knotenpoolstandort
Sie können den Zonen-Standort von Knotenpools angeben, die Ihrem virtuellen Dataproc on GKE-Cluster zugeordnet sind, wenn Sie den virtuellen Cluster erstellen oder aktualisieren. Die Knotenpoolzonen müssen sich in der Region des zugehörigen virtuellen Clusters befinden.
Zuordnung von Rollen zu Knotenpools
Rollen für Knotenpools werden für Spark-Treiber- und Executor-Arbeit definiert. Für alle Arten von Arbeit, die von einem Knotenpool ausgeführt werden, ist eine Standardrolle definiert. Dataproc on GKE-Cluster müssen mindestens einen Knotenpool mit der Rolle default
haben.
Das Zuweisen anderer Rollen ist optional.
Empfehlung:Erstellen Sie separate Knotenpools für jeden Rollentyp. Der Knotentyp und die Größe sollten auf den Rollenanforderungen basieren.
Beispiel für die Erstellung eines virtuellen Clusters mit der gcloud CLI:
gcloud dataproc clusters gke create "${DP_CLUSTER}" \ --region=${REGION} \ --gke-cluster=${GKE_CLUSTER} \ --spark-engine-version=latest \ --staging-bucket=${BUCKET} \ --pools="name=${DP_POOLNAME},roles=default \ --setup-workload-identity --pools="name=${DP_CTRL_POOLNAME},roles=default,machineType=e2-standard-4" \ --pools="name=${DP_DRIVER_POOLNAME},min=1,max=3,roles=spark-driver,machineType=n2-standard-4" \ --pools="name=${DP_EXEC_POOLNAME},min=1,max=10,roles=spark-executor,machineType=n2-standard-8"