16.1. 安装GeoMesa Cassandra¶
备注
GeoMesa目前支持Cassandra版本 3 。
备注
以下示例要求在环境中设置版本:
$ export TAG="4.0.2"
$ export VERSION="2.12-${TAG}" # note: 2.12 is the Scala build version
16.1.1. 正在连接到Cassandra¶
开始使用Cassandra和GeoMesa的第一步是安装Cassandra本身。您可以找到下载和安装Cassandra Online的好方法。例如,请参阅Cassandra的官方 getting started 文件。
一旦安装了Cassandra,下一步就是准备Cassandra安装,以便与GeoMesa集成。首先,在Cassandra内创建一个密钥空间。要做到这一点,最简单的方法 cqlsh ,它本应作为Cassandra安装的一部分进行安装。开始 cqlsh ,然后键入::
CREATE KEYSPACE mykeyspace WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor' : 3};
这将创建一个名为“mykeyspace”的密钥空间。这是Cassandra内部的顶级名称空间,它将为GeoMesa提供一个放置其所有数据的地方,包括空间要素数据和相关元数据。
接下来,您需要将 CASSANDRA_HOME 环境变量。GeoMesa使用这个变量来查找Cassandra罐子。这些罐子应该放在 lib 您的Cassandra安装的目录。要设置变量,请将以下行添加到您的 .profile 或 .bashrc 文件::
export CASSANDRA_HOME=/path/to/cassandra
最后,确保您知道Cassandra实例的联系点。如果您只是在本地尝试,并使用默认的Cassandra设置,则联系点将为 127.0.0.1:9042 。您可以使用检查和配置您正在使用的端口 native_transport_port 在Cassandra配置文件(位于 conf/cassandra.yaml 在您的Cassandra安装目录中)。
16.1.2. 从二进制分发安装¶
GeoMesa Cassandra文物可以下载,也可以从源代码构建。最简单的入门方法是从下载最新的二进制版本 GitHub.
下载并将其解压到方便的位置:
# download and unpackage the most recent distribution:
$ wget "https://github.com/locationtech/geomesa/releases/download/geomesa-${TAG}/geomesa-cassandra_${VERSION}-bin.tar.gz"
$ tar xvf geomesa-cassandra_${VERSION}-bin.tar.gz
$ cd geomesa-cassandra_${VERSION}
16.1.3. 从源开始构建¶
GeoMesa Cassandra也可以从源头上建造。有关详细信息,请参阅上的说明 GitHub 。 GitHub 。本章剩余的说明假定使用二进制GeoMesa Cassandra分布。如果您是从源代码构建的,则在 target 目录号 geomesa-cassandra/geomesa-cassandra-dist 。
16.1.4. 设置Cassandra命令行工具¶
GeoMesa Cassandra附带了一组命令行工具,用于管理位于 geomesa-cassandra_${VERSION}/bin/ 二进制分布的。
备注
您可以在中配置环境变量和类路径设置 geomesa-cassandra_${VERSION}/conf/*-env.sh 。
备注
geomesa-cassandra 会读到 $CASSANDRA_HOME 和 $HADOOP_HOME 环境变量为Cassandra和Hadoop加载适当的JAR文件。此外, geomesa-cassandra 会将所有其他JAR从 $GEOMESA_EXTRA_CLASSPATHS 环境变量添加到类路径中。使用 geomesa-cassandra classpath 命令,以查看正在使用的是什么JAR。
如果您没有在本地安装Cassandra,那么在您第一次运行这些工具时,它会提示您下载必要的JAR。您也可以使用随发行版提供的脚本手动执行此操作:
$ ./bin/install-dependencies.sh
由于许可限制,必须单独安装形状文件支持的从属项。使用以下命令执行此操作:
$ ./bin/install-shapefile-support.sh
跑 geomesa-cassandra 没有论据来确认这些工具是有效的。
$ bin/geomesa-cassandra
输出应如下所示::
INFO Usage: geomesa-cassandra [command] [command options]
Commands:
...
16.1.5. 在Geoserver中安装GeoMesa Cassandra¶
警告
看见 Geoserver版本 以确保Geoserver与您的GeoMesa版本兼容。
GeoMesa Cassandra发行版包括一个Geoserver插件,用于在Geoserver中包含Cassandra数据存储。插件文件位于 dist/gs-plugins/geomesa-cassandra-gs-plugin_${VERSION}-install.tar.gz 归档在GeoMesa Cassandra分发目录中。
要安装插件,请解压缩归档文件并将内容复制到 WEB-INF/lib Geoserver安装目录::
.. code-block:: bash
- $tar-xzvf
Geomesa-cassandra_${VERSION}/dist/gs-plugins/geomesa-cassandra-gs-plugin_${VERSION}-install.tar.gz-C/path/to/geoserver/webapps/geoserver/WEB-INF/lib
接下来,安装Cassandra的罐子。默认情况下,将从Maven Central下载JAR。您可以通过设置环境变量来覆盖此设置 GEOMESA_MAVEN_URL 。如果您没有互联网连接,您可以手动下载JAR。
编辑文件 geomesa-cassandra_${VERSION}/conf/dependencies.sh 要设置Cassandra的版本以匹配目标环境,然后运行脚本:
$ ./bin/install-dependencies.sh /path/to/geoserver/webapps/geoserver/WEB-INF/lib
安装JAR后重新启动Geoserver。