现如今,分布式架构大行其道,实际项目中使用HBase也是比比皆是。虽说自己在分布式方面接触甚少,但作为程序猿还是需要不断的给自己充电的。网上搜索了一些教程,还是觉得《HBase权威指南》不错,原版有第二版了,可惜没找到。这本书虽说旧了点,入门应该还是不错的。

  我是在Win10系统用VMware 12装了一台CentOS 7的虚拟机,使用Xshell 5远程管理,使用的HBase 1.2.6版本。

一,XShell连接CentOS

1,VMWare 12安装 CentOS参见:vmware12安装centos7系统详解 

2,进入CentOS,点击应用程序-->终端进入命令模式 

  

  

3,输入ifconfig,查看Linux的IP地址。然后就可以通过XShell 5新建连接访问了。  

  注:如果如下图所示只有ens33,并且没有显示IP地址,依照下面步骤处理

  

  (1)执行su root命令切换到root用户权限下

   

  (2)执行vi /etc/sysconfig/network-scripts/ifcfg-ens33命令,打开配置文件。点击I键打开INSERT模式,然后将ONBOOT的值改为yes,然后点击ESC键返回,再输入:wq保存并退出,最后reboot重启即可。

  

二,安装好CentOS 7之后,系统自带了OpenJDK,需要卸载并安装Sun的JDK1.8

1,用Xshell 5连接CentOS ,执行java -version,可以看到系统自带的是openjdk的1.8.0_131

    

2,输入rpm -qa | grep java,显示如下信息

  

3,依次输入如下命令卸载JKD(先卸载不带headless的)

rpm -e --nodeps java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.5.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64

  

  

4,成功卸载OpenJDK,再次输入java -version会出现如下提示

  

5,oracle官网下载jdk-8u144-linux-i586.tar.gz,并通过Xshell 5的文件传输工具上传到/usr/java路径,执行cd /usr/java和tar -zxvf jdk-8u144-linux-i586.tar.gz命令解压缩JDK

  

6,输入vi /etc/profile打开配置文件,在下图位置插入,保存退出。然后执行source /etc/profile使环境变量生效。

JAVA_HOME=/usr/java/jdk1.8.0_144
JRE_HOME=/usr/java/jdk1.8.0_144/jre
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH JAVA_HOME CLASSPATH

    

  注:如输入java -version,出现下图错误,需要先执行命令

 sudo yum install glibc.i686

  

,安装HBase

1,HBase官方网站下载hbase-1.2.6-bin.tar.gz,利用Xshell的文件传输工具将文件上传到CentOS的usr的local文件夹下。执行下面命令解压缩(解压后的文件夹名字为hbase-1.2.6,我改成了hbase)

cd /usr/local
tar -zxvf hbase-1.2.6-bin.tar.gz

2,输入如下命令启动hbase。(图中关于JDK的提示可以忽略)

cd /usr/local/hbase
bin/start-hbase.sh

  

  

3,在CentOS中,打开火狐浏览器访问http://localhost:16010/可以进入HBase管理后台  

   注:此时远程通过http://192.168.30.128:16010/还访问不了,原因是防火墙的原因

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

4,此时,HBase已经可以正常使用了。

  

  注:此时虽然可以正常运行了,数据默认存在file:///tmp/hbase-${user.name}/hbase。数据会在重启后丢失。需要修改hbase-site.xml的节点。

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>file:/usr/local/hbase</value>
  </property>
</configuration>

初识HBase的更多相关文章

  1. hbase系列之:初识hbase

    一.概述 在hadoop生态圈里,hbase可谓是鼎鼎大名.江湖传言,hbase可以实现数十亿行X数百万列的实时查询,可横向扩展存储空间.如果传言为真,那得好好了解了解hbase.本文从概念上介绍hb ...

  2. Hbase入门(一)——初识Hbase

    本文将介绍大数据的知识和Hbase的基本概念,作为大数据体系中重要的一员,Hbase弥补了Hadoop只能离线批处理的不足,支持存储小文件,随机检索.而这种特性使得Hbase对于实时计算体系的事件存储 ...

  3. hbase系列之:独立模式部署hbase

    一.概述 在上一篇博文中,我简要介绍了hbase的部分基础概念,如果想初步了解hbase的理论,可以参看上一篇博文 hbase系列之:初识hbase .本博文主要介绍独立模式下部署hbase及hbas ...

  4. 什么是HBase?终于有人讲明白了

    一.初识HBase HBase 是一个面向列式存储的分布式数据库,其设计思想来源于 Google 的 BigTable 论文.HBase 底层存储基于 HDFS 实现,集群的管理基于 ZooKeepe ...

  5. Hbase初识

    简介 数据模型 相关数据库 典型应用 优势 劣势 key-value Redis 缓存 快速查询 存储数据缺乏结构化 列族 Cassandra,Hbase 分布式的文件系统,大规模的数据存储 易于分布 ...

  6. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  7. 初识Hadoop入门介绍

    初识hadoop入门介绍 Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身. < ...

  8. hadoop初识

    搞什么东西之前,第一步是要知道What(是什么),然后是Why(为什么),最后才是How(怎么做).但很多开发的朋友在做了多年项目以后,都习惯是先How,然后What,最后才是Why,这样只会让自己变 ...

  9. 大数据测试之初识Hadoop

    大数据测试之初识Hadoop POPTEST老李认为测试开发工程师是面向测试的开发,也就是说,写代码就是为完成测试任务服务的,写自动化测试(性能自动化,功能自动化,安全自动化,接口自动化等等)的cas ...

随机推荐

  1. Lucene的配置及创建索引全文检索

    Lucene 是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言).Lucene ...

  2. Centos 7 PXE一键安装

    author:JevonWei 版权声明:原创作品 192.168.198.134作为安装服务器,由httpd服务共享安装程序 192.168.198.134作为dhcp服务器,客户机获取IP 一.安 ...

  3. 后端路由项目由 gulp 改为 webpack 的踩坑实录

    前言 公司有个后端路由的项目是用 gulp 作为前端自动化构建工具,最近学习了一下 webpack,深感其强大,一狠心将其改成了 webpack 构建,以下是踩坑实录. gulp 先来说说原来的架构. ...

  4. 对Java的数据类型和运算符的理解

    我知道千里之行始于足下,包含着对编程的兴趣,希望能够在这个平台上记录下我学习过程中的点点滴滴! Java的基本构造 标识符和关键字 标识符规则 标识符就是用于给程序中变量,类.方法命名的符号 1.标识 ...

  5. makefile使用.lds链接脚本以及 $@ ,$^, $,< 解析

    先来分析一个简单的.lds链接脚本 例1,假如现在有head.c init.c nand.c main.c这4个文件: 1.1 首先创建链接脚本nand.lds: SECTIONS { firtst ...

  6. css编写注意事项(不定时更新)

    CSS的编写是需要积累的,而一个好的css编写习惯对我们将来的成长是非常有利的,我会把我平时看到的或者遇到的会不定时的更新到这里,不时翻一下,但求有所进步. 如果各位看官也有看法和建议,评论下,我也会 ...

  7. shell下office、html、pdf文档互转方法

     分类: 后台开发 版权声明:本文为博主原创文章,未经博主允许不得转载.   OFFICE 文档在线预览方案很多: 服务器先转换为PDF,再转换为SWF,最后通过网页加载Flash预览,比如flexp ...

  8. CentOS7中安装MySQL5.7 (转)

    安装必要的组件 yum install –y autoconf automake imake libxml2-devel expat-devel cmake gcc gcc-c++ libaio li ...

  9. 【Alpha】——Fifth Scrum Meeting

    一.今日站立式会议照片 二.每个人的工作 成员 昨天已完成的工作 今天计划完成的工作 李永豪 测试统计功能 对统计出现的问题进一步完善 郑靖涛 着手编写报表设计 继续报表设计 杨海亮 协助编写统计功能 ...

  10. 201521123023《java程序设计》第四周学习总结

    1. 本周学习总结 思维导图 常规: (1)抽象类:不能被直接实例化.只能作为其它类的父类,这一点与final类正好相反.用关键词abstract声明. (2)继承:只能有一个父类,即单继承,子类继承 ...