Hadoop集群安装
三台服务器,一台本地主机
1.修改主机名
修改三台服务器的名称如下
hostnamectl set-hostname master
hostnamectl set-hostname slave1
hostnamectl set-hostname slave2
注意:2-7步需要在三台服务器中都进行操作,第8步在master节点中操作就好了
2.添加域名映射
连接服务器后,在xshell中
输入ifconfig
查看三台centos的IP地址
在主机中 win+R 搜索cmd ,打开cmd后
输入 ipconfig查看本机 IP地址
记录格式如下,填入服务器和本地主机的IP地址
192.168.xxx.xxx master
192.168.xxx.xxx slave1
192.168.xxx.xxx slave2
192.168.xxx.xxx Jacob-desktop
然后在3台服务器中,输入 vi /etc/hosts,添加域名映射
将记录好的内容直接贴到文件的最后
3.删除服务器自带openjdk
rpm -qa | grep java
rpm -e --nodeps xxxxxx(包含openjdk的文件全删掉,一般是两个)
4.安装java
自行上传java安装文件,然后在上传文件夹下输入以下命令,我上传的是jdk-8u101-linux-x64.rpm
rpm -ivh jdk-8u101-linux-x64.rpm
5.安装hadoop
上传Hadoop文件
解压hadoop,输入以下命令
我的Hadoop版本文件是hadoop-2.7.4.tar.gz
tar -zxvf hadoop-2.7.4.tar.gz
6.修改java依赖
我的Hadoop是安装在/opt/soft文件夹下的
vim /opt/soft/hadoop-2.7.4/etc/hadoop/hadoop-env.sh
7.配置Hadoop的core-site.xml
vim /opt/soft/hadoop-2.7.4/etc/hadoop/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/Cloud1</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
</configuration>
8.格式化主节点
输入以下命令就可执行
/opt/soft/hadoop-2.7.4/bin/hdfs namenode -format
我遇到了一种情况,就是找不到hdfs的命令,这个问题需要去修改一下 /etc/profile 文件
vim /etc/profile
在文件的最后添加一下4行
java路径一般是固定的,Hadoop路径就是安装的路径
export JAVA_HOME=/usr/java/jdk1.8.0_101
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/opt/soft/hadoop-2.7.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
然后编译一下
source /etc/profile
然后就可以在任意路径下输入
hdfs namenode -format
来进行主节点的格式化
9.启动服务
主节点
/opt/soft/hadoop-2.7.4/sbin/hadoop-daemon.sh start namenode
从节点
/opt/soft/hadoop-2.7.4/sbin/hadoop-daemon.sh start datanode
启动成功标志:
在master,jps 有namenode
在slave上,jps有datanode
如果要在本地打开http://master:50070来查看hadoop,需要先关闭所有服务器的防火墙,然后就可以访问了
查看状态
systemctl status firewalld.service
打开防火墙
systemctl start firewalld.service
关闭防火墙
systemctl stop firewalld.service
开启防火墙
systemctl enable firewalld.service
禁用防火墙
systemctl disable firewalld.service