1.Linux操作系统为CentOS7
2.所有操作都是使用root用户去操作。也可以使用其他用户,非root的话要注意操作的权限问题。
3.安装的Hadoop版本是2.6.5,Spark版本是2.2.0,Scala的版本是2.11.8。
如果安装的Spark要同Hadoop搭配工作,则需注意他们之间的版本依赖关系。可以从spark官网上查询到Spark运行需要的环境,如下:
4.需要的安装包:
安装包下载地址:
Scala2.11.8:https://www.scala-lang.org/download/all.html
1.基础环境配置
1.1集群规划:
服务器
进程
Hostname
IP
配置
Namenode
SecondaryNamenode
Datanode
ResourceManager
NodeManager
Master
Worker
Hadoop1
192.168.137.21
1G内存、1核
√
√
√
√
Hadoop2
192.168.137.22
1G内存、1核
√
√
√
Hadoop3
192.168.137.23
1G内存、1核
√
√
√
1.2所有节点都增加ip和机器名称的映射关系,且3个节点可以相互ping通。
/etc/hosts文件配置如下
1.3所有节点关闭防火墙
查看防火墙状态:
systemctl status firewalld
关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
1.4 SSH免密登录设置
SSH免密登录设置参考:https://www.linuxidc.com/Linux/2018-05/152505.htm
通过配置,使得hadoop1、hadoop2、和hadoop3之间都可以相互免密登录(至少要使得hadoop1可以免密登录hadoop2和hadoop3)。
1.5配置NTP
这一步在测试环境中可有可无。生产环境的话,毕竟集群之间需要协同工作,几个节点之间的时间同步还是比较重要的。
集群中配置NTP可参考:https://www.linuxidc.com/Linux/2018-03/151402.htm
1.6配置JDK(所有节点)
JDK的配置可参考:https://www.linuxidc.com/Linux/2018-06/152794.htm
如下:
注:到这一步,基础环境算是配置好了,可以给各个节点做个快照,后面步骤出错了也可以快速恢复。
2.安装Hadoop
下面的2.1~2.2的步骤在所有节点上都要如此操作。我们先在hadoop1上做这些操作,然后在2.3步用scp命令将配置好的hadoop文件发送到hadoop2、hadoop3节点。
2.1解压安装包到/usr/local/目录下(hadoop1上操作)
命令:
cd /data/soft
tar -xvf hadoop-2.6.5.tar.gz -C /usr/local/
如下:
2.2进入到/usr/local/hadoop-2.6.5/etc/hadoop目录下,修改配置文件。(hadoop1上操作)
2.2.1配置hadoop-env.sh
命令:
vim hadoop-env.sh
在hadoop-env.sh中修改Java_HOME
export JAVA_HOME=/usr/local/jdk
如下:
注:需根据实际java路径进行修改
2.2.2配置core-site.xml
命令:
vim core-site.xml
在文件中加入如下内容
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
如下:
2.2.3配置hdfs-site.xml
命令:
vim hdfs-site.xml
在文件中加入如下内容
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
如下:
注:该文件其实也可以保持默认,其他个性化操作比如有: