配置

  • dfs.replication 不能超过DataNode的数目,副本数大可以间接提升计算速度。
  • fs.checkpoint.period,指定连续两次检查点的最大时间间隔, 默认值是1小时。
  • fs.checkpoint.size定义了edits日志文件的最大值,一旦超过这个值会导致强制执行检查点(即使没到检查点的最大时间间隔)。默认值是64MB。

slaves文件里是DataNode和NodeManager主机名,也就是HDFS和Yarn都认这个文件。

  1. dfs.bytes-per-checksum #默认512字节 校验

HA配置

配置样例在这
https://github.com/deadwind4/xuanwu/tree/master/hadoop

命令

启动

namenode机器 需要格式化,不格式化50070无法访问。

  1. hdfs namenode -format

两次以上格式化会导致DataNode启动失败。要删除dfs.data.dir目录在重启。

  1. sbin/start-dfs.sh #启动hdfs
  2. #以下不建议使用原因需探究
  3. sbin/start-all.sh #启动
  4. sbin/stop-all.sh #关闭

HA模式

  1. bin/zkServer.sh start
  2. sbin/hadoop-daemon.sh start journalnode
  3. #如果是一个新的集群那么需要首次格式化namenode,如果不是新的集群可以不用
  4. bin/hdfs namenode -format
  5. #只需要格式化一台,因为两个namenode管理的是同一个元数据空间
  6. #注意:先启动第一台的namenode再操作下面的元数据同步
  7. sbin/hadoop-daemon.sh start namenode
  1. hdfs fsck / -files -blocks

安全模式

  1. hdfs dfsadmin -safemode leave #强制 NameNode 退出安全模式
  2. hdfs dfsadmin -safemode enter #进入安全模式
  3. hdfs dfsadmin -safemode get #查看安全模式状态
  4. hdfs dfsadmin -safemode wait #等待,一直到安全模式结束
  1. hadoop dfsadmin -safemode leave && hdfs dfs -rm -r -skipTrash

错误备忘

要配置这个,要不然重启后/tmp目录会删除

  1. <property>
  2. <name>hadoop.tmp.dir</name>
  3. <value>/var/hadoop/tmp</value>
  4. </property>

WARN org.apache.hadoop.hdfs.server.common.Util: Path /var/hadoop/data should be specified as a URI in configuration files. Please update hdfs configuration.

  1. <property>
  2. <name>dfs.namenode.name.dir</name>
  3. <value>file://var/hadoop/name</value>
  4. </property>
  5. <property>
  6. <name>dfs.datanode.data.dir</name>
  7. <value>file://var/hadoop/data</value>
  8. </property>
  1. <property>
  2. <name>dfs.namenode.name.dir</name>
  3. <value>/var/hadoop/name</value>
  4. </property>
  5. <property>
  6. <name>dfs.datanode.data.dir</name>
  7. <value>/var/hadoop/data</value>
  8. </property>

手动Checkpoint

目的是提高HDFS重启的速度。

  1. hdfs dfsadmin -safemode enter
  2. hdfs dfsadmin -saveNamespace
  3. hdfs dfsadmin -safemode leave

参考资料

ZooKeeper学习之路 (九)利用ZooKeeper搭建Hadoop的HA集群
Hadoop之HA高可用性
高可用解析
https://blog.csdn.net/l1028386804/article/details/51935169
https://hadoop.apache.org/docs/r2.8.5/hadoop-project-dist/hadoop-common/FileSystemShell.html