Ubuntu 上 HDFS 数据备份与恢复实用指南
一 备份方式总览
二 常用备份方法操作示例
hdfs dfsadmin -allowSnapshot /path/to/dirhdfs dfs -createSnapshot /path/to/dir snap_20251220hdfs dfsadmin -listSnapshots /path/to/dirhdfs dfs -cp /path/to/dir/.snapshot/snap_20251220 /path/to/dir_bakhdfs dfs -deleteSnapshot /path/to/dir snap_20251220hadoop distcp -m 50 hdfs://src-nn:8020/path hdfs://backup-nn:8020/backup/path_$(date +%F)hadoop distcp -update -m 50 hdfs://src-nn:8020/path hdfs://backup-nn:8020/backup/path-bandwidth 100sudo -u hdfs hdfs dfsadmin -safemode entersudo -u hdfs hdfs dfsadmin -saveNamespacesudo -u hdfs cp -r /dfs/nn/current /backup/nn_$(date +%F)sudo -u hdfs hdfs dfsadmin -safemode leavehdfs dfs -ls /user/hdfs/.Trash/Currenthdfs dfs -mv /user/hdfs/.Trash/Current/path /pathhdfs dfs -get /path /local/backup_$(date +%F).tar.gz 或 tar czf 打包后离线保存三 异地与云端备份落地方案
hadoop distcp -m 100 hdfs://prod-nn:8020 /data hdfs://backup-nn:8020/backup/prod_data/$(date +%F)hadoop distcp -update -m 50 hdfs://prod-nn:8020 /data hdfs://backup-nn:8020/backup/prod_data/latesthdfs dfs -count hdfs://backup-nn:8020/backup/... 与抽样 hdfs dfs -test -e/md5sum(落地到本地后)。四 恢复与演练要点
.snapshot/<name> 的内容拷回业务路径,先备份当前版本再切换,确保可回退。hdfs fsck、目录计数、抽样对比与业务侧校验和,确保恢复后可用且一致。五 高可用不等于备份