Hadoop2.X集群安装(CentOS_7)
首先,集群分布条件需要三台或三台以上服务器主机,如果只有一台笔记本的话可以使用VMware Workstation安装三个虚拟主机。
一.安装JDK
1). 下载JDK
2). 解压并配置JDK环境变量
[[email protected] java]# tar -zxvf jdk-8u201-linux-x64.tar.gz
[[email protected] java]# vim /etc/profile #在其中添加以下内容:
export JAVA_HOME=/usr/java/jdk1.8.0_171
export JRE_HOME=/usr/java/jdk1.8.0_171/jre
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
保存并退出后: [[email protected] java]# sourch /etc/profile 使环境变量立即更新
二.配置SSH免密登陆
如果要实现无密登陆到其它的主机,只需将生成的 “ id_rsa.pub " 追加到其它主机的 ” ~/.ssh/authorized_keys “ 中去。这里我们使用的方法是先将本机的 ” ~/.ssh/id_rsa.pub “ 拷贝到你想无密登陆的主机上,再在相应的主机上使用 ” cat " 命令将” ~/.ssh/id_rsa.pub “ 追加到该主机的 ” ~/.ssh/authorized_keys “ 中。
1.安装ssh: [[email protected] java]# yum install ssh
2.进入.ssh文件夹: [[email protected] java]# cd ~/.ssh # 如果找不到这个文件夹,先执行一下 "ssh localhost"
3.生成**::[[email protected] .ssh]# ssh-****** -t rsa #一路回车即可
4.创建存放**文件: [[email protected] .ssh]# touch authorized_keys
5.追加**到文件:[[email protected] .ssh]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[[email protected] .ssh]# ll
total 20
-rw-r--r--. 1 root root 408 Jan 29 01:41 authorized_keys
-rw-------. 1 root root 1679 Jan 29 01:38 id_rsa
-rw-r--r--. 1 root root 408 Jan 29 01:38 id_rsa.pub
三.配置hosts列表
该项也需要在HadoopSlave节点配置。
[[email protected] /]# vi /etc/hosts #将下面三行添加到/etc/hosts文件中:
192.168.38.136 master
192.168.38.137 slave1
192.168.38.138 slave2
ping slave1 如果能ping通表示配置成功
四.hadoop分布式集群安装
- hadoop安装包下载:https://hadoop.apache.org/releases.html
- 安装前需要在/usr/hadoop下新建文件夹:tmp/hdfs/name 与 tmp/hdfs/data #后面会用到
解压安装包:[[email protected] hadoop]# tar -zxvf hadoop-2.8.5.tar.gz
五.配置hadoop环境变量(etc/hadoop)目录下,hadoop-env.sh,core-site.xml,mapred-site.xml.template,hdfs-site.xml。)
1)配置hadoop-env.sh
将hadoop-env.sh文件靠前export JAVA_HOME=${JAVA_HOME} 修改为 export JAVA_HOME=/usr/java/jdk1.8.0_201
保存并退出
2) 配置core-site.xml文件
#用下面代码替换文件中<configuration></configuration>
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
3) 配置hdfs-site.xml文件
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/hadoop/tmp/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/hadoop/tmp/hdfs/data</value>
</property>
</configuration>
4) 配置mapred-site.xml.template文件
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
5) 配置yarn-site.xml文件
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
6) 在master节点配置slaves文件
[[email protected]ost /]# vi slaves
master
slave1
slave2
7) 配置hadoop环境变量
[[email protected] /]# vi /etc/profile
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_HOME=/usr/hadoop/hadoop-2.8.5#生效 [[email protected] /]# source /etc/profile
8) 将主节点上的文件复制到从节点上
[[email protected] /]# scp /usr/hadoop 192.168.38.137:/usr
[[email protected] /]# scp /usr/hadoop 192.168.38.138:/usr
9) 初始化HDFS
[[email protected] /]# bin/hadoop namenode -format
五. 启动测试
启动HDFS
进入到hadoop主安装目录后使用 sbin/start-dfs.sh
如果出现下图则hadoop启动成功