温馨提示×

如何备份linux hdfs配置

小樊
33
2026-09-07 14:33:46
栏目: 智能运维

在 Linux 上备份 HDFS(Hadoop Distributed File System)配置,通常是指备份 Hadoop 的配置目录和相关元数据。下面按最常见、最安全的方式说明。


一、确认 HDFS 配置位置

HDFS 配置一般位于 Hadoop 的安装目录中:

$HADOOP_HOME/etc/hadoop/

常见路径示例:

/usr/local/hadoop/etc/hadoop/
/opt/hadoop/etc/hadoop/

主要配置文件包括:

  • hdfs-site.xml
  • core-site.xml
  • hadoop-env.sh
  • log4j.properties
  • (如有)mapred-site.xmlyarn-site.xml

二、备份 HDFS 配置文件(推荐)

1️⃣ 打包配置目录

cd $HADOOP_HOME/etc
tar -czf hadoop-conf-backup-$(date +%F).tar.gz hadoop

示例:

tar -czf /backup/hadoop-conf-2026-01-21.tar.gz hadoop

2️⃣ 仅备份关键 XML 文件(轻量)

mkdir -p /backup/hdfs-conf
cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml \
   $HADOOP_HOME/etc/hadoop/core-site.xml \
   /backup/hdfs-conf/

三、备份 HDFS 元数据(NameNode)

⚠️ 非常重要:配置文件 ≠ HDFS 数据

1️⃣ 查看 NameNode 元数据目录

hdfs-site.xml 中:

<property>
  <name>dfs.namenode.name.dir</name>
  <value>/data/hadoop/dfs/name</value>
</property>

2️⃣ 安全备份(先进入 Safe Mode)

hdfs dfsadmin -safemode enter
hdfs dfsadmin -saveNamespace

然后拷贝元数据:

cp -r /data/hadoop/dfs/name /backup/name-$(date +%F)

退出 Safe Mode:

hdfs dfsadmin -safemode leave

四、备份 DataNode 配置(可选)

DataNode 一般不需要备份数据,但可备份配置:

cat $HADOOP_HOME/etc/hadoop/hdfs-site.xml | grep dfs.datanode.data.dir

五、自动化备份(示例)

#!/bin/bash
BACKUP_DIR=/backup/hadoop
DATE=$(date +%F)

mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/hadoop-conf-$DATE.tar.gz $HADOOP_HOME/etc/hadoop

加入 crontab:

0 2 * * * /root/backup_hadoop.sh

六、恢复配置

tar -xzf hadoop-conf-2026-01-21.tar.gz -C $HADOOP_HOME/etc

七、总结

备份内容 是否必须 方法
HDFS 配置文件 tar / cp
NameNode 元数据 ✅(生产) safemode + cp
DataNode 数据 一般不需

如果你愿意,可以告诉我:

  • 单机还是集群?
  • Hadoop 版本(2.x / 3.x)
  • 是否使用 HA(高可用)

我可以给你更精确的备份方案

0