원사 클러스터에서 스파크 작업을 실행하고 리소스가 충분하지 않아도 스파크 작업이 시작된다는 것을 알았습니다.YARN에서 Spark 응용 프로그램을 시작하기 전에 모든 실행 프로그램이 할당 될 때까지 기다리는 방법은 무엇입니까?
극단적 인 예로, 스파크 작업은 1000 명의 실행자 (코어 4 개와 램 20GB)를 요구합니다. 전체 클러스터에는 r3.xlarge
(노드 4 코어 및 32GB 램)의 노드가 30 개 밖에 없습니다. 작업은 30 명의 집행자 만 실제로 시작하고 실행할 수 있습니다. 우리는 동적 할당을 false로 설정하려고 시도했으며 용량 스케줄러와 실의 공정한 스케줄러를 모두 시도했습니다. 그것은 동일합니다.
아이디어가 부족하여 리소스가 충분하지 않아서 일을 시작할 수 없습니까? 이것에 대한 스파크면 또는 원사면 설정이 있습니까?