本文主要是介绍Hadoop2.8.5集群安装(CentOS 7),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
进行hadoop安装,首先集群分布条件需要三台或三台以上服务器主机,如果只有一台笔记本的话可以使用VMware Workstation安装三个虚拟主机。
一.安装JDK
1). 下载JDK
- 下载地址
2). 解压并配置JDK环境变量
[root@localhost java]# tar -zxvf jdk-8u201-linux-x64.tar.gz
[root@localhost 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
保存并退出后: [root@localhost java]# source /etc/profile 使环境变量立即更新
二.配置SSH免密登陆
如果要实现无密登陆到其它的主机,只需将生成的 “ id_rsa.pub " 追加到其它主机的 ” ~/.ssh/authorized_keys “ 中去。这里我们使用的方法是先将本机的 ” ~/.ssh/id_rsa.pub “ 拷贝到你想无密登陆的主机上,再在相应的主机上使用 ” cat " 命令将” ~/.ssh/id_rsa.pub “ 追加到该主机的 ” ~/.ssh/authorized_keys “ 中。
1.安装ssh: [root@localhost java]# yum install ssh
2.进入.ssh文件夹: [root@localhost java]# cd ~/.ssh # 如果找不到这个文件夹,先执行一下 "ssh localhost"
3.生成密钥::[root@localhost .ssh]# ssh-keygen -t rsa #一路回车即可
4.创建存放密钥文件: [root@localhost .ssh]# touch authorized_keys
5.追加密钥到文件:[root@localhost .ssh]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[root@localhost .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
三.关闭防火墙
- 目的:使外网可以访问linux端口
- 关闭防火墙命令
- [root@localhost /]# systemctl stop firewalld.service #停止firewall
- [root@localhost /]# systemctl disable firewalld.service #禁止firewall开机启动
- [root@localhost /]# reboot #重新启动
四.配置hosts列表
该项也需要在HadoopSlave节点配置。
[root@localhost /]# vi /etc/hosts #将下面三行添加到/etc/hosts文件中同时并注释掉所有主机原有的127.0.***:
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 #后面会用到
解压安装包:[root@localhost 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://master: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文件
#先将 mapred-site.xml.template文件改为 mapred-site.xml<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) 配置slaves文件
[root@localhost /]# vi slaves
master
slave1
slave2
7) 配置hadoop环境变量
[root@localhost /]# 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#生效 [root@localhost /]# source /etc/profile
8) 将主节点上的文件复制到从节点上
[root@localhost /]# scp -r /usr/hadoop 192.168.38.137:/usr
[root@localhost /]# scp -r /usr/hadoop 192.168.38.138:/usr
9) 初始化HDFS(只在master上执行)
[root@localhost /]# bin/hadoop namenode -format
七. 启动测试
启动HDFS(只在master上执行)
进入到hadoop主安装目录后使用 sbin/start-all.sh
验证方式:用”hadoop dfsadmin -report”
如果出现下图则hadoop启动成功
这篇关于Hadoop2.8.5集群安装(CentOS 7)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!