Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103055
  • 博文数量: 67
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 577
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-16 09:51
个人简介

啄木鸟专吃虫,故名啄木鸟。

分类: HADOOP

2014-07-18 18:08:42

说起这个环境,真是一把鼻涕一把泪,整整一周的时间就这么过去了,庆幸的是这个环境能用了。
总共7台机器:
CentOS  6.3
namenode :dubai2   172.16.199.53
datanode   :dubai3\dubai5\dubai6\dubai8\oslo8\oslo13
各软件版本:
Hadoop 1.2.1;HBase 0.94.19;zookeeper-3.4.5;java version "1.6.0_25"
开始:
1. 请关闭防火墙:
service iptables stop
chkconfig iptables off
(!!一定要注意,我因为这个折腾1天多,最后还是别人帮忙解决的。有时候防火墙自动开了,出问题时请随手检查一下,以防万一!)
2. hosts配置,请给环境中的所有配置做修改:
示例:vi /etc/hosts

#127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
#172.16.199.62 dubai5.sz.fonsview.com dubai5
### Add by hadoop start ###
172.16.199.62             dubai5.sz.fonsview.com dubai5
172.16.199.65             dubai6.sz.fonsview.com dubai6
172.16.199.71            dubai8.sz.fonsview.com dubai8
172.16.199.53             dubai2.sz.fonsview.com dubai2
172.16.199.56             dubai3.sz.fonsview.com dubai3
172.16.199.121            oslo8.sz.fonsview.com oslo8
172.16.199.136            oslo13.sz.fonsview.com oslo13
### Add by hadoop end ###
(网上有很多说法,说回环地址要注释掉,但实际上没注释掉也没发现什么问题)
3. ssh免密码登录:
在namenode上(dubai2)执行:ssh -keygen -t rsa,全部才用默认配置,连续回车。完成后进入root/.ssh目录,将id_rsa.pub复制一份为authorized_keys,命令如下:
cat id_rsa.pub>>authrized_keys,并且将此authrized_keys文件复制到其他的服务器上。并且验证。这样就不需要密码了,例如:
[root@dubai6 ~]# ssh dubai3
Last login: Thu Jul 17 17:38:26 2014 from dubai2.sz.fonsview.com
[root@dubai3 ~]#
4.安装过程:省略
5.配置:
5.1 环境变量:
export JAVA_HOME=/opt/fonsview/3RD/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
export HADOOP_HOME=/root/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
5.2 一般情况下修改配置文件(安装目录下,注意每台服务器都要修改)都请重启服务,最好先停止服务再改吧:
[root@dubai2 hadoop]# cat /root/hadoop/conf/slaves #数据节点datanode
dubai3
dubai5
dubai6
dubai8
oslo8
oslo13
[root@dubai2 hadoop]# cat /root/hadoop/conf/masters #主节点 namenode
dubai2
[root@dubai2 hadoop]# vi /root/zookeeper/conf/zoo.cfg#配置相应的server.id,这个id请在/root/zookeeper/data/新建myid,并写入一个id号,与配置中保持一致。
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zookeeper
clientPort=2181
dataDir=/root/zookeeper/data
dataLogDir=/root/zookeeper/logs
server.1=dubai2:2888:3888
server.2=dubai3:2889:3889
server.3=dubai5:2890:3890
server.4=dubai6:2891:3891
server.5=dubai8:2892:3892
server.6=oslo8:2893:3893
server.7=oslo13:2894:3894
[root@dubai2 data]# vi /root/hbase/conf/regionservers#配置regionserver
dubai3
dubai5
dubai6
dubai8
oslo8
oslo13
[root@dubai2 data]# vi /root/hbase/conf/hbase-site.xml

       
                hbase.rootdir
                hdfs://dubai2:9000/hbase#主节点域名
       

       
                hbase.cluster.distributed
                true#设置为true,自启动zookeeper
       

       
                hbase.zookeeper.property.clientPort
                2181#client 端口
       

       
                hbase.zookeeper.quorum
                dubai2,dubai3,dubai5,dubai6,dubai8,oslo8,oslo13#集群内所有机器
       

       
                hbase.zookeeper.property.dataDir
                /root/zookeeper/data

5.3脚本介绍:
hadoop/bin:
./stop mapred.sh
./start mapred.sh 停止和开启mapredce进程
start-all.sh  stop-all.sh 启动和停止集群
hbase/bin:
./start hbase.sh ./stop hbase.sh 启动和关闭hbase
由于上文中把hbase.cluster.distributed设置为true,所以启动hbase会自启动zookeeper。要不然就要到zookeeper下去启动了。
在启动和停止hbase和hadoop时一定要注意,先启动hadoop后启动hbase;先停止hbase,后停止hadoop的顺序。在修改配置的时候最好先停止服务。
5.4命令记录:
1)hadoop dfsadmin -safemode leave
dfsadmin -safemode value 参数value的说明如下:
enter - 进入安全模式
leave - 强制NameNode离开安全模式
get -  返回安全模式是否开启的信息
wait - 等待安全模式结束。
2)重新格式化文件系统 hadoop namenode -format
3) ./bin/ hadoop dfsadmin -report  查看当前节点情况
4)./hadoop dfsadmin  -refreshNodes更新节点
5)./hadoop job -list列出当前任务
./hadoop job -kill job_201407171931_0001停止当前任务

6)查看hdfs/user/hac/imput目录下的文件。

sh bin/hadoop fs -ls /user/hac/imput

我们也可以列出hdfs/user/hac/imput目录下的所有文件(包括子目录下的文件)。

sh bin/hadoop fs -lsr /user/hac/imput
创建文件:
sh bin/hadoop fs -mkdir /user/hac/imput/newDir
删除文件:
sh bin/hadoop fs -rm /user/hac/imput/needDelete

删除hdfs/user/hac/imput目录以及该目录下的所有文件

sh bin/hadoop fs -rmr /user/hac/imput
上传文件:
sh bin/hadoop fs –put /home/admin/newFile /user/hac/imput/
下载文件:
sh bin/hadoop fs –get /user/hac/imput/newFile /home/admin/newFile

Usage: hadoop [--config confdir] COMMAND

where COMMAND is one of:

  namenode -format     format the DFS filesystem

  secondarynamenode    run the DFS secondary namenode

  namenode             run the DFS namenode

  datanode             run a DFS datanode

  dfsadmin             run a DFS admin client

  fsck                 run a DFS filesystem checking utility

  fs                   run a generic filesystem user client

  balancer             run a cluster balancing utility

  jobtracker           run the MapReduce job Tracker node

  pipes                run a Pipes job

  tasktracker          run a MapReduce task Tracker node

  job                  manipulate MapReduce jobs

  queue                get information regarding JobQueues

  version              print the version

  jar             run a jar file

  distcp copy file or directories recursively

  archive -archiveName NAME * create a hadoop archive

  daemonlog            get/set the log level for each daemon

 or

  CLASSNAME            run the class named CLASSNAME

sh bin/hadoop fs –cat /home/admin/newFile



5.5 检查状态
集群正常情况下jps以下服务正常启动:
namenode 下执行jps:
2438 NameNode
2758 JobTracker
2690 SecondaryNameNode
3652 HMaster
11043 HQuorumPeer
datanode下执行jps:
3501 HQuorumPeer
2663 TaskTracker
2482 DataNode
3530 HRegionServer
5.6 问题记录
1.检查磁盘空间。有一次查看节点状况时发现DFS used 100%,重启集群后正常了。
2.从6个节点,改成2个节点的时候,集群怎么都无法执行任务。查看服务状态都是对的。






阅读(983) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~