[HADOOP] 왜 YARN에서 일을하기 위해 32 개 이상의 코어를 요청할 수 있습니까?
HADOOP왜 YARN에서 일을하기 위해 32 개 이상의 코어를 요청할 수 있습니까?
Spark 작업에 32 개 이상의 executor 코어를 요청하면 다음 오류가 발생합니다.
Uncaught exception: Invalid resource request, requested virtual cores < 0, or requested virtual cores > max configured, requestedVirtualCores=150, maxVirtualCores=32
at org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerUtils.validateResourceRequest(SchedulerUtils.java:212)
at org.apache.hadoop.yarn.server.resourcemanager.RMServerUtils.validateResourceRequests(RMServerUtils.java:96)
at org.apache.hadoop.yarn.server.resourcemanager.ApplicationMasterService.allocate(ApplicationMasterService.java:501)
at org.apache.hadoop.yarn.api.impl.pb.service.ApplicationMasterProtocolPBServiceImpl.allocate(ApplicationMasterProtocolPBServiceImpl.java:60)
at org.apache.hadoop.yarn.proto.ApplicationMasterProtocol$ApplicationMasterProtocolService$2.callBlockingMethod(ApplicationMasterProtocol.java:99)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:619)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:962)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2039)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2035)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2033)
내 yarn-site.xml의 일부 속성은 다음과 같습니다.
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>400000</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>3072</value>
</property>
위에서부터 속성에 이르기까지 400k / 3072 = ~ 130 코어를 요청할 수 있다고 생각했습니다. 하지만 여전히 32 개로 제한됩니다. Spark 작업에 32 개 이상의 실행기 코어를 할당하려면 어떻게해야합니까?
더 많은 정보가 필요한지 알려 주시면 질문을 업데이트하겠습니다.
yarn-site.xml의 vcore 설정
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>2</value>
</property>
해결법
-
==============================
1.yarn-site.xml 세트에서
yarn-site.xml 세트에서
<property> <name>yarn.scheduler.maximum-allocation-vcores</name> <value>130</value> </property>
from https://stackoverflow.com/questions/29780401/why-cannot-more-than-32-cores-be-requested-from-yarn-to-run-a-job by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 왜 hadoop을 실행할 때 데이터 노드가 종료됩니까? (0) | 2019.08.07 |
---|---|
[HADOOP] localhost : 오류 : 데이터 노드 프로세스의 우선 순위를 설정할 수 없습니다 32156 (0) | 2019.08.07 |
[HADOOP] foreachPartition과 같은 RDD 메서드 / 클로저 내에서 SparkContext hadoop 구성 사용 (0) | 2019.08.06 |
[HADOOP] 색조 파일 브라우저가 작동하지 않습니다. (0) | 2019.08.06 |
[HADOOP] Tomcat 서버를 종료 할 때 org.apache.hadoop.util.ShutdownHookManager를로드 할 수 없습니다. (0) | 2019.08.06 |