如何在Debian上安装HDFS
导读:在 Debian 上安装与配置 HDFS 的实用步骤 一 环境准备 安装 Java(Hadoop 3.x 建议使用 OpenJDK 8 或 11): 安装 OpenJDK 11:sudo apt update && su...
在 Debian 上安装与配置 HDFS 的实用步骤
一 环境准备
- 安装 Java(Hadoop 3.x 建议使用 OpenJDK 8 或 11):
- 安装 OpenJDK 11:sudo apt update & & sudo apt install -y openjdk-11-jdk
- 验证:java -version
- 创建专用用户(可选但推荐):sudo adduser --disabled-password --gecos “” hadoop & & sudo usermod -aG sudo hadoop
- 配置主机名解析(/etc/hosts,示例):
- 192.168.1.10 namenode
- 192.168.1.11 datanode1
- 192.168.1.12 datanode2
- 配置 SSH 免密登录(从 namenode 到各节点,包括本机):
- hadoop@namenode:~$ ssh-keygen -t rsa -b 2048 -N “” -f ~/.ssh/id_rsa
- hadoop@namenode:~$ ssh-copy-id hadoop@namenode
- hadoop@namenode:~$ ssh-copy-id hadoop@datanode1
- hadoop@namenode:~$ ssh-copy-id hadoop@datanode2
二 安装 Hadoop 二进制包
- 下载并解压(示例版本 3.3.15,可按需替换为最新稳定版):
- wget https://downloads.apache.org/hadoop/core/hadoop-3.3.15/hadoop-3.3.15.tar.gz
- sudo tar -xzvf hadoop-3.3.15.tar.gz -C /usr/local
- sudo ln -sfn /usr/local/hadoop-3.3.15 /usr/local/hadoop
- 设置环境变量(对所有节点):
- echo ‘export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64’ | sudo tee -a /etc/profile.d/hadoop.sh
- echo ‘export HADOOP_HOME=/usr/local/hadoop’ | sudo tee -a /etc/profile.d/hadoop.sh
- echo ‘export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin’ | sudo tee -a /etc/profile.d/hadoop.sh
- source /etc/profile.d/hadoop.sh
- 验证安装:hadoop version
三 配置 HDFS(核心文件)
- 配置 JAVA_HOME(所有节点):编辑 $HADOOP_HOME/etc/hadoop/hadoop-env.sh
- export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
- core-site.xml(所有节点一致,使用主机名):
- fs.defaultFShdfs://namenode:9000
- hdfs-site.xml(所有节点一致,路径需提前创建并赋权给 hadoop 用户):
- dfs.replication2 dfs.namenode.name.dir/data/hadoop/hdfs/namenode dfs.datanode.data.dir/data/hadoop/hdfs/datanode
- 创建目录并赋权(所有节点):
- sudo mkdir -p /data/hadoop/hdfs/{ namenode,datanode}
- sudo chown -R hadoop:hadoop /data/hadoop
- 可选:如需 YARN 与 MapReduce,补充 mapred-site.xml 与 yarn-site.xml(示例):
- mapred-site.xml:mapreduce.framework.nameyarn
- yarn-site.xml:
- yarn.resourcemanager.hostnamenamenode
- yarn.nodemanager.aux-servicesmapreduce_shuffle
- yarn.nodemanager.aux-services.mapreduce.shuffle.classorg.apache.hadoop.mapred.ShuffleHandler
四 启动与验证
- 仅在 NameNode 上执行:
- 格式化 NameNode:hdfs namenode -format(首次部署执行一次)
- 启动 HDFS:start-dfs.sh
- 如需 YARN:start-yarn.sh
- 验证进程(各节点):jps
- NameNode 应看到:NameNode
- DataNode 应看到:DataNode
- ResourceManager(若启用 YARN):ResourceManager;NodeManager:NodeManager
- 验证 HDFS 状态与基本操作:
- hdfs dfsadmin -report
- hdfs dfs -mkdir -p /test
- hdfs dfs -put /etc/hosts /test
- hdfs dfs -ls /test
- Web 界面(Hadoop 3.x):
- NameNode:http://namenode:9870
- ResourceManager(若启用 YARN):http://namenode:8088
五 常见问题与优化
- 目录权限与 SELinux/AppArmor:确保 /data/hadoop 及其子目录属主为 hadoop:hadoop,必要时调整安全策略。
- 防火墙:开放端口 9000(HDFS RPC)、9870(NameNode Web)、8088(ResourceManager Web)、以及 DataNode 数据端口范围(默认 9866 起,视配置而定)。
- 主机名与解析:/etc/hosts 或 DNS 必须可解析 namenode 与各 datanode 的主机名。
- SSH 免密:namenode 到所有节点的免密登录必须可用(含本机),否则脚本启动会失败。
- 副本数:单节点或双节点测试可将 dfs.replication 设为 1 或 2,生产环境建议 3。
- 日志排查:$HADOOP_HOME/logs/ 下的 namenode-*.log、datanode-*.log、resourcemanager-*.log 等是首要排查对象。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在Debian上安装HDFS
本文地址: https://pptw.com/jishu/756111.html
