分布式实时日志系统(四) 环境搭建之centos 6.4下hbase 1.0.1 分布式集群搭建
一、hbase简介
HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,实现的编程语言为 Java。它是Apache软件基金会的Hadoop项目的一部分,运行于HDFS文件系统之上,为 Hadoop 提供类似于BigTable 规模的服务。因此,它可以容错地存储海量稀疏的数据。
HBase在列上实现了BigTable论文提到的压缩算法、内存操作和布隆过滤器。HBase的表能够作为MapReduce任务的输入和输出,可以通过Java API来存取数据,也可以通过REST、Avro或者Thrift的API来访问。 — 维基百科
参考文档
Apache HBase ™ Reference Guide
HBase 官方文档中文版
列式存储hbase系统架构学习
(slideshare PPT 分享服务在大陆是被墙的,不能科学上网?查看使用shadowsocks服务享受自由网络学习方法)
二、整体环境说明
hbase的存储为 HDFS,所以运行hbase是需要hadoop环境的,hadoop 集群搭建过程参考之前文章http://ixirong.com/2015/05/22/how-to-install-hadoop-cluster/
操作系统: cenos 6.4 ,三台192.168.9.92、192.168.9.93、192.168.9.94
jdk版本: 1.7.0_75
hadoop版本: 2.5.2 (目的与hbase兼容)
hbase 集群3个节点,一主两从,如下:
角色 | ip | 运行进程 |
---|---|---|
master | 192.168.9.92 | JobHistoryServer,ResourceManager,NameNode,NodeManager,DataNode,Main,HMaster |
slave1 | 192.168.9.93 | NodeManager,DataNode,HRegionServer |
slave2 | 192.168.9.94 | NodeManager,DataNode,HRegionServer |
hbase 的部署完全支持单机和伪分布式,如果没有机器可以按照这两种方式来部署,详情参考:http://blog.csdn.net/andie_guo/article/details/44086389
三、分布式集群搭建
hbase 集群的搭建如同hadoop一样,并不困难,解压完文件、修改环境变量、修改启动时候的配置文件,启动测试就ok了,下面一步步来说明,最后提供一键安装部署脚本。
hbase 版本的下载参考官网 http://mirrors.cnnic.cn/apache/hbase/ ,本文使用的版本为1.1.0.1/ 22-May-2015 02:20 -
。
3.1 安装 hbase
将下载下来的文件hbase-1.0.1-bin.tar.gz
,解压到 /home/hadoop/
目录下面 ,命令如下:
1 |
tar -zxvf hbase-1.0.1-bin.tar.gz -C /home/hadoop |
3.2 配置环境变量
第一步操作后会存在/home/hadoop/hbase
这个目录,下面需要修改环境变量vim /etc/profile
,添加如下:
1 |
export PATH=$PATH:/home/hadoop/hbase/bin # 使本次修改生效 |
3.3 hbase配置文件修改
hbase 相关的配置主要包括hbase-env.sh
、hbase-site.xml
、regionservers
三个文件,都在 /home/haoop/hbase/conf
目录下面:
3.3.1 修改 hbase-env.sh
主要是 JAVA_HOME、HADOOP_HOME、日志等的位置:
1 |
export JAVA_HOME=/opt/jdk1.7.0_75 |
3.3.2 修改 hbase-site.xml
xml 包含了几个关键的属性
属性 | 说明 |
---|---|
hbase.rootdir | hbase数据存储目录,/tmp/hbase-${user.name},这意味着每次重启系统都会丢失数据。注意:需要和hadoop的core-site.xml中的文件保持一致 |
hbase.cluster.distributed | 是否分布式,单击和伪分布式需要设置为 false |
hbase.master | 指定master机器 |
hbase.zookeeper.quorum | zk集群机器,多个英文逗号隔开,注意:必须是基数 |
1 |
<configuration> |
3.3.3 修改regionservers
添加HRegionServer的机器,目前为slave1和slave2两台,如下 vim /home/hadoop/hbase/conf/regionservers
1 |
slave1 |
上面这几步,需要在每台机器上面都执行下,执行完毕后,hbase集群就算搭建完了,因为机器一多,执行这些命令很是烦人,所以提供一键安装部署脚本,hbase_tar.zip
文件请访问百度网盘,密码为2a4g
,脚本如下:
1 |
#!/bin/bash # author: xirong |
四、hbase集群测试
集群中所有节点完成上述HBase部署之后,即可启动HBase集群。启动顺序:hadoop-> hbase,如果使用自己安装的zookeeper启动顺序是:hadoop-> zookeeper-> hbase
停止顺序:hbase-> zookeeper-> hadoop。
hadoop 启动方法:$HADOOP_HOME/bin/start_all.sh
,jps 命令后看到hadoop的几个进程说明就是ok的,详情参考
zk 启动方法: sh $ZOOKEEPER_HOME/bin/zkServer.sh start
, 启动后可以查看 zk的状态 sh $ZOOKEEPER_HOME/bin/zkServer.sh status
,发现 leader或者Fowler,就说明是ok的,详情参考
hbase启动方法如下,执行jps
Java进程查看命令后,出现下面的情况就证明是ok的
1 |
# master上启动,注意:只需要在master机器上面执行 start-hbase.sh就行,会自动启动slave1和slave2 |
五、hbase shell 操作
hbase提供的shell脚本就如果MySQL的一样,简单、强大,如下面例子中的几个:
1 |
[hadoop@master bin]$ hbase shell |
这部分操作请参考如下文章,个人认为写的通俗易懂,还很全面,适合入门体验
【HBase基础教程】3、HBase Shell DDL操作
【HBase基础教程】4、HBase Shell DML操作
HBase shell的基本用法
六、hbase 实践优化
分布式实时日志系统(四) 环境搭建之centos 6.4下hbase 1.0.1 分布式集群搭建的更多相关文章
- 分布式实时日志系统(一)环境搭建之 Jstorm 集群搭建过程/Jstorm集群一键安装部署
最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式 ...
- linux环境下redis安装(redis伪集群搭建)
redis在linux环境下搭建 1.创建目录 [root@192 local]# mkdir /usr/local/redis 2.下载redis,并解压 [root@192 local]# wge ...
- Redis(二)CentOS7安装Redis4.0.10与集群搭建
一 Redis单机安装 1 Redis下载安装 1.1 检查依赖环境(Redis是C语言开发,编译依赖gcc环境) [root@node21 redis-]$ gcc -v -bash: gcc: c ...
- 基于Hadoop 2.2.0的高可用性集群搭建步骤(64位)
内容概要: CentSO_64bit集群搭建, hadoop2.2(64位)编译,安装,配置以及测试步骤 新版亮点: 基于yarn计算框架和高可用性DFS的第一个稳定版本. 注1:官网只提供32位re ...
- VituralBox从零搭建基于CentOS 7(64位)的Kubernetes+docker集群
1. 下载CentOS 7官方minimal镜像 2. 安装VituralBox(Windows 10 64位) 3. 安装Git for windows(Windows 10 64位) 4. 安装V ...
- 分布式实时日志系统(二) 环境搭建之 flume 集群搭建/flume ng资料
最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式 ...
- 同主机下Docker+nginx+tomcat负载均衡集群搭建
想用Docker模拟一下nginx+tomcat集群部署,今天折腾了一天,遇坑无数,终于在午夜即将到来之际将整个流程走通,借本文希望给同样遇到类似问题的小伙伴们留点线索. 主机环境是CentOS 7, ...
- hbase分布式集群搭建
hbase和hadoop一样也分为单机版.伪分布式版和完全分布式集群版本,这篇文件介绍如何搭建完全分布式集群环境搭建. hbase依赖于hadoop环境,搭建habase之前首先需要搭建好hadoop ...
- Hadoop3集群搭建之——安装hadoop,配置环境
接上篇:Hadoop3集群搭建之——虚拟机安装 下篇:Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoop3集群搭建之——hbase安装及简单操作 上篇已 ...
随机推荐
- 【C/C++学院】0904-boost智能指针/boost多线程锁定/哈希库/正則表達式
boost_array_bind_fun_ref Array.cpp #include<boost/array.hpp> #include <iostream> #includ ...
- 数据源HikariCP(多数据库的配置项)
oracle.jdbc.type=oracle oracle.jdbc.driver=oracle.jdbc.OracleDriver oracle.jdbc.url=jdbc:oracle:thin ...
- mysql的字符串函数
From: http://www.cnblogs.com/xiaochaohuashengmi/archive/2010/12/13/1904330.html 对于针对字符串位置的操作,第一个位置被标 ...
- HTTP Analyzer——WEB调试代理
HTTP Analyzer 是一个实时的web调试代理,如果你对Fiddler不陌生的话,HTTP Analyzer 就是和Fiddler具备一样功能的调试代理. 推荐这个软件而不推荐Fiddler的 ...
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——如何配置分布式集群中的zookeeper
集群安装总览参见这里 Zookeeper的配置 1,/etc/profile中加入zk的路径设置,见上面背景说明. 2,进入~/zk/conf目录,复制zoo_sample.cfg为zoo.cfg v ...
- 查看cp进度,使用watch
watch -n 1 -d du -sh dir 每隔1s查看当前目录所占空间大小
- tornado入门1
Tornado web server 是使用Python编写出來的一个极轻量级.高可伸缩性和非阻塞IO的Web服务器软件,著名的 Friendfeed 网站就是使用它搭建的. Tornado 跟其他主 ...
- WebGL Matrix4(4*4矩阵库)
Matrix4是由<<WebGL编程指南>>作者写的提供WebGL的4*4矩阵操作的方法库,简化我们编写的代码.源代码共享地址,点击链接:Matrix4源代码. 下面罗列了Ma ...
- liunx(centos7 ) 免密码登录
centos7 1.准备两台机器 如:(A机器) 和 (B机器) A机器 删除(.ssh目录下文件 known_hosts) 2. 对两台机器生成密钥 在 (A机器)上执行命令: [root@iZ ...
- Android安装器学习笔记(一)
Android安装器学习笔记(一) 一.Android应用的四种安装方式: 1.通过系统应用PackageInstaller.apk进行安装,安装过程中会让用户确认 2.系统程序安装:在开机的时候自动 ...