温馨提示×

debian hdfs配置步骤有哪些

小樊
49
2025-10-19 11:08:50
栏目: 智能运维

1. 环境准备
在Debian系统上配置HDFS前,需完成基础环境准备:

  • 操作系统:确保使用Debian(如Debian 11/12),并更新至最新版本(sudo apt update && sudo apt upgrade -y)。
  • Java环境:Hadoop依赖Java 8或更高版本,推荐安装OpenJDK(如sudo apt install openjdk-11-jdk),并通过java -version验证安装。
  • SSH服务:用于节点间无密码通信,安装并启动SSH(sudo apt install openssh-server),配置免密码登录(生成密钥ssh-keygen -t rsa,分发公钥cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys,设置权限chmod 600 ~/.ssh/authorized_keys)。

2. 下载并安装Hadoop

  • 从Apache官网下载稳定版Hadoop(如3.3.1),使用wget命令获取安装包(wget https://downloads.apache.org/hadoop/core/hadoop-3.3.1/hadoop-3.3.1.tar.gz)。
  • 解压至指定目录(如/usr/local):sudo tar -xzvf hadoop-3.3.1.tar.gz -C /usr/local/
  • 重命名目录以便管理:sudo mv /usr/local/hadoop-3.3.1 /usr/local/hadoop

3. 配置Hadoop环境变量
编辑全局环境变量文件(如/etc/profile)或用户级文件(如~/.bashrc),添加以下内容:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  # 根据实际Java路径调整
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

保存后运行source /etc/profile(或source ~/.bashrc)使配置生效。

4. 配置HDFS核心文件
HDFS的主要配置文件位于$HADOOP_HOME/etc/hadoop目录,需修改以下文件:

  • core-site.xml:定义HDFS的默认文件系统和临时目录。
    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://namenode:9000</value>  <!-- NameNode主机名及端口 -->
        </property>
        <property>
            <name>hadoop.tmp.dir</name>
            <value>/var/cache/hadoop/tmp</value>  <!-- 临时文件目录 -->
        </property>
    </configuration>
    
  • hdfs-site.xml:配置NameNode/Datanode目录及副本数。
    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>3</value>  <!-- 数据副本数(生产环境建议3,单机环境可设为1) -->
        </property>
        <property>
            <name>dfs.namenode.name.dir</name>
            <value>/data/hadoop/hdfs/namenode</value>  <!-- NameNode元数据存储路径 -->
        </property>
        <property>
            <name>dfs.datanode.data.dir</name>
            <value>/data/hadoop/hdfs/datanode</value>  <!-- Datanode数据存储路径 -->
        </property>
    </configuration>
    
  • mapred-site.xml(若未存在,需从mapred-site.xml.template复制):指定MapReduce运行框架为YARN。
    <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
    </configuration>
    
  • yarn-site.xml:配置YARN资源管理器。
    <configuration>
        <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>resourcemanager</value>  <!-- ResourceManager主机名 -->
        </property>
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>  <!-- Shuffle服务 -->
        </property>
    </configuration>
    

5. 配置Hadoop环境文件
编辑$HADOOP_HOME/etc/hadoop/hadoop-env.sh,设置Java路径及其他环境变量:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  # 与全局环境变量一致
export HADOOP_LOG_DIR=/var/log/hadoop-hdfs  # 日志目录(需提前创建)

6. 格式化NameNode
在NameNode节点上执行格式化命令(仅首次启动前执行),初始化HDFS元数据:

hdfs namenode -format

格式化会清除所有HDFS数据,请谨慎操作。

7. 启动HDFS服务

  • 在NameNode节点上启动HDFS:$HADOOP_HOME/sbin/start-dfs.sh
  • 若配置了YARN,还需在ResourceManager节点上启动YARN:$HADOOP_HOME/sbin/start-yarn.sh
  • 启动后,可通过jps命令检查进程(NameNode、DataNode、ResourceManager、NodeManager等)是否正常运行。

8. 验证HDFS配置

  • Web界面:访问NameNode的Web界面(如http://namenode:9870,端口可能因版本不同而变化),查看集群状态。
  • 命令行操作
    • 查看HDFS节点列表:hdfs dfsadmin -report
    • 创建测试目录并上传文件:hdfs dfs -mkdir /testhdfs dfs -put /local/file.txt /test
    • 列出目录内容:hdfs dfs -ls /test

0