您的位置:首页 > 大数据

[参考]大数据之快速搭建hadoop2.6集群指南

2017-03-22 23:16 507 查看
分类: HADOOP

本文详细介绍了在RedHat6.2以上版本的Linux服务器之上快速搭建hadoop2.6版本的集群方法。以下操作步骤是笔者在安装hadoop集群的安装笔记,如有对hadoop感兴趣的博友可按照本文操作进行无障碍搭建。博主可以确认以下所有操作步骤的准确性和可行性,如在搭建过程中遇到任何问题欢迎随时交流。

OK话不多说啦,具体操作详见如下操作步骤~~

在部署hadoop2.6之前的前置任务:

1、禁止selinux

setenforce 0

修改vi /etc/selinux/config的参数如下:

SELINUX=disabled

2、关闭防火墙

iptables -F

service iptables save

service iptables stop

chkconfig --level 2345 iptables off

########################################################

一:配置域名解析

-------------------------------------------------------

分别在三台机器上的/etc/hosts文件最后添加如下信息:

------------------------------------------------

128.230.5.113 hbase01

128.230.5.114 hbase02

128.230.5.115 hbase03

二、添加hadoop的管理账号

[root@hbase01 ~]# groupadd -g 1000 hadoop

[root@hbase01 ~]# useradd -u 1000 -g 1000 hadoop

三、设置互信机制

[root@hbase01 ~]# su - hadoop             

[hadoop@hbase01 ~]$ ssh-keygen -t rsa  

scp id_rsa.pub hadoop@ip2:~/.ssh/authorized_keys  

scp id_rsa.pub hadoop@ip2:~/.ssh/authorized_keys

如果互信无法成功请修改如下文件的权限即可

chmod 700 .ssh

chmod 0600 authorized_keys

四、配置环境变量

#vim /home/hadoop/.bash_profile       --设置环境变量    

export JAVA_HOME=/usr/java/jdk1.8.0_40                                     

export JAR_HOME=/usr/java/jdk1.8.0_40/jre                                   

export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAR_HOME/lib

export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

export HADOOP_HOME=/usr/local/hadoop-2.6.0

export HBASE_HOME=/usr/local/hbase-0.98.9-hadoop2

export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:/usr/local/hbase-0.98.9-hadoop2/bin        

export HADOOP_HOME=/usr/local/hadoop-2.6.0

export HBASE_HOME=/usr/local/hbase-0.98.9-hadoop2

export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:/usr/local/hbase-0.98.9-hadoop2/bin        

export PATH

五、测试hadoop环境变量生效

hadoop version

六、配置hadoop集群

######################################################################################################

1、配置core-site.xml文件

------------------------------------------------------------------------------------------------------

  

    fs.default.name

    hdfs://hbase01:9000

  

  

    hadoop.tmp.dir

    /usr/local/hadoopdata/tmp

  

  

    io.file.buffer.size

    4096

  

  

    hadoop.native.lib

    true

  

    

2、配置vim hadoop-env.sh文件

------------------------------------------------------------------------------------------------------

export JAVA_HOME=/usr/java/jdk1.8.0_40   

3、配置vim hdfs-site.xml

------------------------------------------------------------------------------------------------------

  dfs.nameservices

  hadoop-cluster1

  dfs.namenode.secondary.http-address

  hbase01:50090

  dfs.namenode.name.dir

  file:///usr/local/hadoopdata/dfs/name

  dfs.datanode.data.dir

  file:///usr/local/hadoopdata/dfs/data

  dfs.replication

  2

 

  dfs.webhdfs.enabled

  true

4、配置vim mapred-site.xml

------------------------------------------------------------------------------------------------------

     mapreduce.framework.name

     yarn

      mapreduce.jobtracker.http.address

      hbase01:50030

      mapreduce.jobhistory.address

      hbase01:10020

      mapreduce.jobhistory.webapp.address

      hbase01:19888

5、格式化namenode的namespace和dataspace

------------------------------------------------------------------------------------------------------

hadoop namenode -format  

6、创建相关目录

------------------------------------------------------------------------------------------------------

mkdir -p /usr/local/hadoopdata/dfs/data

mkdir -p /usr/local/hadoopdata/dfs/name

mkdir -p /usr/local/hadoopdata/dfs/tmp

chown -R hadoop:hadoop /usr/local/hadoopdata                        

7、启动hadoop集群

------------------------------------------------------------------------------------------------------

#su -hadoop

#start-all.sh

若在namenode显示如下信息:

[hadoop@hbase01 dfs]$ jps

16393 NameNode

16906 Jps

16622 ResourceManager

在datanode显示如下信息:

29697 DataNode

29911 Jps

29805 NodeManager

请直接跳到最后访问hadoop集群的web控制台即可管理和监视hadoop集群的运行

8、输入jps发现hadoop集群没有成功被启动只有jps进程

------------------------------------------------------------------------------------------------------

9、分析诊断日志

------------------------------------------------------------------------------------------------------

tail -f hadoop-hadoop-namenode-hbase01.log

发现端口被占用,通过ps发现另一hadoop进程已经被root账号启用kill掉相关hadoop进程,重新启动hadoop集群

#stop-all.sh

#start-all.sh

再次执行jps发现此次比上次多了一个java进程,离成功更接近了一步。我们再次通过分析日志发现对hadoop的分布式文件系统没有写权限

14848 Jps

14595 ResourceManager

/usr/local/hadoopdata/dfs/name

10、解决方法:停止hadoop集群

------------------------------------------------------------------------------------------------------

stop-all.sh

11、解决方法:创建相关目录并赋权

------------------------------------------------------------------------------------------------------

mkdir -p /usr/local/hadoopdata/dfs/data

mkdir -p /usr/local/hadoopdata/dfs/name

chown -R hadoop:hadoop /usr/local/hadoopdata

12、访问hadoop的web页面,验证hadoop集群是否成功搭建完成

------------------------------------------------------------------------------------------------------
http://128.230.5.113:50070/dfshealth.html#tab-overview

#http://192.168.1.110:50070/dfshealth.html#tab-overview      
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: