作者:mobiledu2502878243 | 来源:互联网 | 2023-02-01 12:58
我正在Google DataProc群集上运行一个火花工作.但看起来Spark并没有使用vcores
群集中的所有可用内容,如下所示
基于像其他一些问题,这个和这个,我已经安装使用群集DominantResourceCalculator
来考虑资源分配的两个vCPU和内存
gcloud dataproc clusters create cluster_name --bucket="profiling-
job-default" \
--zOne=europe-west1-c \
--master-boot-disk-size=500GB \
--worker-boot-disk-size=500GB \
--master-machine-type=n1-standard-16 \
--num-workers=10 \
--worker-machine-type=n1-standard-16 \
--initialization-actions gs://custom_init_gcp.sh \
--metadata MINICONDA_VARIANT=2 \
--properties=^--^yarn:yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator
但是,当我使用自定义火花标记提交我的作业时,看起来YARN不尊重这些自定义参数,默认使用内存作为资源计算的标准
gcloud dataproc jobs submit pyspark --cluster cluster_name \
--properties spark.sql.broadcastTimeout=900,spark.network.timeout=800\
,yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator\
,spark.dynamicAllocation.enabled=true\
,spark.executor.instances=10\
,spark.executor.cores=14\
,spark.executor.memory=15g\
,spark.driver.memory=50g \
src/my_python_file.py
可以帮助有人弄清楚这里发生了什么?
1> borarak..:
我做错了什么是对配置添加yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator
到YARN
,而不是capacity-scheduler.xml
(因为它应该是正确),而群集创建
其次,我改变了yarn:yarn.scheduler.minimum-allocation-vcores
最初的设定1
.
我不确定这些或两者中的任何一个是否导致解决方案(我将很快更新).我的新集群创建如下所示:
gcloud dataproc clusters create cluster_name --bucket="profiling-
job-default" \
--zOne=europe-west1-c \
--master-boot-disk-size=500GB \
--worker-boot-disk-size=500GB \
--master-machine-type=n1-standard-16 \
--num-workers=10 \
--worker-machine-type=n1-standard-16 \
--initialization-actions gs://custom_init_gcp.sh \
--metadata MINICONDA_VARIANT=2 \
--properties=^--^yarn:yarn.scheduler.minimum-allocation-vcores=4--capacity-scheduler:yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator