本文主要是介绍Hadoop2.7 安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Hadoop2.7 安装
参考:http://www.linuxidc.com/Linux/2015-01/112029.html
机器准备
192.168.72.130 master
192.168.72.131 slave1
192.168.72.132 slave2
192.168.72.133 slave3
目录
- 安装JDK
- 配置host文件
- SSH免密码登陆
- Hadoop安装
- Hadoop配置
- Hadoop初始化
- Hadoop启动
- 关闭防火墙测试
SSH免密码登陆
-
- 准备工作
- 确定本机安装了ssh服务
- 确认本机sshd的配置文件(需要root权限)
$ vi /etc/ssh/sshd_config
找到以下内容,并去掉注释符"#"
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys - 如果修改了配置文件需要重启sshd服务 (需要root权限)
$ /sbin/service sshd restart
- 在各个机器上生产公钥私钥。
生成公钥和私钥代码:ssh-keygen -t rsa (后一直回车)
默认在 ~/.ssh目录生成两个文件:
id_rsa :私钥
id_rsa.pub :公钥
- 将各个机器上的公钥集中到一起
将各个机器上的id_rsa.pub集中到文件authorized_keys中
Cat id_rsa.pub >> authorized_keys
并拷贝该文件至所有的~/.ssh/目录下
- 更改权限
Shell代码: chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Hadoop安装
tar -xzvf hadoop-2.7.0.tar.gz
配置
- 文件hadoop-env.sh、yarn-env.sh
就是修改这一行内容,修改后的结果如下
export JAVA_HOME=/usr/local/jdk
【这里的JAVA_HOME的值是jdk的安装路径。如果你那里不一样,请修改为自己的地址】
- 文件core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://cluster1</value>
</property>
【这里的值指的是默认的HDFS路径。当有多个HDFS集群同时工作时,用户如果不写集群名称,那么默认使用哪个哪?在这里指定!该值来自于hdfs-site.xml中的配置】
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
【这里的路径默认是NameNode、DataNode、JournalNode等存放数据的公共目录。用户也可以自己单独指定这三类节点的目录。】
- 文件hdfs-site.xml
<configration>
<property>
<name>dfs.name.dir</name>
<value>/home/software/hadoop-2.7.0/dfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/software/hadoop-2.7.0/dfs/data</value>
<description>Comma separated list of paths on the local filesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
</configration>
- 文件mapred-site.xml
<configration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configration>
- 文件yarn-site.xml
<configration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configration>
- 文件slaves
Master
Slave1
Slave2
Slave3
【指定所有的DataNode节点列表,每行一个节点名称】
Hadoop初始化
初始化,输入命令,bin/hdfs namenode -format
Hadoop启动
全部启动sbin/start-all.sh,也可以分开sbin/start-dfs.sh、sbin/start-yarn.sh
停止的话,输入命令,sbin/stop-all.sh
输入命令,jps,可以看到相关信息
关闭防火墙测试
关闭防火墙:输入命令,systemctl stop firewalld.service
浏览器打开http://192.168.0.182:8088/
浏览器打开http://192.168.0.182:50070/
问题
- 无法安装成功
文件权限问题,设置好权限
- 安装完成,启动NameNode后,JPS时DataNode无法启动
运行了两次格式化,UUID出现的冲突,删除DataNode的配置的文件夹,
然后重新生成。
- JPS时全部都是可以的,但是网页浏览是发现没有DataNode
Hosts里面解析冲突了,把hosts里面的主机名的127.0.1.1 的名字改掉 或者把那行注释掉
- JPS没有问题,Linux虚拟机中页面没有问题,本地无法访问
Linux防火墙没有关闭
附录:各个配置文件的默认配置
http://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-common/core-default.xml
http://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
http://hadoop.apache.org/docs/r2.7.3/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml
http://hadoop.apache.org/docs/r2.7.3/hadoop-yarn/hadoop-yarn-common/yarn-default.xml
这篇关于Hadoop2.7 安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!