初识HBase

Posted 南川

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识HBase相关的知识,希望对你有一定的参考价值。

  现如今,分布式架构大行其道,实际项目中使用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的主要内容,如果未能解决你的问题,请参考以下文章

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

初识 HBase

初识Hbase

初识HBase

走进Hbase-初识分布式

Java初识方法