YARN特殊注意事项

Yarn 新旧版本兼用性问题说明

EasyOps环境升级后,旧版本yarn中的yarn-env.sh配置中的

export JAVA_LIBRARY_PATH="${JAVA_LIBRARY_PATH}:/tmp/hadoop_java_io_tmpdir"

新版本中的此配置项为:

export JAVA_LIBRARY_PATH="${JAVA_LIBRARY_PATH}:{{ yarn_data_dir }}/hadoop_java_io_tmpdir"

因此yarn服务启动前,需要拷贝/tmp/hadoop_java_io_tmpdir中的文件至 {{ yarn_data_dir }}/hadoop_java_io_tmpdir 路径下,否则会导致nodemanager启动失败

上述修改可能导致问题:${current_dir}/lib/native下缺少libleveldbjni.so。

解决方案:(执行步骤)

在节点上执行: find / -name “leveldbjni-all-1.8.jar”,环境上的hadoop组件的安装包中基本都有leveldbjni-all-1.8.jar这个包

解压leveldbjni-all-1.8.jar,并找到其中的libleveldbjni.so

将libleveldbjni.so复制到nodemanager组件的${currentdir}/lib/native路径下

在EasyOps界面修改想要修改的相应配置,重启NM并同步配置

EasyOps 1.7.4 版本 YARN 服务升级说明

配置文件 配置项 默认值 用户填写的情况下 备注
yarn-site.xml yarn.nodemanager.local-dirs ${volumes}/hadoop/yarn/local 以用户填写的为准 可配置在多个数据盘上,多个数据盘路径需要用’,’隔开
yarn-site.xml yarn.nodemanager.log-dirs ${volumes}/hadoop/yarn/log 以用户填写的为准 可配置在多个数据盘上,多个数据盘路径需要用’,’隔开
yarn-site.xml yarn.nodemanager.recovery.dir ‘${volumes}/hadoop/yarn/log’ 以用户填写的为准 可配置在多个数据盘上,多个数据盘路径需要用’,’隔开

数据盘列表根据EasyOps后端获取的数据盘列表为准

这些数据盘上的路径,在安装部署时会自行创建,如果是升级的环境。或者是修改了这些配置,则需要手动创建这些路径, 并设置权限为755, 用户和用户组为yarn:hadoop