Debian 系统兼容 Hadoop 所需的 JDK,但需要注意版本匹配问题。以下是详细说明:
Debian 官方仓库提供以下 JDK 选项(通过 apt 安装):
Hadoop 不同版本对 JDK 的要求不同:
| Hadoop 版本 | 兼容的 JDK 版本 | 说明 |
|---|---|---|
| Hadoop 3.3.x+ | Java 8、11、17(推荐 11 或 17) | 官方明确支持 Java 8/11/17,Java 17 需 Hadoop 3.3.5+。 |
| Hadoop 3.2.x | Java 8、11 | 不支持 Java 17。 |
| Hadoop 2.x | Java 8(部分支持 7) | 不推荐 Java 11+(可能不兼容)。 |
✅ 推荐组合:
- Debian 12 + OpenJDK 11 + Hadoop 3.3.x(最稳定)。
- 若需 Java 17,选择 Hadoop 3.3.5+。
# 更新软件包列表
sudo apt update
# 安装 OpenJDK 11
sudo apt install openjdk-11-jdk
# 验证安装
java -version
输出应类似:
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment (build 11.0.20+8-post-Debian-1deb12u1)
OpenJDK 64-Bit Server VM (build 11.0.20+8-post-Debian-1deb12u1, mixed mode)
如果安装了多个版本,使用 update-alternatives 切换:
sudo update-alternatives --config java
JAVA_HOME 环境变量(在 /etc/profile 或 Hadoop 配置文件中):export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 # 路径根据安装调整
export PATH=$JAVA_HOME/bin:$PATH
hadoop-env.sh 中确认 JAVA_HOME:echo "export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64" >> $HADOOP_HOME/etc/hadoop/hadoop-env.sh
hdfs namenode -format)。hadoop-docker 镜像)。JAVA_HOME 并验证 Hadoop 启动。