使用yum源安装CDH Hadoop集群(5)

目录 所有者 权限 默认路径 yarn.nodemanager.local-dirs yarn:yarn drwxr-xr-x ${hadoop.tmp.dir}/nm-local-dir yarn.nodemanager.log-dirs yarn:yarn drwxr-xr-x ${yarn.log.dir}/userlogs yarn.nodemanager.remote-app-log-dir hdfs://cdh1:8020/var/log/hadoop-yarn/apps

故在 /etc/hadoop/conf/yarn-site.xml 文件中添加如下配置:

<property> <name>yarn.nodemanager.local-dirs</name> <value>/data/yarn/local</value> </property> <property> <name>yarn.nodemanager.log-dirs</name> <value>/data/yarn/logs</value> </property> <property> <name>yarn.nodemanager.remote-app-log-dir</name> <value>/yarn/apps</value> </property>

创建 yarn.nodemanager.local-dirs 和 yarn.nodemanager.log-dirs 参数对应的目录:

$ mkdir -p /data/yarn/{local,logs} $ chown -R yarn:yarn /data/yarn

在 hdfs 上创建 yarn.nodemanager.remote-app-log-dir 对应的目录:

$ sudo -u hdfs hadoop fs -mkdir -p /yarn/apps $ sudo -u hdfs hadoop fs -chown yarn:mapred /yarn/apps $ sudo -u hdfs hadoop fs -chmod 1777 /yarn/apps

在 /etc/hadoop/conf/mapred-site.xml 中配置 MapReduce History Server:

<property> <name>mapreduce.jobhistory.address</name> <value>cdh1:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>cdh1:19888</value> </property>

此外,确保 mapred、yarn 用户能够使用代理,在 /etc/hadoop/conf/core-site.xml 中添加如下参数:

<property> <name>hadoop.proxyuser.mapred.groups</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.mapred.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.yarn.groups</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.yarn.hosts</name> <value>*</value> </property>

配置 Staging 目录:

<property> <name>yarn.app.mapreduce.am.staging-dir</name> <value>/user</value> </property>

并在 hdfs 上创建相应的目录:

$ sudo -u hdfs hadoop fs -mkdir -p /user $ sudo -u hdfs hadoop fs -chmod 777 /user

可选的,你可以在 /etc/hadoop/conf/mapred-site.xml 设置以下两个参数:

mapreduce.jobhistory.intermediate-done-dir,该目录权限应该为1777,默认值为 ${yarn.app.mapreduce.am.staging-dir}/history/done_intermediate

mapreduce.jobhistory.done-dir,该目录权限应该为750,默认值为 ${yarn.app.mapreduce.am.staging-dir}/history/done

然后,在 hdfs 上创建目录并设置权限:

$ sudo -u hdfs hadoop fs -mkdir -p /user/history $ sudo -u hdfs hadoop fs -chmod -R 1777 /user/history $ sudo -u hdfs hadoop fs -chown mapred:hadoop /user/history

设置 HADOOP_MAPRED_HOME,或者把其加入到 hadoop 的配置文件中

$ export HADOOP_MAPRED_HOME=/usr/lib/hadoop-mapreduce

3.4 验证 HDFS 结构:

$ sudo -u hdfs hadoop fs -ls -R /

你应该看到如下结构:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/db4a7121584d8905dd7ecca24b051cac.html