温馨提示×

HDFS在CentOS上的配置教程有哪些

小樊
49
2026-01-08 06:57:50
栏目: 智能运维

CentOS上配置HDFS的精选教程与实操要点

一、入门与单机快速上手

  • 目标:在单台CentOS上跑通HDFS,适合学习与功能验证。
  • 核心步骤:
    • 安装Java 8(OpenJDK或Oracle JDK),配置环境变量(如JAVA_HOME、HADOOP_HOME、PATH)。
    • 下载并解压Hadoop 3.x(常见版本如3.3.1)到如**/opt/hadoop-3.3.1**。
    • 配置core-site.xml:设置默认文件系统为hdfs://localhost:9000;配置hdfs-site.xml:副本数dfs.replication=1,并指定dfs.namenode.name.dirdfs.datanode.data.dir本地目录。
    • 首次启动前执行hdfs namenode -format初始化元数据。
    • 启动HDFS:执行start-dfs.sh;用jps检查进程(应见到NameNode、DataNode)。
    • 访问NameNode Web UIhttp://<主机IP>:50070(旧版)或http://<主机IP>:9870(Hadoop 3.x 常用)。

二、多节点集群部署教程

  • 目标:在多台CentOS机器上部署可扩展的HDFS集群(1个NameNode + 多个DataNode)。
  • 核心步骤:
    • 前置:各节点安装Java 8、配置**/etc/hosts或DNS解析、建议配置静态IP**,并打通SSH免密登录(便于脚本启动)。
    • 安装与目录:同版本Hadoop解压到统一路径(如**/usr/local/hadoop**),统一用户与目录权限。
    • 配置要点:
      • core-site.xml:设置fs.defaultFS=hdfs://namenode:9000
      • hdfs-site.xml:设置dfs.replication=3(生产建议),并分别配置dfs.namenode.name.dirdfs.datanode.data.dir为各节点本地存储路径。
      • workers(或旧版slaves)文件中列出所有DataNode主机名。
    • 初始化与启动:在NameNode执行hdfs namenode -format,随后用start-dfs.sh启动集群。
    • 验证:用hdfs dfsadmin -report查看Live Nodes;访问NameNode Web UI核对节点与存储状态。

三、高可用HA部署教程

  • 目标:消除单点故障,构建NameNode HA(通常配合ZooKeeperJournalNode)。
  • 核心步骤:
    • 架构准备:至少3台JournalNode(奇数台便于选举),2个NameNode(Active/Standby),并部署ZooKeeper集群。
    • 配置关键项(示例思路):
      • hdfs-site.xml中定义dfs.ha.namenodes.、两个NameNode RPC地址JournalNode编辑地址、dfs.namenode.shared.edits.dir、故障转移代理类**dfs.client.failover.proxy.provider.**等。
      • core-site.xml中将fs.defaultFS指向nameservice(如hdfs://mycluster)。
    • 初始化与启动:
      • 格式化Active NameNode;启动JournalNode;在备用NameNode执行hdfs namenode -bootstrapStandby同步元数据;启动ZKFC(故障转移控制器)。
    • 验证:通过Web UIhdfs haadmin工具检查HA状态Failover是否正常。

四、配置与排错要点清单

  • 环境与系统
    • 使用Java 8(Hadoop 3.x对Java 11/17的支持需按发行版说明选择),各节点时间同步(如chronyNTP),统一Hadoop版本与配置
  • 网络与防火墙
    • 建议配置静态IP与**/etc/hosts解析;开放常用端口:9000(RPC)、50070/9870(NameNode Web)、50010/50020/50075/50090(DataNode相关)等,或临时关闭firewalld**用于测试。
  • 目录与权限
    • NameNode/DataNode目录设置专属本地路径并赋予hadoop用户权限(如chown -R hadoop:hadoop /usr/local/hadoop)。
  • 常见故障排查
    • DataNode未注册:检查workers名单、SSH免密防火墙存储目录权限磁盘空间
    • 启动失败/端口占用:用jpsnetstat定位进程与端口;查看**$HADOOP_HOME/logs下对应日志(如namenode.log、datanode.log**)。

0