【发布时间】:2014-11-21 07:04:15
【问题描述】:
版本:spring-xd-1.0.1
分布式模式:yarn
Hadoop 版本:cdh5
我已修改 config/servers.yml 以指向正确的 applicationDir、zookeeper、hdfs、resourcemanager、redis、mysqldb
但是在推送之后,当我启动管理员时,它会在一段时间后被纱线杀死。 我不明白为什么容器会消耗 31G 的内存。 请指出我正确的方向来调试这个问题。另外,如何提高日志级别
在日志中观察到以下错误:
Got ContainerStatus=[container_id { app_attempt_id { application_id { id: 432 cluster_timestamp: 1415816376410 } attemptId: 1 } id: 2 } state: C_COMPLETE diagnostics: "Container [pid=19374,containerID=container_1415816376410_0432_01_00] 超出物理内存限制] . 当前使用情况:已使用 1.2 GB 的 1 GB 物理内存;已使用 31.7 GB 的 2.1 GB 虚拟内存。正在杀死容器。\n容器_1415816376410_0432_01_000002 的进程树转储:\n\t|- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE\n\t|- 19381 19374 19374 19374 (java) 3903 121 33911242752 303743 /java -DxdHomeDir=./spring-xd-yarn-1.0.1.RELEASE.zip -Dxd.module.config.location=file:./modules-config.zip/ -Dspring.application.name=admin -Dspring. config.location=./servers.yml org.springframework.xd.dirt.server.AdminServerApplication \n\t|- 19374 24125 19374 19374 (bash) 0 0 11080 4992 331 /bin/bash -c /usr/java/jdk1.7.0_45-cloudera/bin/java -DxdHomeDir=./spring-xd-yarn-1.0.1.RELEASE.zip -Dxd.module.config.location=文件:./modules-config.zip/ -Dspring.application.name=admin -Dspring.config.location=./servers.yml org.springframework.xd.dirt.server.AdminServerApplication 1>/var/log/hadoop- yarn/container/application_1415816376410_0432/container_1415816376410_0432_01_000002/Container.stdout 2>/var/log/hadoop-yarn/container/application_1415816376410_0432/container_1415816376410_0432_01_000002/Container.stderr \n\nContainer killed on request.退出代码为 143\n容器以非零退出代码 143\n" exit_status: 143 退出
【问题讨论】:
-
您能否提供有关环境的更多信息,例如 java 版本、操作系统、cdh5 版本等。还有您在那里运行的流/作业类型以及纱线杀死该容器实际需要多长时间。
-
cdh5.0.1,操作系统:centos 6,没有自定义作业。这是直接将 spring yarn zip 文件解压缩,然后更改配置。管理容器运行 34 秒然后失败。
-
>INFO monitor.IntegrationMBeanExporter:在启动时为 JMX 公开注册 bean >INFO tomcat.TomcatEmbeddedServletContainerFactory:使用端口初始化的服务器:9393 xxxxx INFO core.StandardService:启动服务 Tomcat xxxxx INFO core.StandardEngine:启动 Servlet引擎:Apache Tomcat/7.0.55 NFO annotation.AnnotationConfigApplicationContext:关闭 org.springframework.context.annotation.AnnotationConfigApplicationContext@3e990b4:启动日期[xxx];上下文层次结构的根
-
看起来您的实际物理内存已用完。您的
yarn.scheduler.maximum-allocation-mb属性设置为什么?我知道我们已经看到在 Cloudera 的 Quickstart VM 上使用默认配置运行 YARN 应用程序出现问题。有关更多背景信息,请参阅 github.com/spring-projects/spring-hadoop-samples/issues/13 和 github.com/spring-projects/spring-hadoop-samples/tree/master/…。 -
尝试了各种技巧来重现这一点,但没有运气。可以尝试获取更详细的进程内存转储以查看 vmem 的去向。在这些帖子中有很好的讨论; stackoverflow.com/questions/561245/… 和 stackoverflow.com/questions/6240985/…
标签: spring-xd