无法看到从远程ESP Studio运行ESP项目

2020-09-23 12:04发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) SAP事件流处理器专家, 我...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


SAP事件流处理器专家,

我一直在社区中进行筛选,似乎找不到能帮助我解决问题的案例。 希望您能指出解决方案。

我们才刚刚开始开发,到目前为止,已经在云中的SUSE Linux上运行了一个ESP 5.1 SP12安装。 集群数据库和node1正在运行。 通过同一私有网络中Windows终端服务器上的ESP Studio,我可以连接并运行第一个测试项目,以将输入流中的数据手动写入SUSE Server上的磁盘。

现在,我正在尝试通过笔记本电脑执行相同的操作,该笔记本电脑显然不在SUSE Server的专用网络内。 我能够通过端口19011上的群集的公共IP连接到群集,并且可以看到其中包含的工作区和测试项目。

但是,即使项目正在运行,我也看不到输入流。 当我在SUSE Server上停止该项目,然后尝试从我的笔记本电脑上的ESP Studio启动它时,实际上确实启动了该项目(我可以看到它从终端服务器上的Studio再次运行)。 但是,仍然无法在笔记本电脑上看到所包含的流。 右键单击该项目还会继续为我提供启动该项目的选项,而不是停止它(即使它正在运行)。 如果我尝试从我的笔记本电脑启动正在运行的项目,则错误消息告诉我该项目正在运行。 [FAILURE:应用程序当前状态未停止] [CODE:710077]

如果我试图通过专用IP或公用IP从专用网络中的终端服务器进行连接,则两者都可以正常工作。 我要注意这一点,因为从终端连接公共IP类似于从笔记本电脑连接公共IP。 它正在与网络中的公共IP配合使用,这使我猜测,问题正在逐步蔓延到如何在配置文件中设置IP和DNS名称。

我的配置如下:

SUSE上的
 start_db.sh:
 ESP_CLUSTER_DB_NAME = esp_cluster_esp1_esp.public.com 
SUSE上的
 cluster.cfg具有以下行:jdbc-url = jdbc:sybase:Tds::19111 
SUSE上的
 cluster.xml具有以下行:
  esp.private.com  
SUSE映射上的
/etc/hosts
 esp.public.com->公用IP
 esp.private.com->私有IP 
Windows终端服务器映射上的
主机
 esp.private.com->私有IP 
Windows笔记本电脑地图上的
主机
 esp.private.com->公用IP 

如果我尝试将 esp.public.com 用作STREAMING_HOSTNAME,则群集节点无法 甚至可以启动(请参阅 node1log.txt 中的错误日志)。 这就是为什么我最终将上述配置与 esp.private.com 一起使用的原因 在专用网络中,并且还允许我从远程ESP Studio连接到群集数据库。

所以我的问题是:从笔记本电脑连接后,为什么看不到正在运行的项目和所包含的流?

是否需要在云网络上打开其他端口以进行外部访问?如何正确配置我的目的?

在这一点上,我还要指出,本练习的最终目标是能够将用Java编写的发布者连接到流。 该发布者正在传感器设备上运行,该传感器设备应该可以从任何地方连接到Internet,以将数据流传输到SUSE上的ESP。 我无法通过以下例外连接该发布者:

线程"主"中的异常java.io.IOException:无法在com.sybase上调用:https://esp.private.com:48931/RPC2(无法读取服务器的响应:连接超时:connect)。  esp.sdk.internal.ProjectGateway.isBigEndian(ProjectGateway.java:1036)位于com.sybase.esp.sdk.impl.ProjectImpl.doUpdatePropertiesFromProject(ProjectImpl.java:1656)位于com.sybase.esp.sdk.impl._5_1_SP10。 位于com.sybase.esp.sdk.impl.ProjectImpl.doConnect(ProjectImpl.java:1421)的ProjectImpl.doUpdatePropertiesFromProject(ProjectImpl.java:39),位于com.sybase.esp.sdk.impl.ProjectImpl.connect(ProjectImpl.java:  172),位于sensordata.program.main(program.java:76)的sensordata.program.ConnectWithESP(program.java:103)

在我看来,该设备也能够连接到服务器,但是随后无法将发布者连接到流。 因此,为了解决此问题,我的想法是,我应该首先能够从远程位置连接ESP Studio。 因此,最后,我的问题不是真正出于开发目的而连接ESP Studio-我可以从终端服务器上的Studio中进行开发-真正地是关于连接Java发布者。

您可能想向我指出这个解决方案,它显然无济于事:
node1log.txt (4.8 kB)

4条回答
N-Moskvin
2020-09-23 12:36 .采纳回答

由于您正在使用云服务器实例,因此您将需要显式配置ESP项目正在使用的端口。 到目前为止,这听起来像是您的网络管理员打开了3个必需端口中的1个,并且由于默认行为是每次启动项目时都会动态分配端口,因此您会发现每次启动/重新启动项目。 通过将项目配置为始终使用相同的3个端口,您将能够显式地仅打开项目所需的3个端口。 请参阅此博客文章,以获取有关如何指定端口的说明:

指定要由Smart Data Streaming项目使用的命令端口

尽管该帖子是专门为HANA智能数据流编写的,但ESP项目的项目配置步骤和对话是相同的。

一周热门 更多>