我在玩分佈式shell應用程序(hadoop-2.0.0-cdh4.1.2)。 這是我目前收到的錯誤。AM容器超出虛擬內存限制
13/01/01 17:09:09 INFO distributedshell.Client: Got application report from ASM for, appId=5, clientToken=null, appDiagnostics=Application application_1357039792045_0005 failed 1 times due to AM Container for appattempt_1357039792045_0005_000001 exited with exitCode: 143 due to: Container [pid=24845,containerID=container_1357039792045_0005_01_000001] is running beyond virtual memory limits. Current usage: 77.8mb of 512.0mb physical memory used; 1.1gb of 1.0gb virtual memory used. Killing container.
Dump of the process-tree for container_1357039792045_0005_01_000001 :
|- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE
|- 24849 24845 24845 24845 (java) 165 12 1048494080 19590 /usr/java/bin/java -Xmx512m org.apache.hadoop.yarn.applications.distributedshell.ApplicationMaster --container_memory 128 --num_containers 1 --priority 0 --shell_command ping --shell_args localhost --debug
|- 24845 23394 24845 24845 (bash) 0 0 108654592 315 /bin/bash -c /usr/java/bin/java -Xmx512m org.apache.hadoop.yarn.applications.distributedshell.ApplicationMaster --container_memory 128 --num_containers 1 --priority 0 --shell_command ping --shell_args localhost --debug 1>/tmp/logs/application_1357039792045_0005/container_1357039792045_0005_01_000001/AppMaster.stdout 2>/tmp/logs/application_1357039792045_0005/container_1357039792045_0005_01_000001/AppMaster.stderr
的有趣的是,似乎有與設置沒有問題,因爲一個簡單的ls
或uname
命令成功完成,並在標準輸出container2的輸出是可用的。
關於設置,yarn.nodenamager.vmem-pmem-ratio
是3
和可用的總物理內存是2GB,我認爲這是足夠譬如運行。
對於命令的問題,「平本地主機」產生的兩條回覆,因爲它可以從containerlogs/container_1357039792045_0005_01_000002/721917/stdout/?start=-4096.
因此可以看出,可能是什麼問題呢?
提及哪些參數以及哪些參考資料在哪裏找到是很有幫助的。 – ykesh