一、前期准备:创建Hadoop用户
1.打开终端,创建用户
sudo useradd -m hadoop -s /bin/bash
2. 为hadoop用户设置密码
sudo passwd hadoop
连续输入两次密码并回车
3. 给hadoop用户添加管理员权限
sudo adduser hadoop sudo
4.登出,切换到hadoop用户
二、安装依赖:JDK与SSH
(一)安装SSH、配置SSH无密码登陆
1. 安装SSH服务端
Ubuntu默认只装了SSH客户端,需要手动安装服务端:
sudo apt-get install openssh-server
执行后输入当前用户密码,等待安装完成。
2. 测试SSH登录本机
ssh localhost
首次登录会出现SSH首次登录提示,询问是否继续连接,输入 yes 回车
然后输入 hadoop 用户的密码,即可登录本机
此时是需要密码登录,后续要配置免密
3.配置SSH免密登录
1) 先退出刚才的SSH会话
exit
2)进入SSH配置目录
cd ~/.ssh/
3)生成SSH密钥对
ssh-keygen -t rsa
全程按回车,使用默认配置
4)将公钥添加到授权文件中
cat ./id_rsa.pub >> ./authorized_keys
4. 验证免密登录
再次输入:
ssh localhost
记得exit退出
(二)Java 8安装及环境变量配置
1. 安装OpenJDK 8
sudo apt update
sudo apt install -y openjdk-8-jre openjdk-8-jdk
验证安装:java -version
出现对应版本即成功

2. 获取JDK安装路径
找到相应的安装路径
readlink -f /usr/bin/javac
示例输出:

去掉末尾 /bin/javac ,得到JAVA_HOME路径:
/usr/lib/jvm/java-8-openjdk-amd64
3.配置环境变量
gedit ~/.bashrc
在文件末尾添加以下内容(注意路径替换为自己的JDK路径):
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
点击gedit右上角的保存,然后关闭窗口即可
4. 生效环境变量
source ~/.bashrc
5. 验证配置
echo $JAVA_HOME
终端输出你配置的JDK路径,说明配置成功

三、安装Hadoop(以3.3.6稳定版为例)
注意:3.5.0版本需安装配置java 17
0. 配置 Hadoop 环境变量 (hadoop-env.sh)
Hadoop 启动脚本需要明确知道 Java 的安装路径,否则可能报错 Error: JAVA_HOME is not set 。
打开配置文件:
gedit ./etc/hadoop/hadoop-env.sh
修改内容:
在文件中找到 export JAVA_HOME=${JAVA_HOME} 这一行(通常在文件中间部分,可以使用 Ctrl+F 搜索)。
- 如果有该行但被注释(有#号):去掉 # 号。
- 如果该行不存在或为空:在文件末尾添加以下内容。
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
1.下载hadoop
选择对应版本中的hadoop-3.x.y.tar.gz下载
阿里云镜像网站
https://mirrors.aliyun.com/apache/hadoop/common/
2.解压
# 解压到/usr/local目录
sudo tar -zxvf hadoop-3.3.6.tar.gz -C /usr/local/
cd /usr/local/
# 将文件夹名改为hadoop
sudo mv ./hadoop-3.3.6/ ./hadoop
# 修改文件权限
sudo chown -R hadoop ./hadoop
3.检查 Hadoop 是否可用
cd /usr/local/hadoop
./bin/hadoop version
成功则会显示 Hadoop 版本信息:

四、伪分布式核心配置
1.修改配置文件 core-site.xml
gedit ./etc/hadoop/core-site.xml
修改:
<configuration>
</configuration>
为:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
2.修改配置文件 hdfs-site.xml
gedit ./etc/hadoop/hdfs-site.xml
同上修改配置文件:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
3.修改配置文件 mapred-site.xml
重命名
mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml
gedit ./etc/hadoop/mapred-site.xml
同上修改配置文件:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
4.修改配置文件 yarn-site.xml
gedit ./etc/hadoop/yarn-site.xml
同上修改配置文件:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
五、初始化与启动集群
1. 格式化HDFS(仅第一次执行,不可重复执行)
cd /usr/local/hadoop
./bin/hdfs namenode -format
看到 Successfully formatted 即成功
2.启动HDFS和YARN
./sbin/start-dfs.sh
./sbin/start-yarn.sh
./sbin/mr-jobhistory-daemon.sh start historyserver # 开启历史服务器
3. 验证集群进程
jps
出现以下进程:

六、Web UI访问验证
- HDFS管理界面:在浏览器输入 http://localhost:9870 ,可查看HDFS状态、文件目录
- YARN管理界面:在浏览器输入 http://localhost:8088 ,可查看集群资源、运行任务
七、关闭集群
./sbin/stop-dfs.sh
./sbin/stop-yarn.sh
./sbin/mr-jobhistory-daemon.sh stop historyserver
&spm=1001.2101.3001.5002&articleId=160381909&d=1&t=3&u=a9479bad70304cabb58c3ba3dbb1d6c7)
151

被折叠的 条评论
为什么被折叠?



