hadoop 大数据开发3---HBase 安装步骤
来源:互联网 发布:php购物车提交订单 编辑:程序博客网 时间:2024/05/01 06:38
HBase 安装步骤
1.配置 hbase 的环境变量
在/root/hbase/conf 目录下的 hbase-env.sh 中添加 Hbase 需要的环境变量。如下: 下面第四行注意这个值为 false 时,表示启动的是独立的 zookeeper。而配置成 true 则是 hbase
自带的 zookeeper。
export JAVA_HOME=/usr/java/jdk1.6.0_14export HBASE_HOME=/root/hbase
export PATH=$PATH:/root/hbase/bin export HBASE_MANAGES_ZK=falseexport HADOOP_HOME=/root/hadoop
2.集群时钟同步
集群的时钟要保证基本的一致。稍有不一致是可以容忍的。 时钟同步见附录 。
3.修改 ulimit 和 nproc
HBase 是数据库,会在同一时间使用很多的文件句柄。大多数 linux 系统使用的默认值 1024 是不能满足的,会导致 FAQ: Why do I see "java.io.IOException...(Toomany openfiles)" in my logs?异常。还可能会发生这样的异常
2010-04-06 03:04:37,542 INFO org.apache.hadoop.hdfs.DFSClient: Exception increateBlockOutputStream java.io.EOFException
2010-04-06 03:04:37,542 INFO org.apache.hadoop.hdfs.DFSClient: Abandoning block blk_-6935524980745310745_1391901
所以你需要修改你的最大文件句柄限制。可以设置到 10k。
你还需要修改 hbase 用户的 nproc,在压力下,如果过低会造成 OutOfMemoryError 异常。需要说明的是,这两个设置是针对操作系统的,不是 HBase 本身的。
在 RHEL6 修改 ulimit 和 nproc:
# vim /etc/security/limits.conf //针对某个用户测试(这里使用 root)
# grep '^root' /etc/security/limits.conf
root
soft
nofile
10240
root
hard
nofile
10240
root
soft
nproc
10240
root
hard
nproc
10240
#
退出当前用户,重新登录即可让之前修改的 limits 生效,执行如下命令发现修改成功
# ulimit -u
10240
# ulimit -n
10240
4.配置 hbase-site.xml
先 在 hbase-site.xml, 加 一 个 属 性 hbase.cluster.distributed 设 置 为 true 然 后 把hbase.rootdir 设 置 为 HDFS 的 NameNode 的 位 置 。 例 如 , 你 的 namenode 运 行 在namenode.example.org,端口是 9000 你期望的目录是 /hbase,使用如下的配置
<configuration>
...
<property>
<name>hbase.rootdir</name>
<value>hdfs://namenode.example.org:9000/hbase</value>
<description>The directory sharedby RegionServers.
</description>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
<description>The mode the cluster willbe in. Possible values are
false: standalone andpseudo-distributedsetups with managed Zookeepertrue: fully-distributed withunmanaged ZookeeperQuorum (see hbase-env.sh)
</description>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop2,hadoop3,hadoop4</value>
</property>
<property>
<name>hbase.zookeeper.sission.timeout</name>
<value>60000</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2222</value>
</property>
<property>
<name>hbase.master</name>
<value>hadoop1</value>
</property>
<property>
<name>hbase.regionserver.lease.period</name>
<value>60000</value>
</property>
<property>
<name>hbase.rpc.timeout</name>
<value>60000</value>
</property>
...
</configuration>
5.配置 regionservers
完全分布式模式的还需要修改 conf/regionservers.列出了你希望运行的全部HRegionServer,一行写一个 host (就像 Hadoop 里面的 slaves 一样). 列在这 里的server 会随着集群的启动而启动,集群的停止而停止.
6.启动和停止
bin/start-hbase.sh
HBase 也有一个界面,上面会列出重要的属性。默认是在 Master 的 60010 端口 上(HBase RegionServers 会默认绑定 60020 端口,在端口 60030 上有一个展示 信息的界面 ).如果 Master 运行在 master.example.org,端口是默认的话,你 可以用浏览器在http://master.example.org:60010看到主界面. .
停止 HBase
bin/stop-hbase.sh
stopping hbase...............
停止操作需要一些时间,你的集群越大,停的时间可能会越长。如果你正在运行一个分布式的操作,要确认在HBase 彻底停止之前,Hadoop 不能停.
################################
NTP 服务器的安装和配置
1 检查需要的包
[root@rhel.philip.com~]rpm-qa |grep ntp ntp-4.2.4p8-2.el6.i686
ntpdate-4.2.4p8-2.el6.i686
2 配置文件/etc/ntp.conf
3 启动服务
/etc/init.d/ntpd start #//等大约 5 分钟完成本机时间同步以后,方可作为时 间服务器使用
3 在客户机进行时间同步
shell> ntpdate 192.168.4.1
shell> hwclock --systohc //以当前系统时间设置硬件时间
shell> crontab -e
30 7 * * * /usr/sbin/ntpdate 192.168.4.1 && hwclock --systohc shell> /etc/init.d/crond start
################################
rhel 中修改 ulimit 和 nproc
修改 limits.conf 配置文件生效
# ulimit -a//查看当前配置文件 ulimit 全局系数
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimitedscheduling priority (-e) 0
file size (blocks,-f) unlimited pending signals (-i) 1829
max lockedmemory (kbytes,-l)64
max memory size (kbytes, -m) unlimitedopen files (-n) 1024
pipe size (512 bytes,-p)8
POSIX message queues (bytes, -q)819200 real-time priority (-r) 0
stack size (kbytes, -s)10240
cpu time (seconds,-t) unlimitedmax user processes(-u)1024
virtual memory (kbytes,-v)unlimited file locks (-x) unlimited
# vim /etc/security/limits.conf
# grep'^*' /etc/security/limits.conf
* soft nproc 10240
* hardnproc 10240
* soft nofile 10240
* hardnofile 10240
#
退出当前用户,重新登录即可让之前修改的 limits 生效
# ulimit -n
10240
# ulimit -u//发现 nproc 并没有像 nofile 一样而改变
1024
#
获知,RHEL6 下引入了配置文件/etc/security/limits.d/90-nproc.conf
# cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user'sprocesses toprevent
* soft nproc 1024
#
我们修改这个文件尝试是否因为该文件影响,修改如下
# vim /etc/security/limits.d/90-nproc.conf
# cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user'sprocesses toprevent
# accidentalfork bombs.
# See rhbz #432903for reasoning.
#* soft nproc 1024
* soft nproc 65535
#
退出当前用户,重新登录即可让之前修改的 limits 生效,执行如下命令发现修改成功
# ulimit -u
10240
# ulimit -n
10240
#
由 此 可 知 , 如 果 要 修 改 配 置 文 件 limits.conf 中 的 nproc 限 制 上 限 是 受 文 件
/etc/security/limits.d/90-nproc.conf 中 nproc 值大小制约的,但是 shell 终端下是不受制约的
另外猜想,如果使用*号让全局用户生效是受文件/etc/security/limits.d/90-nproc.conf 中 nproc
值大小制约的,而如果仅仅是针对某个用户,那么就不受该文件 nproc 值大小的影响
# Default limit for number of user'sprocesses toprevent
# accidentalfork bombs.
# See rhbz #432903for reasoning.
* soft nproc 1024
#* soft nproc 65535
# vim /etc/security/limits.conf //只针对某个用户测试(这里使用 root)
# grep'^root' /etc/security/limits.conf
root soft nproc 10240 root hard nproc 10240
#
退出当前用户,重新登录即可让之前修改的 limits 生效,执行如下命令发现修改成功
# ulimit -u
10240
# ulimit -n
10240
#
之前猜想正确,即只有当使用*号让全局用户生效的时候,生效的 nproc 的值大小是受文件
/etc/security/limits.d/90-nproc.conf 中 nproc 值大小制约的,而如果仅仅是针对某个用户,那么就不受该文件 nproc 值大小的影响。
- hadoop 大数据开发3---HBase 安装步骤
- hadoop 大数据开发2---Zookeeper 安装步骤
- hadoop 大数据开发5 --伪分布式hbase配置异常
- 大数据开发利器:Hadoop(5)-HBase第二讲
- 大数据开发利器:Hadoop(10) HBase进阶第3讲 批量插入Bulkload
- [大数据]Hadoop 2.7.3 和Hbase 1.2.4安装教程
- 大数据开发利器:Hadoop(8) HBase进阶第1讲 HBase API使用
- 大数据开发利器:Hadoop(9) HBase进阶第2讲 HBase过滤器
- 大数据技术-HBase:优化hadoop Xceivers
- 大数据开发利器:Hadoop(6)-HBase第三讲 Java 开发基础
- 大数据开发利器:Hadoop(3)
- 大数据项目开发步骤
- Hadoop详解(一)——大数据和Hadoop的简介、Hadoop伪分布式的安装步骤
- 大数据开发|HBASE分布式数据库环境构建(3)
- 两种配置大数据环境的方法Ambari以及hadoop源代码安装的步骤
- 大数据学习[03]:hbase安装配置
- 大数据之jstorm,storm,hbase,hadoop and so on
- 大数据组件原理总结-Hadoop、Hbase、Kafka、Zookeeper、Spark
- Android视频采集
- Android开发性能优化简介
- Codeforces Round #186 (Div. 2)A、B、C、D、E
- PE
- C++ 虚函数
- hadoop 大数据开发3---HBase 安装步骤
- linux中搭建MongoDB Replset
- Jump Game II
- rqnoj 496 [IOI1999]花店橱窗布置 (简单dp)
- WinDBG 的首选资源
- jquery实现帮侧悬浮可收缩层
- 20个Android很有用的代码片段
- RHEL6 修改口令报错passwd: Authentication token manipulation error
- php调试与优化