怎样调整CentOS HDFS存储策略
导读:CentOS 上调整 HDFS 存储策略实操指南 一 前置检查与准备 确认 Hadoop 版本与命令可用性:建议使用 Hadoop 2.6+(2.5 起支持存储策略),执行 hdfs storagepolicies -listPolici...
CentOS 上调整 HDFS 存储策略实操指南
一 前置检查与准备
- 确认 Hadoop 版本与命令可用性:建议使用 Hadoop 2.6+(2.5 起支持存储策略),执行
hdfs storagepolicies -listPolicies能列出内置策略。 - 检查集群是否启用策略功能:在 hdfs-site.xml 中确保
dfs.storage.policy.enabled为 true。 - 核对 DataNode 存储类型配置:在 dfs.datanode.data.dir 为每个目录显式标注存储类型前缀,如 [DISK]、[SSD]、[ARCHIVE]、[RAM_DISK];未标注的目录默认视为 DISK。
- 规划目录与介质:按冷热分层创建目录(如 /data/hot、/data/warm、/data/cold),并确保对应介质目录已存在且容量充足。
- 权限与连通性:执行命令的用户需具备 HDFS 超级用户或目标路径的写权限,并可在集群内正常访问 NameNode/DataNode。
二 配置 DataNode 存储类型
- 编辑 $HADOOP_CONF_DIR/hdfs-site.xml,为 DataNode 配置多介质目录,例如:
<
property>
<
name>
dfs.datanode.data.dir<
/name>
<
value>
[DISK]file:///data/hadoop/disk0,
[SSD]file:///data/hadoop/ssd0,
[ARCHIVE]file:///data/hadoop/archive0,
[RAM_DISK]file:///data/hadoop/ram0
<
/value>
<
/property>
- 将配置同步到所有 DataNode,并重启 HDFS 服务(滚动重启以减少影响)。
- 说明:HDFS 不会自动识别介质类型,必须通过在目录前加前缀显式声明;未标注前缀的目录均按 DISK 处理。
三 设置与调整存储策略
- 常用命令(Hadoop 3 推荐新命令,旧命令亦可用):
- 列出策略:
hdfs storagepolicies -listPolicies - 设置策略:
hdfs storagepolicies -setStoragePolicy -path < 路径> -policy < 策略> - 查看策略:
hdfs storagepolicies -getStoragePolicy -path < 路径> - 取消策略:
hdfs storagepolicies -unsetStoragePolicy -path < 路径>
- 列出策略:
- 内置策略与介质映射(按需选择):
- HOT:全部副本在 DISK(默认策略)
- WARM:部分在 DISK,部分在 ARCHIVE
- COLD:全部副本在 ARCHIVE
- ALL_SSD:全部副本在 SSD
- ONE_SSD:一个副本在 SSD,其余在 DISK
- LAZY_PERSIST:单副本先写入 RAM_DISK,随后延迟落 DISK
- 示例(对目录设置策略):
hdfs storagepolicies -setStoragePolicy -path /data/hot -policy HOThdfs storagepolicies -setStoragePolicy -path /data/warm -policy WARMhdfs storagepolicies -setStoragePolicy -path /data/cold -policy COLD
- 生效范围:对目录设置后,新写入的文件会按策略放置;已存在文件需触发迁移才会落到目标介质。
四 让数据按策略落盘与验证
- 触发数据迁移:使用 Mover 工具按策略将块迁移到目标存储类型:
hdfs mover -p < 路径>或hdfs mover < 路径>
- 验证与排查:
- 查看文件/目录策略:
hdfs storagepolicies -getStoragePolicy -path < 路径> - 查看块分布与介质:
hdfs fsck < 路径> -files -blocks -locations - 观察 DataNode 存储使用:NameNode Web UI 或
hdfs dfsadmin -report
- 查看文件/目录策略:
- 提示:若某介质类型在集群中不存在或容量不足,相关副本可能无法按策略放置,迁移会受限或失败。
五 常见问题与注意事项
- 修改 dfs.datanode.data.dir 后需重启 DataNode 才生效;变更存储策略本身通常无需重启。
- 策略不会自动创建目录,需提前建好并按需设置策略。
- COLD/WARM 策略依赖 ARCHIVE 介质;ONE_SSD/ALL_SSD 依赖 SSD 介质,否则无法按预期落盘。
- 为降低业务影响,建议在低峰时段执行策略变更与 Mover 迁移,并先在小范围目录演练。
- 权限要求:执行策略与迁移操作的用户需具备相应 HDFS 权限(如超级用户或目录 ACL 授权)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 怎样调整CentOS HDFS存储策略
本文地址: https://pptw.com/jishu/770635.html
