1. 默认配置文件: 存放于Hadoop对应的jar包中

  • core-default.xml
  • hdfs-default.xml
  • yarn-default.xml
  • mapred-default.xml

2. 自定义配置文件: $HADOOP_HOME/etc/hadoop

  • core-site.xml
  • hdfs-site.xml
  • yarn-site.xml
  • mapred-site.xml

2.1 core-site.xml

 <configuration>
<property>
<!-- 指定HDFS中NameNode的地址 -->
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<!-- 指定Hadoop运行时产生文件的存储目录,hadoop启动时,会自动创建 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/(自定义路径)/hadoop-2.8.5/data/tmp</value>
</property>
</configuration>

2.2 hadoop-env.sh

export JAVA_HOME=服务器java环境变量

2.3 hdfs-site.xml

 <configuration>
<!-- nameNode 文件的副本数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!-- nameNode 的访问地址-->
<property>
<name>dfs.namenode.rpc-bind-host</name>
<value>0.0.0.0</value>
</property>
</configuration>

2.4 yarn-site.xml

<configuration>
<!-- Reducer 获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>0.0.0.0</value>
</property>
<!-- 指定YARN 的 ResourceManager 的地址-->
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property>
<!-- 开启日志聚集功能 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 日志保留7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
</configuration>

2.5 yarn-env.sh 配置

export JAVA_HOME=服务器java环境变量

2.6 mapred-site.xml

 <configuration>
<!-- 指定MR运行在YARN上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 历史记录服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>localhost:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>0.0.0.0:8091</value>
</property>
</configuration>

2.7 mapred-env.sh 配置

export JAVA_HOME=服务器java环境变量

3. Hadoop 集群配置

3.1 节点内容预览

节点1 节点2 节点3
HDFS NameNode
DataNode
DataNode SecondaryNameNode
DataNode
YARN NodeManager ResourceManager
NodeManager
NodeManager

3.2 core-site.xml 配置

<configuration>
<property>
<!-- 指定HDFS中NameNode的地址 -->
<name>fs.defaultFS</name>
<value>hdfs://节点1:9000</value>
</property>
<!-- 指定Hadoop运行时产生文件的存储目录,hadoop启动时,会自动创建 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/(自定义路径)/hadoop-2.8.5/data/tmp</value>
</property>
</configuration>

3.3 hadoop-env.sh 配置

export JAVA_HOME=服务器java环境变量

3.4 hdfs-site.xml 配置

<configuration>
<!-- nameNode 文件的副本数量 -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 指定 Hadoop 辅助名称节点主机配置(SecondaryNameNode) -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>节点3主机名称:端口号</value>
</property>
</configuration>

3.5 yarn-env.sh 配置

export JAVA_HOME=服务器java环境变量

3.6 yarn-site.xml 配置

<configuration>
<!-- Reducer 获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>节点2</value>
</property>
<!-- 指定YARN 的 ResourceManager 的地址-->
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property>
<!-- 开启日志聚集功能 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 日志保留7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
</configuration>

3.7 mapred-env.sh 配置

export JAVA_HOME=服务器java环境变量

3.8 mapred-site.xml 配置

 <configuration>
<!-- 指定MR运行在YARN上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

3.9 slaves 配置

节点1
节点2
节点3

4. 常用命令

  1. bin/hdfs namenode -format: 格式化命令;执行命令前,需要将单节点(或集群)中的/data,/logs目录删除。
  2. bin/hdfs dfs -put 待上传文件 上传的目的地:将本地文件上传至hdfs中。
  3. sbin/hadoop-daemon.sh start(stop) namenode: 启动(或停止)单节点NameNode。
  4. sbin/hadoop-daemon.sh start(stop) datanode: 启动(或停止)单节点DataNode。
  5. sbin/yarn-daemon.sh start(stop) resourcemanager: 启动(或停止)单节点ResourceManager。
  6. sbin/yarn-daemon.sh start(stop) nodemanager: 启动(或停止)单节点NodeManager。
  7. sbin/mr-jobhistory-daemon.sh start(stop) historyserver: 启动(或停止)单节点History记录。
  8. sbin/start-dfs.sh: 启动HDFS集群(注意:所有节点均已配置"Hadoop目录/etc/hadoop/slaves")。
  9. sbin/start-yarn.sh: 启动YARN集群(注意:所有节点均已配置"Hadoop目录/etc/hadoop/slaves"; 另外,需要在ResourceManager服务器启动)。
  10. sbin/stop-dfs.sh: 停止HDFS集群。
  11. sbin/stop-yarn.sh: 停止YARN集群。

5. 集群时间同步

  • 时间同步的方式:找一个机器, 作为时间服务器,所有机器与这台集群时间进行定时的同步;

    • 检查ntp是否安装rpm -qa|grep ntp
    • 修改ntp配置文件/etc/ntp.conf
    • 修改/etc/sysconfig/ntpd文件;
      • 让硬件时间与系统时间一起同步;
    • 重启ntpd服务;
    • 设置ntpd服务开机启动;

**参考资料:**
- [设置集群时间同步](https://www.bilibili.com/video/av32081351/?p=44)
- [rpm命令](http://man.linuxde.net/rpm)

最新文章

  1. 解决ng界面长表达式(ui-set)
  2. 利用servlet3.0上传,纯原生上传,不依赖任何第三方包
  3. Linux下运行windows程序
  4. js实现A*寻路算法
  5. block 在ARC和非ARC下的不同含义
  6. Pell方程及其一般形式
  7. storyboard和xib的各种问题
  8. String定义与方法
  9. 集合框架工具类--Collections排序
  10. 03_JqueryAjax_异步请求Servlet
  11. iOS系统原生二维码条形码扫描
  12. ios 字体设计
  13. Hadoop权威指南:HDFS-Hadoop存档
  14. Linux下硬盘分区
  15. Go 语言多维数组
  16. listener 监听 tomcat 容器的初始化和销毁
  17. tensorflow学习之(五)构造简单神经网络 并展示拟合过程
  18. 1. AMQP 0-9-1模型简介(官网直译)
  19. 【题解】第n小的数
  20. ARM 非对齐的数据访问操作

热门文章

  1. webservice应用+建议不用webservice
  2. fmt
  3. CSP-S模拟测试 88 题解
  4. 文件描述符、文件表项、V节点表项的一些总结
  5. Ubuntu18.04安装和配置Django,并实现简单示例
  6. Applications (ZOJ 3705)
  7. vue中.sync修饰符,实现子组件实时更新父组件的值
  8. 【Golang】基于录制,自动生成go test接口自动化用例
  9. Eclipse生成EXE文件(可视化Login/读取文件)
  10. Windows下MongoDB的安装过程及基本配置