安装前提
安装环境
系统: centos7
Java版本: 1.8
Hadoop: 3.3.1版
安装包下载
上传到服务器
安装
注意事项
本次安装登录用户为Hadoop 未使用 root账号
增添用户
useradd -m hadoop -s /bin/bash #添加用户
passwd hadoop #输入密码
# 授权
visudo #打开配置文件 。
#在最后一行加入 并保存
hadoop ALL=(ALL) ALL #为hadoop添加管理员权限
cat > /etc/hostname <<hadoop #修改主机名
su hadoop #切换到hadoop用户
配置SSH免登录
ssh-keygen -t rsa #输入之后连续三次回车
ssh-copy-id hadoop #hadoop为主机名
ssh localhost
quit
配置Hadoop
- 解压
tar -zxvf hadoop-3.3.1.tar.gz -C /opt/module
将Hadoop的bin目录以及sbin目录加入到环境变量
- 进入安装目录 进入Hadoop的opt/hadoop目录配置如下信息
Hadoop配置信息
- 配置
hadoop-env.sh
添加Java_home
export JAVA_HOME = /opt/module/jdk1.8.0_301 #添加
# 旧版本需要 新版未进行实验
export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
- 配置core-site.xml
<!--将core-site.xml的内容改成下面的配置。-->
<configuration>
<!-- 用于设置namenode并且作为Java程序的访问入口 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://主机名:8020</value>
</property>
<!-- 存储NameNode持久化的数据,DataNode块数据 -->
<!-- 手工创建$HADOOP_HOME/data/tmp -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop/data/tmp</value>
</property>
</configuration>
<!--
# hadoop.tmp.dir # hadoop 缓存目录,更改为自己的目录(不存在需创建)
-->
- hdfs-site.xml
<!--将hdfs-site.xml的内容改成下面的配置。-->
<configuration>
<!-- 设置副本数量 默认是3 可自行根据需求更改 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!-- 权限,可省略 -->
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<!-- web访问端口号 -->
<property>
<name>dfs.namenode.http.address</name>
<value>主机名:50070</value>
</property>
<!-- 数据存储位置 -->
<property>
<name>dfs.namenode.dir</name>
<value>/opt/module/hadoop/namenode</value>
</property>
</configuration>
<!--
# dfs.replication # 为文件保存副本的数量-->
- 修改
mapred-site.xml
默认不存在需要复制
cp mapred-site.xml.template mapred-site.xml
添加如下配置
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
- 修改yarn-site.xml
<property>
<!--系统默认配置-->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
- 初始化与启动
hadoop/bin
hdfs namenode –format #初始化namenode
./start-all.sh # 启动全部
./stop-all.sh # 全部停止
./start-dfs.sh # 启动HDFS
./start-yarn.sh # 启动YARN
- 查看web
访问 http://ip:8088 #namenode web
访问 http://ip:9870 #dfs web
3一下版本
访问 http://ip:8088
访问 http://ip:50070
ps 如果使用root用户进行操作
需要进行如下操作
进入Hadoop的sbin目录
再 start-dfs.sh``,stop-dfs.sh
两个文件顶部添加以下参数
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
还有,start-yarn.sh
,stop-yarn.sh
顶部也需添加以下:
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root