1. 安装hadoop并修改配置文件
在usr 文件夹下创建 hadoop 文件夹作为压缩包存放和解压路径,将 hadoop 的压缩包传输到此文件夹下后 解压:
[root@hadoop-1 hadoop]# pwd
/usr/hadoop
[root@hadoop-1 hadoop]# ll
total 357860
-rw-r--r--. 1 root root 366447449 Feb 25 14:28 hadoop-2.9.2.tar.gz
[root@hadoop-1 hadoop]# tar -zxvf hadoop-2.9.2.tar.gz
后续就是配置proflie文件 和 修改五个配置文件
注意:hadoop 2.x 的配置文件在 $HADOOP_HOME/etc/hadoop 目录中
1.1 配置proflie文件
在etc 的 profile 最后添加入下内容,然后 source 刷新配置文件
export HADOOP_HOME=/usr/hadoop/hadoop-2.9.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
接下来需要改五个配置文件
1.2 第一个:hadoop-env.sh
进入到hadoop-2.9.3 /etc/hadoop 文件夹下,修改 hadoop-env.sh
vimhadoop-env.sh,填写的是java的安装路径(25行)
# The java implementation to use.
# export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/usr/java/jdk1.8.0_231
1.3 第二个 core-site.xml
在configuration 中加上:
<!-- 指定HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop-1.wj:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录[能自动生成目录] -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
</property>
1.4 第三个 hdfs-site.xml
同上configuration 中添加:
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!-- 确定 DFS namenode 在本地文件系统上应存储名称表(fsimage)的位置 -->
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/tmp/dfs/name</value>
</property>
<!-- 确定 DFS datanode 应在本地文件系统上的哪个位置存储其块 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/tmp/dfs/data</value>
</property>
<!-- 如果为“ false”,则关闭权限检查 -->
<property>
<name>dfs.permissions.enabled</name>
<value>falise</value>
</property>
1.5 第四个 mapred-site.xml
mapred-site.xml 配置 MapReduce 运行的平台,默认为 local 本地平台模拟运行,而不是在集群上分布式运行,只是一个单机的程序
这里配置为 yarn 平台运行,yarn 负责分配内存
这个需要复制一个模版文件出来
cp mapred-site.xml.template mapred-site.xml
然后vim mapred-site.xml 添加
<!-- 指定mr运行在yarn上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
1.6 第五个 yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop-1.wj</value>
</property>
<!-- reducer 获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 忽略虚拟内存检查,如果实在实体机上,并且内存够多,可以去掉 -->
<property>
<name>yarn.nodemanager.vmen-check-enabled</name>
<value>false</value>
</property>
2. 格式化 namenode
对namenode 进行初始化
hadoop namenode -format
如果没有报错说明配置文件成功,否则重新检查配置文件
3. 启动 hadoop
先启动HDFS(这里需要yes三次并输入你的root密码三次):
start-dfs.sh
再启动YARN(这里需要输入root密码):
start-yarn.sh
4. 验证是否启动成功
[root@hadoop-1 hadoop]# jps
3297 DataNode
4113 Jps
3477 SecondaryNameNode
3973 NodeManager
3161 NameNode
3674 ResourceManager
关闭防火墙
[root@hadoop-1 hadoop]# systemctl stop firewalld
[root@hadoop-1 hadoop]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
浏览器查看
- http://ip地址:50070 (HDFS 管理界面)
- http://ip地址:8088 (YARN 管理界面)
本例中:
- HDFS 管理界面 :http://192.168.27.100:50070/
- YSRN 管理界面 :http://192.168.27.100:8088/
如果页面正常则说明hadoop配置成功