使用内联参数启动 Snappydata

Posted

技术标签:

【中文标题】使用内联参数启动 Snappydata【英文标题】:Starting Snappydata by using inline arguments 【发布时间】:2018-06-18 07:21:07 【问题描述】:

在使用命令行参数启动 snappydata 时出现以下错误

ERROR 38000: (SQLState=38000 Severity=20000) (Server=/X.X.X.157[1528] Thread=ThriftProcessor-0) 异常 'com.gemstone.gemfire.cache.TimeoutException: Hive 元存储中的 SnappyData 目录评估表达式时抛出“不可访问”。

以下是我用来启动集群的脚本。

./bin/snappy locator start -dir=work/localhost-locator-1 -bind-address=X.X.X.157 -client-bind-address=X.X.X.157 -hostname-for-clients=X.X.X.157

./bin/snappy leader start  -dir=work/localhost-lead-1  -locators=X.X.X.157[10334] -spark.executor.cores=1

./bin/snappy server start  -dir=work/localhost-server-1  -locators=X.X.X.157[10334] -bind-address=X.X.X.157 -client-bind-address=X.X.X.157 -J-Dgemfirexd.hostname-for-clients=X.X.X.157 -heap-size=1g

【问题讨论】:

【参考方案1】:

“领导者”似乎没有正常启动。 你能跑吗:

./sbin/snappy-status-all.sh

并粘贴输出。 这将打印所有组件的状态,即定位器、领导者和服务器。 未正确启动的组件的日志文件中的错误应该会有所帮助。让我们知道在日志文件中看到了什么错误。

【讨论】:

当我这样做时,我会得到以下信息。 /sbin/snappy-status-all.sh。 SnappyData 定位器 pid:24123 状态:正在运行。 SnappyData 服务器 pid:24598 状态:正在运行。 SnappyData Leader pid: 24308 status: running 集群已启动并运行良好。 集群是否正常运行?那么错误什么时候来呢?当您发出任何查询时? 是的,当我使用 snappy-sql 创建表时出现错误 - 异常 'com.gemstone.gemfire.cache.TimeoutException: The SnappyData catalog in hive meta-store is not access'在评估表达式时被抛出。 能否分享一下这个错误的lead和server的日志?【参考方案2】:

我在帖子中提到的错误是由于我启动 Snappydata 成员的顺序而发生的。 正确的顺序是先启动定位器,然后是服务器,然后是引线。 我也在分布式环境中进行了同样的测试。

【讨论】:

以上是关于使用内联参数启动 Snappydata的主要内容,如果未能解决你的问题,请参考以下文章

SnappyData 每行 TTL

Terraform GCP 启动脚本本地文件而不是内联文件

如何启动节点服务器并导出 NODE_PATH(使用 npm start 或内联命令)

Kiosk 应用程序:在 iOS 中下载启动应用程序内(内联)应用程序

main函数执行以前还会执行啥代码

main函数执行以前还会执行啥代码