设为首页 收藏本站
查看: 1043|回复: 0

[经验分享] hadoop2.4.1分布式安装结合hbase0.94.23

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-9-19 08:55:45 | 显示全部楼层 |阅读模式
centos6.5 x86 虚拟机上安装完全分布式hadoop-2.4.1结合hbase-0.94.23
一、环境准备:以下3台虚拟机:
192.168.1.105   nn                namenode
192.168.1.106   sn                 secondarynamenode/datanode
192.168.1.107   dn1              datanode
要求:
1、节点间ping通:
[iyunv@nn ~]# cat /etc/hosts   注意最好把ipv6那行删了,要不可能报错

127.0.0.1           localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.1.105   nn
192.168.1.106   sn
192.168.1.107   dn1
2、节点间无密码ssh
3、java环境(各个节点配置相同的JAVA_HOME路径什么都要相同)
4、各节点间时间要同步


无密码login
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[iyunv@dn1 ~]# ssh-keygen -t rsa -P ''
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
a7:16:b7:43:ea:1b:91:f0:c5:ad:e2:ae:16:b7:03:07 root@dn1
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|         . .     |
|      .   o .    |
|      Eo o .     |
|       .S =      |
|      o.oX .     |
|       =*.o      |
|      .+o. .     |
|     ...+o       |
+-----------------+



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[iyunv@dn1 ~]# ssh-copy-id -i root@localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
RSA key fingerprint is 8b:26:11:0f:ec:9d:0f:58:e2:8f:fd:e2:cf:00:d4:1d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.root@localhost's password:
Now try logging into the machine, with "ssh 'root@localhost'", and check in:
  .ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
[iyunv@dn1 ~]# ssh-copy-id -i root@nn
The authenticity of host 'nn (192.168.1.105)' can't be established.
RSA key fingerprint is 8b:26:11:0f:ec:9d:0f:58:e2:8f:fd:e2:cf:00:d4:1d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'nn,192.168.1.105' (RSA) to the list of known hosts.root@nn's password: Now try logging into the machine, with "ssh 'root@nn'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
验证:



1
2
3
4
5
6
7
[iyunv@nn ~]# ssh sn
Last login: Tue Sep 16 07:18:38 2014 from dn1
[iyunv@sn ~]# ssh dn1
Last login: Thu Sep 18 11:18:03 2014 from dn1
[iyunv@dn1 ~]# ssh nn
Last login: Tue Sep 16 21:10:05 2014 from dn1
[iyunv@nn ~]#




二、安装分布式hadoop
  在hadoop集群没有问题的基础上 再结合hbase,要不会出现很多问题;
1、下载源码包并解压

1
2
3
4
5
6
7
sftp> put hadoop-2.4.1.tar.gz hbase-0.94.23.tar.gz
??°?hadoop-2.4.1.tar.gz ?′?μ? /root/hadoop-2.4.1.tar.gz
  100% 135406KB   5416KB/s 00:00:25     
??°?hbase-0.94.23.tar.gz ?′?μ? /root/hbase-0.94.23.tar.gz
  100% 57773KB   4814KB/s 00:00:12     
sftp>
[iyunv@nn ~]# tar -zxf hadoop-2.4.1.tar.gz -C /usr/local/



2、编辑hadoop配置文件

在hadoop2.x中配置文件与1有所不同: 在hadoop2.x中:
l 去除了原来1.x中包括的$HADOOP_HOME/src目录,该目录包括关键配置文件的默认值;
l 默认不存在mapred-site.xml文件,需要将当前mapred-site.xml.template文件copy一份并重命名为mapred-site.xml,并且只是一个具有configuration节点的空文件;
l 默认不存在mapred-queues.xml文件,需要将当前mapred-queues.xml.template文件copy一份并重命名为mapred-queues.xml;
l 删除了master文件,现在master的配置在hdfs-site.xml通过属性dfs.namenode.secondary.http-address来设置,如下:(这点要注意
<property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>sn:9001</value>
</property>


以下是我的配置:
(1)hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_67/
(2)core-site.xml
<configuration>
   <property>
      <name>fs.defaultFS</name>
      <value>hdfs://nn:9000</value>
   </property>
   <property>
      <name>hadoop.tmp.dir</name>
      <value>/tmpdir</value>
   </property>
   <property>
      <name>io.file.buffer.size</name>
      <value>102400</value>
   </property>
</configuration>
(3)hdfs-site.xml
<configuration>
   <property>
      <name>dfs.replication</name>
      <value>2</value>
   </property>
   <property>
       <name>dfs.namenode.secondary.http-address</name>
       <value>sn:9001</value>
   </property>
</configuration>
(4)[iyunv@dn1 hadoop]# cp mapred-site.xml.template mapred-site.xml
<configuration>
   <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
   </property>
</configuration>
(5)yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
   <property>
      <name>yarn.resourcemanager.hostname</name>
      <value>nn</value>
   </property>
   <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
   </property>
</configuration>

3、配置HADOOP_HOME  (用绝对路径也可,为了方便)

1
2
3
4
5
6
7
8
9
10
[iyunv@nn hadoop]# cat /etc/profile.d/hadoop.sh
HADOOP_HOME=/usr/local/hadoop-2.4.1
PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HADOOP_HOME PATH
[iyunv@nn hadoop]#source /etc/profile
[iyunv@nn hadoop-2.4.1]# hadoop versionHadoop
2.4.1Subversion http://svn.apache.org/repos/asf/hadoop/common -r 1604318
Compiled by jenkins on 2014-06-21T05:43ZCompiled with protoc 2.5.0
From source with checksum bb7ac0a3c73dc131f4844b873c74b630
This command was run using /usr/local/hadoop-2.4.1/share/hadoop/common/hadoop-common-2.4.1.jar




4、启动hadoop:
1
2
3
4
5
6
7
8
9
[iyunv@nn hadoop]#hadoop namenode -format
.........
14/09/18 13:41:11 INFO util.GSet: capacity      = 2^16 = 65536 entries
14/09/18 13:41:11 INFO namenode.AclConfigFlag: ACLs enabled? false
14/09/18 13:41:11 INFO namenode.FSImage: Allocated new BlockPoolId: BP-1418484038-127.0.0.1-1411018871656
14/09/18 13:41:11 INFO common.Storage: Storage directory /tmpdir/dfs/name has been successfully formatted.
14/09/18 13:41:12 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
14/09/18 13:41:12 INFO util.ExitUtil: Exiting with status 0
14/09/18 13:41:12 INFO namenode.NameNode: SHUTDOWN_MSG: /************************************************************SHUTDOWN_MSG: Shutting down NameNode at nn/127.0.0.1************************************************************/



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[iyunv@nn hadoop]# start-dfs.sh
Starting namenodes on [nn]
nn: starting namenode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-root-namenode-nn.out
sn: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-root-datanode-sn.out
dn1: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-root-datanode-dn1.out
Starting secondary namenodes [sn]
sn: starting secondarynamenode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-root-secondarynamenode-sn.out
[iyunv@nn hadoop]# start-yarn.sh
starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-root-resourcemanager-nn.out
dn1: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-root-nodemanager-dn1.out
sn: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-root-nodemanager-sn.out
[iyunv@nn hadoop]# jps
10487 Jps
10206 ResourceManager
9983 NameNode
[iyunv@nn hadoop]#



1
2
3
4
5
6
7
8
[iyunv@sn hadoop-2.4.1]# jps
4863 DataNode
5182 Jps4932 SecondaryNameNode
5013 NodeManager
[iyunv@dn1 hadoop-2.4.1]# jps
4401 NodeManager
4319 DataNode
4552 jps



6、在hadoop上进行测试,保证以下工作不出错:

1
2
3
4
5
6
7
8
9
10
11
12
13
[iyunv@nn hadoop]# jps
10487 Jps
10206 ResourceManager
9983 NameNode
[iyunv@nn hadoop]#
[iyunv@sn hadoop-2.4.1]# jps
4863 DataNode
5182 Jps4932 SecondaryNameNode
5013 NodeManager
[iyunv@dn1 hadoop-2.4.1]# jps
4401 NodeManager
4319 DataNode
4552 jps



mapreduce测试:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[iyunv@nn hadoop-2.4.1]# hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar wordcount /test/NOTICE.txt /test/wordcount.out
14/09/18 22:43:29 INFO client.RMProxy: Connecting to ResourceManager at nn/192.168.1.105:8032
14/09/18 22:43:31 INFO input.FileInputFormat: Total input paths to process : 1
14/09/18 22:43:31 INFO mapreduce.JobSubmitter: number of splits:1
14/09/18 22:43:32 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1411050377567_0001
14/09/18 22:43:33 INFO impl.YarnClientImpl: Submitted application application_1411050377567_0001
14/09/18 22:43:33 INFO mapreduce.Job: The url to track the job: http://nn:8088/proxy/application_1411050377567_0001/
14/09/18 22:43:33 INFO mapreduce.Job: Running job: job_1411050377567_0001
14/09/18 22:43:49 INFO mapreduce.Job: Job job_1411050377567_0001 running in uber mode : false
14/09/18 22:43:49 INFO mapreduce.Job:  map 0% reduce 0%
14/09/18 22:44:04 INFO mapreduce.Job:  map 100% reduce 0%
14/09/18 22:44:13 INFO mapreduce.Job:  map 100% reduce 100%
14/09/18 22:44:15 INFO mapreduce.Job: Job job_1411050377567_0001 completed successfully
14/09/18 22:44:15 INFO mapreduce.Job: Counters: 49
        File System Counters
                FILE: Number of bytes read=173
                FILE: Number of bytes written=185967
                FILE: Number of read operations=0
                FILE: Number of large read operations=0
                FILE: Number of write operations=0
                HDFS: Number of bytes read=196
                HDFS: Number of bytes written=123
                HDFS: Number of read operations=6
                HDFS: Number of large read operations=0
                HDFS: Number of write operations=2
        Job Counters
                Launched map tasks=1
                Launched reduce tasks=1
                Data-local map tasks=1
                Total time spent by all maps in occupied slots (ms)=13789
                Total time spent by all reduces in occupied slots (ms)=6376
                Total time spent by all map tasks (ms)=13789
                Total time spent by all reduce tasks (ms)=6376
                Total vcore-seconds taken by all map tasks=13789
                Total vcore-seconds taken by all reduce tasks=6376
                Total megabyte-seconds taken by all map tasks=14119936
                Total megabyte-seconds taken by all reduce tasks=6529024
        Map-Reduce Framework
                Map input records=2
                Map output records=11
                Map output bytes=145
                Map output materialized bytes=173
                Input split bytes=95
                Combine input records=11
                Combine output records=11
                Reduce input groups=11
                Reduce shuffle bytes=173
                Reduce input records=11
                Reduce output records=11
                Spilled Records=22
                Shuffled Maps =1
                Failed Shuffles=0
                Merged Map outputs=1
                GC time elapsed (ms)=439
                CPU time spent (ms)=2310
                Physical memory (bytes) snapshot=210075648
                Virtual memory (bytes) snapshot=794005504
                Total committed heap usage (bytes)=125480960
        Shuffle Errors
                BAD_ID=0
                CONNECTION=0
                IO_ERROR=0
                WRONG_LENGTH=0
                WRONG_MAP=0
                WRONG_REDUCE=0
        File Input Format Counters
                Bytes Read=101
        File Output Format Counters
                Bytes Written=123
[iyunv@nn hadoop-2.4.1]#




PS: 在安装的时候遇到一个错误:纠结好长时间:
就是在2个datanode日志中一直重复出现以下:好像是连接不上namenode:
INFO org.apache.hadoop.ipc.Client: Retrying connect to server: nn/192.168.1.105:9000. Already tried 6 time(s
wKiom1QbD_aTv5MmAAQHcP4FmMQ791.jpg
最终: 修改/etc/hosts文件解决,不知道为什么


三、安装zookeeper:
集群环境下,hbase依赖于zookeeper进行通信;
下载源码包并解压:
[iyunv@nn ~]#wget http://mirror.bit.edu.cn/apache/ ... keeper-3.4.6.tar.gz
[iyunv@nn ~]# tar -zxvf zookeeper-3.3.6.tar.gz -C /usr/local/
创建日志目录:
[iyunv@nn ~]mkdir /tmpdir/zookeeperdata/
编辑配置文件:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmpdir/zookeeperdata/
dataLogDir=/usr/local/zookeeper-3.4.6/logdir
clientPort=2181
server.1=nn:2888:3888
server.2=sn:2888:3888
server.3=dn1:2888:3888
在各节点日志目录中创建myid文件
id号就是配置文件中server.x这个id,myid文件中只有一个id 号。

启动服务:
[iyunv@nn zookeeper-3.4.6]# ./bin/zkServer.sh start
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[iyunv@nn zookeeper-3.4.6]# jps
13437 Jps
11535 NameNode
13413 QuorumPeerMain
11756 ResourceManager
[iyunv@nn zookeeper-3.4.6]# ./bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: follower
看看别的节点leader选举
[iyunv@sn zookeeper-3.4.6]# zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: leader
[iyunv@dn1 zookeeper-3.4.6]# zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: follower
四、结合hbase集群;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-25056-1-1.html 上篇帖子: Hadoop系列之Hive(数据仓库)安装配置 下篇帖子: Hadoop系列之HBASE(分布式数据库)安装配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表