(安装进程按官网行:http://www.geomesa.org/documentation/user/hbase/install.html)

一、安装
1.从GitHub上下载最新版GeoMesa HBase到cloud目录下并解压
2.配置环境变量(vi /etc/profie 及 GeoMesa HBase根目录下 vi conf/geomesa-env.sh)

export HADOOP_HOME=/path/to/hadoop
export HBASE_HOME=/path/to/hbase
export GEOMESA_HBASE_HOME=/opt/geomesa
export PATH="${PATH}:${GEOMESA_HBASE_HOME}/bin"

3.进入到${GEOMESA_HBASE_HOME},运行:

$ bin/install-jai.sh
$ bin/install-jline.sh

注:运行时出现:-bash: bin/install-jai.sh: Permission denied
解决方式:在bin目录下运行:chmod u+x install-jai.sh和chmod u+x install-jline.sh(修改权限)

4.GeoMesa使用HBase的自定义过滤器来执行CQL查询,为了允许GeoMesa使用过滤器,需要将{GEOMESA_HBASE_HOME}/dist/hbase/geomesa-hbase-distributed-runtime_2.11-2.0.0.jar拷贝到${HBase_HOME}/lib目录下

5.注册Coprocessors:
Geomesa使用HBase提供的coprocessor工具将处理过程移动到服务器端运行来提高查询效率,最简单的注册方式就是直接修改hbase-site.xml,增加以下内容:

<configuration><property><name>hbase.coprocessor.user.region.classes</name>
<value>org.locationtech.geomesa.hbase.coprocessor.GeoMesaCoprocessor</value>
</property>
</configuration>

6.最后运行 bin/geomesa-hbase configure 初始化Geomesa

二、测试(http://www.geomesa.org/documentation/tutorials/geomesa-quickstart-hbase.html)
1.在官网下载测试代码(示例程序):

$ git clone https://github.com/geomesa/geomesa-tutorials.git

2.下载完成后进行编译:
● $cd geomesa-tutorials
● $ mvn clean install -pl geomesa-quickstart-hbase
命令: mvn clean install -pl geomesa-tutorials-hbase/geomesa-tutorials-hbase-quickstart -am
(注:1.maven安装
(1)在maven官网(http://maven.apache.org/download.cgi)下载并解压到、opt/cloud下
tar zxvf apache-maven-3.5.3-bin.tar.gz -C /opt/maven
(2)配置环境变量(vi /etc/profile)
在profile中添加以下信息:

 export M2_HOME=/opt/cloud/apache-maven-3.5.3 export PATH=$PATH:$M2_HOME/bin

(3)通过执行下面命令刷新环境变量:source /etc/profile,安装完成
(4)验证:执行命令:mvn -version,如下所示
2. 编译出现以下问题:

缺少依赖项, 问题解决:
1、修改pom.xml ,将其中hadoop,hbase等等的版本改为与自己的之前所安装版本相匹配
2、将geomesa-tutorials-geomesa-tutorials-2.0.0 下的 geomesa-tutorials-common文件打包为jar文件到geomesa-tutorials-geomesa-tutorials-2.0.0 下
3、在http://mvnrepository.com/官网上下载guava-17.0.jar到/root/.m2/repository/com/google/guava/guava/17.0/目录下
4.成功运行: mvn clean install -pl geomesa-tutorials-hbase/geomesa-tutorials-hbase-quickstart -am
(注:这里必须是在geomesa-tutorials-geomesa-tutorials-2.0.0下执行 mvn clean install -pl geomesa-tutorials-hbase/geomesa-tutorials-hbase-quickstart -am;
而直接在geomesa-tutorials-hbase下执行mvn clean install -pl geomesa-tutorials-hbase-quickstart -am也会报错:

这是因为上面打包的geomesa-tutorials-common.jar文件放在了geomesa-tutorials-geomesa-tutorials-2.0.0目录下)
(注:在集群上,以上过程需在每个节点都执行,否则后面运行会报错:

3.编译成功后运行:
输入命令:

$ java -cp geomesa-tutorials -hbase / geomesa-tutorials-hbase-quickstart /target/gissa-    guides-hbase-startstart- $ VERSION .jar \org.geomesa.example.hbase.HBaseQuickStart \ --hbase.zookeepers <zookeepers >            \--hbase.catalog <table>

这里在geomesa-tutorials-geomesa-tutorials-2.0.0下输入

java -cp geomesa-tutorials-hbase/geomesa-tutorials-hbase-quickstart/target/geomesa-tutorials-hbase-quickstart-2.0.0.jar  org.geomesa.example.hbase.HBaseQuickStart --hbase.zookeepers cloud33     --hbase.catalog geomesa_hbase_table)

三、与GeoMesa Server整合
1.Geoserver安装
(1)从 http://geoserver.org/download/ 下载GeoServer,将其解压到指定目录
(2)将geomesa-hbase_2.11-2.0.1/dist/gs-plugins/geomesa-hbase-gs-plugin_2.11-2.0.1-install.tar.gz拷贝到GeoServer WEB-INF/lib目录下,并解压(1. jar -xvf geomesa-hbase-gs-plugin_2.11-2.0.1-shaded.jar)。
(3)拷贝所需jar:将以下目录拷贝到GeoServer WEB-INF/lib目录下(注:jar的版本与采用Hadoop和HBase版本相关):
commons-cli-1.2.jar
commons-configuration-1.6.jar
commons-io-2.4.jar
hadoop-annotations-2.7.4.jar
hadoop-auth-2.7.4.jar
hadoop-common-2.7.4.jar
hadoop-mapreduce-client-core-2.7.4.jar
hadoop-yarn-api-2.7.4.jar
hadoop-yarn-common-2.7.4.jar
hbase-client-1.2.6.jar
hbase-common-1.2.6.jar
hbase-protocol-1.2.6.jar
hbase-server-1.2.6.jar
htrace-core-3.1.0-incubating.jar
metrics-core-2.2.0.jar
netty-3.6.2.Final.jar
nzookeeper-3.4.6.jaretty-all-4.0.23.Final.jar

使用捆绑的$GEOMESA_HBASE_HOME/bin/install-hadoop.sh脚本来安装这些JAR。

(4)创建链接:由于HBase需要其hbase-site.xml在CLASSPATH中,因此需要将本文件链接到GeoServer WEB-INF/classes目录下,可以手动拷贝,也可以执行下面命令:

ln -s /path/to/hbase-site.xml /path/to/geoserver/WEB-INF/classes/hbase-site.xml

2.在Geoserver/bin下启动GeoServer,在浏览器中输入 http://localhost:8080/geoserver(http://cloud33:8080/geoserver),然后输入用户名:admin,密码:geoserver,出现以下界面:
点击 数据存储- 添加新的数据存储,如果有下图红色标注部分,说明GeoMesa HBase geoserver安装成功!
安装JAR后再重新启动GeoServer。

注:./startup.sh启动geoserver时报错:
1.

解决:在/etc/profile中添加Geoserver环境变量
2.

显示 java.net.BindException: Address already in use,原因:geoserver默认端口8080与spark端口重复,解决改掉spark的端口:vi spark路径/sbin/start-master.sh 其中一行:
if [ “$SPARK_MASTER_WEBUI_PORT” = “” ];
then SPARK_MASTER_WEBUI_PORT=8080 将8080改为你所希望启动的端口号如8089。start-all.sh重启spark。

3.geoserver中添加hbase数据存储
(1)建立一个工作区(如图):

(2)添加hbase数据存储,输入相关参数:

(注:参数设置与在运行教程时命令行上提供的参数值相同; 他们描述了如何连接到数据所在的HBase实例单击“Save”GeoServer将搜索您的HBase表以查找任何GeoMesa管理的要素类型。)
(3)视图:点击“Layer Preview”链接。找到已添加的图层,点击“OpenLayers”链接,打开一个新的标签,可以看到:

(注:参数设置完了之后报错,无法保存:


原因:hbase版本问题,之前部署的hbase是1.2.6的版本,而现在安装的geoserver是2.13.1版
本。
解决:下载hbase-1.3.1版本从头开始重新部署(所有与hbase相关的配置都改掉!))

GeoMesa HBase 安装及问题解决:相关推荐

  1. Geoserver+Geomesa+HBase时空大数据环境搭建

    1. 技术栈介绍 随着互联网技术日益发展,庞大的数据量,传统关系型数据库已无法满足业务需求,需结合Nosql型数据库来应对时空海量数据和业务发展.针对日前互联网外出交通出行,位置点实时监控与轨迹播放等 ...

  2. Linux环境HBase安装配置及使用

    Linux环境HBase安装配置及使用 1. 认识HBase (1) HBase介绍 HBase = Hadoop database,Hadoop数据库 开源数据库 官网:hbase.apache.o ...

  3. [企业化NET]Window Server 2008 R2[1]-服务器基本安装即问题解决记录

    1.  服务器基本安装即问题解决记录      √ 2.  SVN环境搭建和客户端使用 2.1  服务端 和 客户端 安装    √ 2.2  项目建立与基本使用     √ 2.3  基本冲突解决, ...

  4. requests安装及问题解决

    requests安装及问题解决 参考文章: (1)requests安装及问题解决 (2)https://www.cnblogs.com/taider/p/11851490.html 备忘一下.

  5. python3和pip3安装和问题解决

    python3和pip3安装和问题解决 参考文章: (1)python3和pip3安装和问题解决 (2)https://www.cnblogs.com/amoyzhu/p/9284294.html 备 ...

  6. hbase 单机 java api,HBase学习(一)hbase安装(单机模式)和javaapi客户端访问hbase例子...

    平时习惯了window下开发,而Hbase只能在linux环境下运行,所以决定把hbase安装一台虚拟机上,在windows下运行eclipse连接虚拟机里的hbase 因为对linux命令了解不多, ...

  7. hbase安装,以及安装前置hadoop(单节点)

    1.hadoop下载 https://archive.apache.org/dist/hadoop/common/ 这里我下载的是: hadoop-2.7.4.tar.gz 1-1首先做ssh免密码登 ...

  8. hbase 安装_HBASE 数据库入门级教程

    一.Hbase简介 1.什么是Hbase Hbase是一个高可靠性(存储在hdfs上,有副本机制),高性能,面向列,非关系型的数据库(类似redis),可伸缩的分布式存储系统(因为是存储在hdfs上) ...

  9. hbase安装配置(整合到hadoop)

    如果想详细了解hbase的安装:http://abloz.com/hbase/book.html 和官网http://hbase.apache.org/ 1.  快速单击安装 在单机安装Hbase的方 ...

最新文章

  1. Oracle中的数据字典技术及常用数据字典总结
  2. vmware开发包之vSphere Management SDK
  3. vs2012 发布网站时出现 sgen.exe 已退出 代码为 1
  4. python_面向对象进阶之元类
  5. 验证字符串是否为汉字
  6. 对注册表项的访问被拒绝的解决
  7. qt文件逐行读取_qt读取txt文件并绘图 qt逐行读取txt文件
  8. C语言sprintf与sscanf函数
  9. c++ split 方法(转)
  10. 微信公众开放平台开发04---百度BAE,java应用部署服务器,jetty了解
  11. mysql根据时间统计数据语句
  12. 各大排序算法的Objective-C实现以及图形化演示比较
  13. 关于 gzip, deflate, zlib, LZ77
  14. smpt authentification 配置
  15. 在哪儿比较好下载建筑学西方近现代的外文文献?
  16. oracle的month函数的使用方法,oracle next_day,add_month函数
  17. rti connext dds 例子程序
  18. 什么是肿瘤免疫逃逸?
  19. Python开发培训哪里好
  20. ANSYS APDL学习(3):ANSYS APDL 导入x_t格式模型并受力分析范例

热门文章

  1. HDFS原理 | 一文读懂HDFS架构与设计
  2. mysql workbench8.0关键词大写_Mysql从入门到精通全文整理
  3. class文件批量进行反编译的工具JAD,JODE
  4. 电话机器人源码和系统部署
  5. c++数据结构二叉树(二叉链表实现)基本操作实现
  6. Rap2导出swagger2格式json,方便转入yapi
  7. [转载]让matlab发出声音、播放音乐
  8. linux time效率,time(),gettimeofday()及GetTickCount()效率比较
  9. Java实现 蓝桥杯VIP 算法提高 聪明的美食家
  10. 模拟房间冲击响应(Room Impulse Response,RIR),AI去混响