hadoop-hbase配置

hadoop1.0.0,hbase0.92.0三节点安装

 

 

Java代码  

1.  版本:hadoop-1.0.0,hbase-0.92.0  

Java代码  

1.  195,196,197上安装hadoop集群  

2.  结果:195-》namenode  

3.        196-》jobtracker,datanode  

4.        197-> SecondaryNameNode,datanode  

5.  1, 建hadoop用户  

6.  groupadd hadoop  

7.  useradd hadoop -g hadoop  

8.    

9.  passwd hadoop  

10.   

11. mkdir -p /opt/hadoop  

12. mkdir -p /opt/data/hadoop1  

13. chown hadoop:hadoop /opt/hadoop  

14. chown hadoop:hadoop /opt/data/hadoop1  

15.   

16. 2,修改hosts  

17. vi /etc/hosts  

18. 10.10.249.195   master  

19. 10.10.249.196   slaver1  

20. 10.10.249.197   slaver2  

21.   

[root@localhost src]# echo "master" > hostname

[root@localhost src]# mv hostname /etc/hostname

[root@localhost src]# hostname -F /etc/hostname

#检查

[root@localhost src]# hostname

master

 

22. 3,生成密钥对  

23. su - hadoop  

24.   

25. ssh-keygen -t rsa  

26.   

27. cd /home/hadoop/.ssh  

28.   

29. cat id_rsa.pub > authorized_keys  

30. cd /home/hadoop/.ssh  

31. chmod 700 ../.ssh  

32. chmod 600 *  

33. chmod 644 authorized_keys  

34.   

35. 4,配置无密码 ssh登录  

36. master:  

37. cd /home/hadoop/.ssh  

38. scp -r id_rsa.pub hadoop@10.10.249.196:~/.ssh/pubkey_master  

39. scp -r id_rsa.pub hadoop@10.10.249.197:~/.ssh/pubkey_master  

40. slaver1:  

41. cd /home/hadoop/.ssh  

42. cat pubkey_master  >> authorized_keys   

43.   

44. scp -r id_rsa.pub hadoop@master:~/.ssh/pubkey_slaver1  

45. scp -r id_rsa.pub hadoop@slaver2:~/.ssh/pubkey_slaver1  

46. slaver2:  

47. cd /home/hadoop/.ssh  

48. cat pubkey_master  >> authorized_keys   

49. cat pubkey_slaver1  >> authorized_keys   

50. scp -r id_rsa.pub hadoop@master:~/.ssh/pubkey_slaver2  

51.   

52. master:  

53. cat pubkey_slaver1 >> authorized_keys   

54. cat pubkey_slaver2 >> authorized_keys   

55.   

56. # su root 修改 /etc/ssh/sshd_config  PasswordAuthentication no  

57.   

58. 5:hadoop安装  

59.   

60. conf/core-site.xml  

61. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

62. <configuration>  

63. <property>  

64.   <name>fs.default.name</name>  

65.   <value>hdfs://master:54310</value>  

66. </property>  

67. <property>  

68.   <name>hadoop.tmp.dir</name>  

69.   <value>/home/hadoop/hadoop_home/var</value>  

70. </property>  

71. </configuration>  

72.   

73. conf/mapred-site.xml  

74. <?xml version="1.0"?>  

75. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

76. <configuration>  

77. <property>  

78.   <name>mapred.job.tracker</name>  

79.   <value>slaver1:54311</value>  

80. </property>  

81. <property>  

82.   <name>mapred.local.dir</name>  

83.   <value>/home/hadoop/hadoop_home/var</value>  

84. </property>  

85. </configuration>  

86.   

87. conf/hdfs-site.xml  

88. <?xml version="1.0"?>  

89. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

90. <configuration>  

91. <property>  

92.   <name>dfs.replication</name>  

93.   <value>3</value>  

94. </property>  

95. </configuration>  

96.   

97.   

98. echo slaver2 > masters  

99. echo master > slaves  

100. echo slaver1 >> slaves  

101. echo slaver2 >> slaves  

102.   

103. 196,197同此配置  

104.   

105. master:  

106.   

107. cd /opt/hadoop/hadoop-1.0.0/bin  

108. ./hadoop namenode -format  

109.   

110. start-all.sh  

111.   

112. ./bin/hadoop dfs -copyFromLocal conf/ /user/hadoop/bookdata  

113. ./bin/hadoop jar hadoop-examples-1.0.0.jar wordcount /user/hadoop/bookdata /user/hadoop/book_data_out  

114.   

115. job.tracker 50030  

116. task.tracker 50060  

117. dfs.http 50070  

118. datanode.http 50075  

119. secondary.http 50090  

120.   

121. hadoop fs -mkdir /user/test  

122. hadoop fs -chown test:test /user/test  

123. hadoop dfsadmin -setSpaceQuota 1t /user/test  

124.   

125.   

126. hbase安装步骤  

127.   

128. master:195  

129. RegionServer:196,197  

130.   

131.   

132. 1,修改三台hadoop的配置hdfs-site.xml,   

133.    

134. <property>  

135.     <name>dfs.support.append</name>  

136.     <value>true</value>  

137. </property>  

138. <property>  

139.         <name>dfs.datanode.max.xcievers</name>  

140.         <value>4096</value>  

141. </property>  

142.   

143. restart hdfs  

144.   

145. #替换 hbase lib下的hadoop.jar为hdfs集群用的hadoop.jar  

146.   

147.   

148. 2,修改hbase-site.xml  

149.   

150. <configuration>   

151.   <property>  

152.     <name>hbase.rootdir</name>  

153.     <value>hdfs://master:54310/hbase</value>  

154.     <description>The directory shared by RegionServers.  

155.     </description>  

156.   </property>  

157.   <property>  

158.     <name>hbase.cluster.distributed</name>  

159.     <value>true</value>  

160.     <description>The mode the cluster will be in. Possible values are  

161.       false: standalone and pseudo-distributed setups with managed Zookeeper  

162.       true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)  

163.     </description>  

164.   </property>  

165.   <property>  

166.     <name>dfs.support.append</name>  

167.     <value>true</value>  

168. </property>  

169.    

170. </configuration>  

171.   

172. 3,修改regionservers  

173. echo master > regionservers  

174. echo slaver1 >> regionservers  

175. echo slaver2 >> regionservers  

176.   

177. 4,修改hbase-env.sh :  

178.  export HBASE_MANAGES_ZK=false #使用了单独安装的zookeeper,   

179.    

180.  export JAVA_HOME=/export/servers/jdk1.6.0_25  

181. 5,将zookeeper集群的zoo.cfg 复制到 hbase的conf目录下。  

182.   

183.   

184. 6,复制配置好hbase到slaver1,slaver2 /opt/hadoop目录下  

185.   

186. 7,增加可以打开的文件句柄数,三台机器都执行。  

187. su root  

188. echo -ne "  

189. * soft nofile 65536  

190. * hard nofile 65536  

191. " >>/etc/security/limits.conf  

192.   

193.   

194. 安装完成,启动  

195. cd  /opt/hadoop/hbase-0.92.0/bin  

196.   

197. ./start-hbase.sh    

198.   

199. master的web 端口,默认为60010,RegionServer web 端口 60030  

 ========================================================================================================================

Hadoop集群安装

环境说明:

1.     集群中包括3个节点:1个Master,2个Salve,节点之间局域网连接,可以相互ping通

2.     三个节点上均是ubuntu12.04系统,并且有一个相同的用户hadoop。

3.     Master机器主要配置NameNodeJobTracker的角色,负责总管分布式数据和分解任务的执行;

2Salve机器配置DataNodeTaskTracker的角色,负责分布式数据存储以及任务的执行。

光从字面上来理解,很容易让一些初学者认为:SecondaryNameNode(snn)就是NameNode(nn)的热备进程。其实不是。snn是HDFS架构中的一个组成部分,但是经常由于名字而被人误解它真正的用途,其实它真正的用途,是用来保存namenode中对HDFS metadata的信息的备份,并减少namenode重启的时间。

0、Hadoop  集群 IP地址分配:

192.168.1.123       Master

192.168.1.124       Node1

192.168.1.125       Node2

根据自己的IP进行分配,为此,需要在Master主机下修改 /etc/hosts文件,加入上面的配置,同时修改 /etc/hostname 中的内容为 Master

(后面克隆的slave节点的 /etc/hosts文件也是这个配置,/etc/hostname内容相应变化)

1、在Master主机下安装Java并配置环境变量,参考Hadoop集群安装附件1;

2、在Master主机下安装SSH;

1)、下载安装openssh,如下:

2)、ssh-keygen -t rsa  一路回车下去即可,即可生成公钥(~/.ssh/id_rsa.pub)和私钥(~/.ssh/id_rsa)文件,如下:

  

3、在Master主机下安装好Hadoop(hadoop-1.2.1版本)

1)、用户hadoop目录下新建一个文件夹hadoop,将Downloads下载的hadoop文件cp至hadoop

  

2)、解压缩  tar -xvzf hadoop-1.2.1.tar.gz

3)、配置Hadoop环境变量  修改 ~/.bashrc,在文件最后面加上如下配置:

export HADOOP_HOME=/home/hadoop/hadoop/hadoop-1.2.1

exportPATH=$PATH:$HADOOP_HOME/bin

4)、配置master和slaves文件 修改 hadoop安装目录下的/conf/masters 文件,

Master

以及 hadoop安装目录下的/conf/slaves 文件,内容如下

Node1

Node2

5)、配置 hadoop安装目录下的/conf/hadoop-env.sh文件,修改 JDK的路径:

   export JAVA_HOME=/usr/local/java/jdk1.6.0_37

6)、配置 hadoop安装目录下的conf/core-site.xml文件为:

    <?xmlversion="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<!-- Putsite-specific property overrides in this file. -->

<configuration>

<property>

    <name>fs.default.name</name>

    <value>hdfs://Master:9000</value>

    <description></description>

</property>

<property>

<name>hadoop.tmp.dir</name>

    <value>/home/hadoop/hadoop/MyHadoopTmp</value>

    <description></description>

</property>

</configuration>

(提前现在/home/hadoop/hadoop目录下新建一个存放hadoop临时文件的文件夹MyHadoopTmp)

7)、配置 Hadoop安装目录下的 conf/hdfs-site.xml文件:

   <?xml version="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

   <name>dfs.replication</name>

   <value>2</value>

</property>

</configuration>

     8)、配置 hadoop安装目录下的 conf/mapred-site.xml文件

        <?xml version="1.0"?>

<?xml-stylesheet type="text/xsl"href="configuration.xsl"?>

<!-- Put site-specific propertyoverrides in this file. -->

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>Master:9001</value>

</property>

</configuration>

2012.12.22 目前还没做的任务:Master节点还没添加认证公钥

4、对 Master虚拟主机进行克隆,其节点名称为 Node1,Node2

5、启动Node1,Node2虚拟机,并修改Node1,Node2 下的文件:

    1)、修改 Node1虚拟机下的 /etc/hostname内容为 Node1,Node2虚拟机下的 /etc/hostname为Node2

    2)、在Master虚拟主机下, 添加认证公钥,并设置权限:

        cat~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

chmod 644~/.ssh/authorized_keys

6、配置集群的SSH服务

   1)、远程拷贝Master的公钥到Node1结点上:

scp~/.ssh/id_rsa.pub root@Node1:/home/hadoop/.ssh/id_rsa.pub.master

注意:分发公钥时,主要修改目标master公钥文件副本名称,以防覆盖掉从结点上已经存在并且正在使用的公钥文件。

( hadoop@192.168.1.124 )

同时,在node1结点上,将master生成的密钥加入到认证密钥文件:

cat~/.ssh/id_rsa.pub.master >> ~/.ssh/authorized_keys

chmod 644~/.ssh/authorized_keys

  

2)、远程拷贝Master的公钥到Node2结点上

   scp ~/.ssh/id_rsa.pubhadoop@Node2:/home/hadoop/.ssh/id_rsa.pub.master

同时,在node2结点上,将master生成的密钥加入到认证密钥文件

cat ~/.ssh/id_rsa.pub.master >> ~/.ssh/authorized_keys

chmod 644 ~/.ssh/authorized_keys

3)、这时,可以验证从master结点分别登录到slave-01和slave-02结点:

ssh Node1

ssh Node2

    如果不需要输入密码,则配置成功

4)、分别3个结点:

sudo chown –R hadoop:hadoop /home/hadoop/hadoop/hadoop-1.2.1

   

7、启动 Hadoop 集群服务

   cd/home/hadoop/hadoop/hadoop-1.2.1

./hadoop namenode -format  (注:运行hadoop之前一定要格式化创建相关文件)

./start-all.sh

或:

 $:hadoop namenode -format

 $:start-all.sh

 $:jps (查看进程,查找错误日志)

8、停止hadoop 集群服务

stop-all.sh

9、上传文件

1)、关闭防火墙 sudo ufw disable   (service iptables stop)

2)、

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

部署过程遇到错误:

1.     没有对hadoop安装文件夹赋予hadoop用户权限,以至于不能执行创建日志文件命令

改正:所有节点均:sudo chown –R hadoop:hadoop/home/hadoop/hadoop/hadoop-1.2.1

2.     Jps命令查看启动进程,发现少了JobTraker和TaskTraker,看日志,hadoop的mapred-site.xml配置文件配置错误(格式不对)

改正:所有节点的mapred.xml文件均查看修改

3、集群安装后部署。执行start-all.sh后jps命令查看,进程都有,但是页面master:50070查看时发现控制面板显示集群的live node数量为0,而且集群存储空间为0,上网查看,贴了日志错误,查了很多,都是一样的解释,防火墙没关,本机查看,确实关了,于是自己再次仔细查看日志,发现一个关于地址127.0.1.1的错误,记得这是一个预留的IP,怎么用上了,注释掉,重启,好了。Sh文件里把这个ip解析成本地主机了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值