Ubuntu如何管理HDFS集群
导读:Ubuntu 上管理 HDFS 集群的实用指南 一 环境准备与集群规划 规划角色与网络:明确 NameNode、DataNode、ResourceManager、NodeManager 的角色分配;统一 /etc/hosts 或 DNS...
Ubuntu 上管理 HDFS 集群的实用指南
一 环境准备与集群规划
- 规划角色与网络:明确 NameNode、DataNode、ResourceManager、NodeManager 的角色分配;统一 /etc/hosts 或 DNS 解析;建议为节点配置 静态 IP,保证各节点互通。
- 安装 Java:在所有节点安装 OpenJDK 8(Hadoop 3.x 常用版本),并配置 JAVA_HOME。
- 配置 SSH 免密:在 NameNode 生成密钥,将公钥分发到各 DataNode,以便脚本统一启停。
- 下载解压 Hadoop:从 Apache 镜像下载 Hadoop(如 3.3.x),解压至统一目录(如 /usr/local/hadoop 或 /opt/hadoop),并设置环境变量 HADOOP_HOME 与 PATH。
- 目录准备:为 NameNode/DataNode 创建本地数据目录,并确保运行 Hadoop 的用户拥有读写权限。
二 核心配置与启动
- 关键配置文件与要点(路径为 $HADOOP_HOME/etc/hadoop):
- hadoop-env.sh:设置 JAVA_HOME。
- core-site.xml:设置默认文件系统,如 fs.defaultFS=hdfs://namenode:9000。
- hdfs-site.xml:设置副本数(如 dfs.replication=3)、dfs.namenode.name.dir、dfs.datanode.data.dir。
- yarn-site.xml:设置 yarn.resourcemanager.hostname 与 yarn.nodemanager.aux-services=mapreduce_shuffle。
- mapred-site.xml:设置 mapreduce.framework.name=yarn。
- workers(或 slaves):列出所有 DataNode 主机名。
- 首次启动流程:仅在 NameNode 执行一次 hdfs namenode -format;随后在 NameNode 执行 start-dfs.sh,在 ResourceManager 执行 start-yarn.sh;使用 jps 校验进程是否就绪。
- 常用端口与访问:HDFS NameNode Web UI 50070,YARN ResourceManager 8088,HDFS RPC 9000;如启用 ufw,放行相应端口。
三 日常运维与监控
- 健康检查与报告:使用 hdfs dfsadmin -report 查看 DataNode 数量、容量与健康;用 yarn node -list 查看 NodeManager 状态。
- 文件与目录管理:
- 创建目录:hdfs dfs -mkdir /path
- 上传/下载:hdfs dfs -put local /hdfs,hdfs dfs -get /hdfs local
- 删除:hdfs dfs -rm -r /path
- 应用管理(YARN):yarn application -list/-status/-kill 。
- 日志与排错:实时查看 NameNode/DataNode 日志,例如:
- tail -f $HADOOP_HOME/logs/hadoop--namenode-.log
- tail -f $HADOOP_HOME/logs/hadoop--datanode-.log
- 安全与配额:按需设置目录权限与 配额(如空间/文件数),并定期审计访问日志。
四 扩缩容与常见故障处理
- 扩容 DataNode:准备新节点(安装 Java、Hadoop、SSH 免密、统一配置);在 workers 文件中新增主机名;同步配置到新节点;启动 DataNode;执行 hdfs dfsadmin -refreshNodes 让 NameNode 识别新节点;按需调整 dfs.replication 并触发块复制。
- 常见故障排查:
- DataNode 未注册:检查 workers 配置、网络连通性、SSH 免密、NameNode/DataNode 日志。
- 端口不通:确认 9000/50070/8088 已放行,或临时关闭防火墙验证。
- 权限问题:确认 HDFS 目录属主与权限,必要时使用 hdfs dfs -chown/chmod。
- 磁盘满/不健康:清理或扩容本地数据目录,查看 DataNode 磁盘使用与健康状态。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu如何管理HDFS集群
本文地址: https://pptw.com/jishu/750869.html
