CentOS中HDFS如何管理
导读:CentOS 上 HDFS 管理实操指南 一 基础准备与环境配置 安装 Java(Hadoop 依赖 Java):执行命令安装 OpenJDK 8 并验证版本。 下载并解压 Hadoop 至如 /usr/local/hadoop,创建数据...
CentOS 上 HDFS 管理实操指南
一 基础准备与环境配置
- 安装 Java(Hadoop 依赖 Java):执行命令安装 OpenJDK 8 并验证版本。
- 下载并解压 Hadoop 至如 /usr/local/hadoop,创建数据目录(如 /data/hadoop/namenode、/data/hadoop/datanode)。
- 配置环境变量(建议写入 /etc/profile.d/hadoop.sh):
- export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
- export HADOOP_HOME=/usr/local/hadoop
- export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
- 配置 SSH 免密登录(NameNode 能免密登录各 DataNode):
- ssh-keygen -t rsa
- ssh-copy-id user@namenode、ssh-copy-id user@datanodeX
- 核心配置文件要点:
- core-site.xml:设置默认文件系统 fs.defaultFS=hdfs://namenode:8020(或 9000,视版本与网络而定)。
- hdfs-site.xml:设置副本数 dfs.replication=3,NameNode/DataNode 数据目录 dfs.namenode.name.dir、dfs.datanode.data.dir。
- 首次启动前执行格式化:hdfs namenode -format。
二 启动停止与进程管理
- 一键启停:在 NameNode 执行
- 启动:$HADOOP_HOME/sbin/start-dfs.sh
- 停止:$HADOOP_HOME/sbin/stop-dfs.sh
- 单进程控制(新版本推荐):
- 启动/停止/状态:$HADOOP_HOME/bin/hdfs --daemon (start|stop|status) namenode|secondarynamenode|datanode
- 进程校验:在各节点执行 jps,应看到 NameNode、DataNode、SecondaryNameNode 等进程。
三 日常运维与监控
- 集群健康与容量:
- 报告:hdfs dfsadmin -report(查看 DataNode 数量、容量、使用情况)
- 安全模式:hdfs dfsadmin -safemode get|enter|leave(维护前进入、完成后离开)
- 权限与 ACL:
- 传统权限:hdfs dfs -chmod、hdfs dfs -chown
- 细粒度 ACL:hdfs dfs -setfacl、hdfs dfs -getfacl
- 配额管理:
- 名称配额(文件/目录数量):hdfs dfsadmin -setQuota -n 100 /path
- 空间配额(容量):hdfs dfsadmin -setSpaceQuota -n 1G /path
- 回收站(避免误删):在 core-site.xml 启用
- fs.trash.interval(保留分钟,如 1440)与 fs.trash.checkpoint.interval(检查点间隔)
- 可视化监控:访问 NameNode Web UI(默认端口:50070 或 9870,取决于 Hadoop 版本)。
四 存储与性能优化
- 块大小:根据业务选择 128MB/256MB 等,减少小文件与元数据压力。
- 副本数:默认 3,可靠性与存储成本权衡;可按目录/文件设置。
- 避免小文件:合并、归档(如 SequenceFile/Parquet),降低 NameNode 内存占用。
- 压缩:采用 ZSTD/SNAPPY 等降低存储与网络开销。
- 存储策略与生命周期:冷热分层(如 HOT/WARM/COLD),提升性价比。
- 多目录与磁盘:为 dfs.namenode.name.dir、dfs.datanode.data.dir 配置多磁盘目录,提升吞吐与可靠性。
- 调优参数:dfs.namenode.handler.count(并发请求处理线程数)等按负载调整。
五 备份恢复与高可用
- 备份与恢复:
- 快照:对关键目录启用快照,快速回滚误删/误改。
- 复制:跨集群/跨机架 distcp 做定期/持续备份。
- 高可用 HA(生产推荐):
- 架构:双 NameNode(Active/Standby)+ JournalNode(建议 3+ 奇数台)+ ZKFC。
- 关键配置:dfs.nameservices、dfs.ha.namenodes.[nameservice]、dfs.namenode.rpc-address/ http-address、dfs.namenode.shared.edits.dir(如 qjournal://jn1:8485; jn2:8485; jn3:8485/ns)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS中HDFS如何管理
本文地址: https://pptw.com/jishu/772998.html
