关于使用 snappydata/bin> ./spark-shell.sh 脚本启动定位器的问题

Posted

技术标签:

【中文标题】关于使用 snappydata/bin> ./spark-shell.sh 脚本启动定位器的问题【英文标题】:Questions on starting Locator using snappydata/bin> ./spark-shell.sh script 【发布时间】:2016-07-21 20:39:20 【问题描述】:

Spark v. 0.5

这是我用来启动定位器的命令:

ubuntu@ip-172-31-8-115:/snappydata-0.5-bin/bin$ ./snappy-shell locator start 
Starting SnappyData Locator using peer discovery on:
0.0.0.0[10334] Starting DRDA server for SnappyData at address localhost/127.0.0.1[1527] 
Logs generated in /snappydata-0.5-bin/bin/snappylocator.log 
SnappyData Locator pid: 9352 status: running

看起来它在本地启动 DRDA 服务器,没有外部接口供客户端连接。因此,我无法使用来自外部客户端主机(例如我的 SquirrelSQL 编辑器)的这个 JDBC URL 访问我的 SnappyData 定位器。

这不连接:

jdbc:snappydata://MY-AWS-PUBLIC-IP-HERE:1527/

我应该传递我的 ./snappy-shell.sh 位置启动命令什么属性来让 DRDA 服务器在公共 IP 地址而不是“localhost/127.0.0.1”上启动?

【问题讨论】:

我们会尽快为您解答 【参考方案1】:

使用 -client-bind-address-client-port 选项。对于定位器,还可以使用 -peer-discovery-address-peer-discovery-port 选项来指定其他定位器/服务器/潜在客户的绑定地址(传递给他们的-locators=:):

snappy-shell locator start -peer-discovery-address=<internal IP for peers> -client-bind-address=<public IP for clients>

查看snappy-shell locator --help的输出,了解常用选项。

对于 SnappyData 版本,您可能会发现为所有定位器、服务器和潜在客户使用全局配置要容易得多。检查configuring the cluster。

这将允许在 conf/locators、conf/leads、conf/servers 中为集群的所有 JVM 指定所有选项,然后以 snappy-start-all.sh 开始,状态以 snappy-status-all.sh 并用 snappy-stop-all.sh

停止所有

【讨论】:

-peer-discovery-address 应该是多播地址吗? 不,机器的IP地址。多播支持大部分已被淘汰。通常,对等方将使用内部 IP 地址进行通信,而对于客户端,它将使用公共 IP 地址(尽管两者可以相同)。 听起来不错。是的,我在一些堆栈跟踪中看到了 jgroups 引用,还在日志中看到了一组“mcast_”属性,所以我不确定。我们让它运行起来。只是为了向使用 AWS 的其他人澄清,对于 -client-bind-address,我使用了 AWS 所谓的“私有 IP”,它确实是“客户的公共 IP”,但与 AWS“公共 IP”不同,后者通过互联网出去。 :)【参考方案2】:

在相关说明中,我们 SnappyData Inc. 正在开发脚本,以使用户能够在 AWS 上快速启动 SnappyData 集群。 如果您想尝试一下,以下步骤将指导您。我们很想听听您对此的反馈。

下载它的开发分支git clone https://github.com/SnappyDataInc/snappydata.git -b SNAP-864(您不需要为此克隆存储库,但我找不到在此处附加脚本的方法。) 进入ec2目录cd snappydata/cluster/ec2 运行 snappy-ec2。 ./snappy-ec2 -k ec2-keypair-name -i /path/to/keypair/private/key/file launch your-cluster-name 请参阅此README 了解更多详情。

【讨论】:

以上是关于关于使用 snappydata/bin> ./spark-shell.sh 脚本启动定位器的问题的主要内容,如果未能解决你的问题,请参考以下文章

关于python中argsort()函数的使用

关于“回归自然”onepage的总结

关于使用SVN上传添加删除文件

关于JavaWeb不使用框架上传文件的简单实现

关于服务器跨域问题(使用cors解决)

js 关于replace() 的使用心得