• 初识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>
  • 相关阅读:
    记录Spark 笛卡尔积问题
    接口和继承的区别
    SpringMVC使用可以访问静态资源,但是导致Controller访问失败
    Redis获取缓存异常:java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to XXX
    Spring MVC RedirectAttributes取值方法
    Resource interpreted as Stylesheet but transferred with MIME || DevTools failed to parse SourceMap:
    web.xml中filter加载顺序出现的问题
    kafka 与 rocketmq
    从小到大的部署架构
    SSH框架的简单实现
  • 原文地址:https://www.cnblogs.com/nanchuan/p/7613837.html
Copyright © 2020-2023  润新知