阅读量:4
Ubuntu Hadoop 集群搭建指南
一 环境准备与规划
- 节点规划:至少准备1 个 Master 和 2 个 Worker(示例主机名:master、slave1、slave2),所有节点在同一局域网,能互相 ping 通。
- 软件版本:Ubuntu 16.04+、Java OpenJDK 8、Hadoop 3.3.x(如 3.3.4)。
- 用户与权限:建议创建专用用户 hadoop 并加入 sudo 组,后续操作尽量使用该用户。
- 目录约定:Hadoop 安装至 /usr/local/hadoop,数据目录如 /opt/hadoop(可按磁盘规划调整)。
- 网络与主机名:配置 /etc/hosts 做主机名与内网 IP 映射,便于组件间通信。
二 基础环境配置
- 安装 Java
- 执行:
sudo apt update && sudo apt install -y openjdk-8-jdk - 验证:
java -version应返回 1.8.x。
- 执行:
- 创建 Hadoop 用户与目录
- 执行:
sudo adduser hadoop,sudo usermod -aG sudo hadoop - 建议目录:
sudo mkdir -p /usr/local/hadoop /opt/hadoop && sudo chown -R hadoop:hadoop /usr/local/hadoop /opt/hadoop
- 执行:
- 配置主机名与 hosts
- 编辑
/etc/hostname分别设为 master/slave1/slave2; - 编辑
/etc/hosts(示例):192.168.1.10 master 192.168.1.11 slave1 192.168.1.12 slave2
- 编辑
- 安装并启用 SSH
- 执行:
sudo apt install -y openssh-server - 验证:
ssh localhost可免密登录本机(用于后续分发公钥)。
- 执行:
三 SSH 免密登录
- 在 master 生成密钥:
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa - 将公钥分发到所有节点(含本机):
ssh-copy-id hadoop@master、ssh-copy-id hadoop@slave1、ssh-copy-id hadoop@slave2
- 验证:
ssh slave1、ssh slave2无需密码即可登录;如需 Worker 免密回连 Master,可在对应节点重复上述分发步骤。
四 Hadoop 安装与配置
- 安装 Hadoop(以 3.3.4 为例)
- 下载:
wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz - 解压与授权:
sudo tar -xvf hadoop-3.3.4.tar.gz -C /usr/local sudo mv /usr/local/hadoop-3.3.4 /usr/local/hadoop sudo chown -R hadoop:hadoop /usr/local/hadoop
- 下载:
- 环境变量(所有节点)
- 在
~/.bashrc或/etc/profile.d/hadoop.sh添加:export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin - 使生效:
source ~/.bashrc
- 在
- 核心配置(路径均为 $HADOOP_HOME/etc/hadoop)
- core-site.xml
fs.defaultFS hdfs://master:9000 hadoop.tmp.dir /opt/hadoop/tmp - hdfs-site.xml
dfs.replication 2 dfs.namenode.name.dir /opt/hadoop/hdfs/namenode dfs.datanode.data.dir /opt/hadoop/hdfs/datanode - mapred-site.xml
mapreduce.framework.name yarn - yarn-site.xml
yarn.resourcemanager.hostname master yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.resource.memory-mb 4096 - workers(或 slaves)
slave1 slave2
- core-site.xml
- 创建数据目录并授权
sudo mkdir -p /opt/hadoop/tmp /opt/hadoop/hdfs/{namenode,datanode} sudo chown -R hadoop:hadoop /opt/hadoop
五 启动与验证
- 格式化 NameNode(仅 master 一次)
hdfs namenode -format
- 启动集群
start-dfs.shstart-yarn.sh
- 进程检查
- 在 master 执行
jps,应看到:NameNode、ResourceManager - 在 slave1/slave2 执行
jps,应看到:DataNode、NodeManager
- 在 master 执行
- Web 界面
- HDFS:http://master:9870(Hadoop 3.x 默认端口)
- YARN:http://master:8088
- 常见问题速查
- 无法访问 Web:检查防火墙/安全组放行 9870/8088,以及
workers是否配置正确; - DataNode 未启动:确认
dfs.datanode.data.dir目录存在且 hadoop 用户可写; - SSH 免密失败:确认
~/.ssh/authorized_keys权限为 600,.ssh为 700。
- 无法访问 Web:检查防火墙/安全组放行 9870/8088,以及
以上就是关于“Ubuntu Hadoop集群搭建指南”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm