温馨提示×

Debian下HDFS安装步骤是什么

小樊
45
2025-10-06 18:18:23
栏目: 智能运维

Debian下HDFS安装步骤(单机/伪分布式模式)

1. 系统初始化

  • 更新系统:运行sudo apt update && sudo apt upgrade -y,确保系统软件包为最新版本。
  • 安装必要工具:安装网络工具、SSH服务和vim编辑器,用于后续配置:
    sudo apt install net-tools vim openssh-server -y
  • 关闭防火墙(可选):若无需严格安全隔离,可临时关闭防火墙(生产环境建议配置规则):
    sudo ufw disable

2. 安装Java环境

Hadoop依赖Java运行环境,推荐安装OpenJDK 11(兼容性最佳):

  • 运行sudo apt install openjdk-11-jdk -y安装JDK。
  • 验证安装:java -version,输出应包含Java版本信息(如openjdk version "11.0.xx")。

3. 下载并解压Hadoop

  • 下载Hadoop:访问Apache Hadoop官网(hadoop.apache.org),选择稳定版本(如3.3.6),使用wget下载tar.gz包:
    wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
  • 解压并移动:将包解压至/usr/local/目录,并重命名为hadoop
    sudo tar -xzvf hadoop-3.3.6.tar.gz -C /usr/local/ && sudo mv /usr/local/hadoop-3.3.6 /usr/local/hadoop
  • 创建专用用户(可选但推荐):避免使用root运行Hadoop,提升安全性:
    sudo adduser hadoop && sudo usermod -aG sudo hadoop

4. 配置Hadoop环境变量

  • 编辑全局环境变量文件/etc/profile,添加以下内容(替换路径为实际安装路径):
    export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 # 根据实际Java路径调整 
  • 使配置生效:source /etc/profile
  • 验证环境变量:echo $HADOOP_HOME应输出Hadoop安装路径。

5. 配置HDFS核心文件

Hadoop的主配置文件位于$HADOOP_HOME/etc/hadoop/目录,需修改以下文件:

  • core-site.xml(定义HDFS默认文件系统):
    <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> <!-- 单机模式下指向本地 --> </property> <property> <name>hadoop.tmp.dir</name> <value>/tmp/hadoop-${user.name}</value> <!-- 临时目录 --> </property> </configuration> 
  • hdfs-site.xml(定义HDFS副本数和数据目录):
    <configuration> <property> <name>dfs.replication</name> <value>1</value> <!-- 单机模式设为1,集群模式需≥3 --> </property> <property> <name>dfs.namenode.name.dir</name> <value>/opt/hadoop/hdfs/namenode</value> <!-- NameNode元数据目录 --> </property> <property> <name>dfs.datanode.data.dir</name> <value>/opt/hadoop/hdfs/datanode</value> <!-- DataNode数据目录 --> </property> </configuration> 
  • mapred-site.xml(定义MapReduce框架):若文件不存在,可复制模板生成:
    cp $HADOOP_HOME/etc/hadoop/mapred-site.xml.template $HADOOP_HOME/etc/hadoop/mapred-site.xml,然后编辑:
    <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> <!-- 使用YARN作为资源管理器 --> </property> </configuration> 
  • yarn-site.xml(定义YARN配置):
    <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> <!-- Shuffle服务 --> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> </configuration> 

6. 格式化NameNode

NameNode是HDFS的核心元数据节点,首次启动前需格式化(注意:格式化会清除已有数据):

  • 在终端运行:hdfs namenode -format,等待格式化完成(输出“Format successful”即为成功)。

7. 启动HDFS服务

  • 启动HDFS:在终端运行start-dfs.sh,启动NameNode和DataNode服务。
  • 验证进程:运行jps,应看到NameNodeDataNode进程(若未显示,检查日志文件$HADOOP_HOME/logs/)。
  • 查看HDFS状态:运行hdfs dfsadmin -report,查看DataNode是否注册成功。

8. 验证HDFS功能

  • 创建测试目录:hdfs dfs -mkdir -p /test
  • 上传测试文件:将本地文件(如/usr/src/linux-source-2.6.27/Doc*/memory-barriers.txt)上传至HDFS:
    hdfs dfs -put /usr/src/linux-source-2.6.27/Doc*/memory-barriers.txt /test
  • 列出目录内容:hdfs dfs -ls /test,若能看到上传的文件,则说明HDFS安装成功。

注意事项

  • 网络配置:若为集群模式,需确保所有节点IP和主机名已添加至/etc/hosts文件,并配置静态IP。
  • SSH免密登录:集群模式下,NameNode需能免密登录所有DataNode(使用ssh-keygenssh-copy-id配置)。
  • 端口冲突:若端口(如9000、50070)被占用,可在配置文件中修改为其他端口。
  • 日志排查:若启动失败,可通过$HADOOP_HOME/logs/目录下的日志文件(如namenode.log)定位问题。

0