概要描述
本文主要介绍执行 yarn resourcemanager在启动的时候报错unreasonable length 1051225
的排查思路和解决办法。
详细说明
排查思路
yarn resoucemanager 后台启动之后,pod显示1/1 Running,但是页面 Running with problem,而且无法成功选主。
检查后台resoucemanager可以看到报错:unreasonable length 1051225
服务端zookeeper检查
进入zookeeper pod内,查看2个启动脚本
/usr/lib/zookeeper/bin/zkCli.sh
/usr/lib/zookeeper/bin/zkServer.sh
是有配置参数: -Djute.maxbuffer=10240000
的,也就是服务端做了配置。
客户端yarn检查
到manager节点 /var/lib/transwarp-manager/master/content/meta/services/YARN/transwarp-6.2.2-final/templates/yarn-env.sh.ftl 检查启动脚本,YARN_RESOURCEMANAGER_OPTS
并没有配置 -Djute.maxbuffer=10240000
jute.maxbuffer
这个选项是需要通过Java系统变量来设置,它指定了在zk里面一个znode节点存储数据大小的限制,默认值是1MB,如果这个参数的值被改变,必须需要在所有的服务端和客户端进行同步设置,否则就会出现问题。
解决方案
修改/var/lib/transwarp-manager/master/content/meta/services/YARN/transwarp-6.2.2-final/templates/yarn-env.sh.ftl ,在
YARN_RESOURCEMANAGER_OPTS
中添加配置 -Djute.maxbuffer=10240000
,然后yarn服务配置服务再重启之后正常。