问题标签 [fiware-cosmos]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
30 浏览

docker - Fiware Orion + Cosmos:订阅失败 - 尝试通知属于同一网络的 PC 时已超时

我在 Citrix Xenserver 服务器上有一个场景,在同一网络 (10.0.1.0/24) 上有 3 个虚拟机 (VM) Centos7。每个 VM 负责使用 Scala 上的 Apache Spark(逻辑回归)进行预测。我在 Docker 上使用 Orion Context broker (CB) 来创建将被触发以询问预测的订阅。CB 它仅位于 10.0.1.4 VM 中,我使一些端口可用于从其他机器访问。

我的 docker-compose.yml:

例如,要从 10.0.1.2 VM 访问 CB,我使用 10.0.1.4:1028/..... 等等。

这是我面临问题的订阅(也许与 10.0.1.3 VM 相关的其他订阅也必须有同样的问题)

我在 10.0.1.2 VM 上有一个代码,它正在使用 Fiware Cosmos 在端口 9002 上侦听与此订阅相关的更改:

对于10.0.1.4 VM 上的 eventStream变量,端口为 9004,对于 10.0.1.3 VM,端口为 9003

对于conf变量,我在具有 10.0.1.4 IP 的 10.0.1.4 VM 上设置“spark.driver.host”,并将 10.0.1.3 VM 设置为 10.0.1.3 IP

但是当我触发时,订阅失败显示下一个(不仅在 10.0.1.2 上,也在 10.0.1.3 VM 上):

奇怪的是,当我使用与具有 CB 容器的 10.0.1.4 VM 相关的订阅时,订阅仍然处于活动状态,我得到了预期的结果。

这是订阅:

这是触发并完美处理时的答案:

我不得不说我是 Spark、Scala 甚至 Fiware 的新手。但是项目就是项目,也许我错过了我在设置这个项目时阅读的所有内容中没有看到的东西。此外,我停止了所有防火墙 (firewalld),因为我在与 10.0.1.2 和 10.0.1.3 虚拟机相关的订阅上遇到“无法连接到服务器”错误。我也做了一个 sudo yum 更新,我在彼此之间 ping 了所有的虚拟机,我得到了很好的响应。我不知道它是否重要的​​一件事:我的所有虚拟机上都有互联网,但我无法 ping 例如... www.google.com或 8.8.8.8。所以,欢迎提出任何建议!我为我的英语道歉。先谢谢了~