Hadoop之历史服务器与日志聚合和文件权限

来源:互联网 发布:授权回调页面域名 编辑:程序博客网 时间:2024/06/06 11:00

1、历史服务器是一个轻量级的

2、 配置mapred-site.xml文件,指定两个参数

<property>
<name>mapreduce.jobhistory.address</name>
<value>bigdata-01.yushu.com:10020</value>
</property>

<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>bigdata-01.yushu.com:19888</value>
</property>
3、启动:
$ sbin/mr-jobhistory-daemon.sh start historyserver


4、mapreduce.jobhistory.intermediate-done-dir
-》存放正在运行的Hadoop的作业记录
mapreduce.jobhistory.done-dir
-》存放已经完成的Hadoop的作业目录

-》由于历史服务作业记录很多,所以存储的形式是按照年/月/日形式存放在对应的目录中,便于查找和管理


日志聚合



1、MR允许时候产生的日志文件上传到HDFS对应的目录中
2、然后就可以从页面查看日志内容,直接读取HDFS上存储的数据
3、修改yarn-site.xml文件,指定开启聚合功能以及日志在HDFS上保存期限,秒:单位
<property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>

<property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>106800</value>
    </property>


HDFS的文件权限检测
1、HDFS的文件目录权限和Linux是完全一致的
2、修改hdfs-site.xml文件,指定默认不检测用户权限
<property>
        <name>dfs.permissions.enabled</name>
        <value>false</value>
    </property>
3、指定Hadoop的http静态用户名,可配置项,随意
<property>
        <name>hadoop.http.staticuser.user</name>
        <value>ds</value>
    </property>
4、配置完历史服务器和聚合之后需要重启HDFS和yarn的所有进程,生效


           sbin/hadoop-daemon.sh stop namenode
  sbin/hadoop-daemon.sh stop datanode
  sbin/yarn-daemon.sh stop resourcemanager
  sbin/yarn-daemon.sh stop nodemanager
  sbin/hadoop-daemon.sh stop secondarynamenode 
  sbin/mr-jobhistory-daemon.sh stop historyserver
  --------------关闭服务-------------------------------
  --------------启动服务-------------------------------
  sbin/hadoop-daemon.sh start namenode
  sbin/hadoop-daemon.sh start datanode
  sbin/yarn-daemon.sh start resourcemanager
  sbin/yarn-daemon.sh start nodemanager
  sbin/mr-jobhistory-daemon.sh start historyserver
  
5、注意先启动HDFS再启动yarn

6、yarn.nodemanager.remote-app-log-dir代表日志转移到HDFS上的目录路径
-》默认路径/tmp/logs
-》可以用户自定义
-》对应到yarn-site.xml