我已经安装了Orion Context Broker 0.23.0并且它表现很少:它只能工作一半的时间。例如,在尝试检索版本时,我收到以下错误消息:
$ curl "http://localhost:1026/version"
curl: (52) Empty reply from server
$ curl "http://localhost:1026/version"
<orion>
<version>0.23.0</version>
<uptime>15 d, 22 h, 13 m, 18 s</uptime>
<git_hash>f5d76a6f11736d52402e63a4aa0ba990bff7f5eb</git_hash>
<compile_time>Fri Jul 10 13:21:42 CEST 2015</compile_time>
<compiled_by>fermin</compiled_by>
<compiled_in>centollo</compiled_in>
</orion>
$ curl "http://localhost:1026/version"
curl: (52) Empty reply from server
$ curl "http://localhost:1026/version"
<orion>
<version>0.23.0</version>
<uptime>15 d, 22 h, 13 m, 53 s</uptime>
<git_hash>f5d76a6f11736d52402e63a4aa0ba990bff7f5eb</git_hash>
<compile_time>Fri Jul 10 13:21:42 CEST 2015</compile_time>
<compiled_by>fermin</compiled_by>
<compiled_in>centollo</compiled_in>
</orion>
这种行为是确定性的,我的意思是,在失败之后它始终有效,并且在工作之后总是失败。这与REST API中的所有操作一起发生。
我已经检查了侦听端口,并且运行它们的过程与Orion的一个匹配:
$ sudo netstat -ntlp | grep 1026
tcp 0 0 0.0.0.0:1026 0.0.0.0:* LISTEN 9944/contextBroker
tcp 0 0 :::1026 :::* LISTEN 9944/contextBroker
$ ps ax | grep contextBroker | grep -v grep
9944 ? Ssl 0:13 /usr/bin/contextBroker -port 1026 -logDir /var/log/contextBroker -pidpath /var/run/contextBroker/contextBroker.pid -dbhost localhost -db orion -multiservice
任何提示?谢谢!
答案 0 :(得分:0)
Orion默认运行,侦听IPv4和IPv6。我们发现在类似于你所描述的情况下,禁用IPv6可以解决问题(我们还不知道确切的原因,可能与操作系统有关,或者它涉及某种方式......)。
仅在IPv4模式下运行Orion您必须在contextBroker命令行中使用-ipv4
选项,或者(如果您将Orion作为服务运行)编辑/etc/sysconfig/contextBroker
文件以添加{ {1}}到BROKER_EXTRA_OPS变量(有关将Orion配置为服务的更多信息,请查看the documentation)。修改-ipv4
后,您必须使用以下命令重新启动Orion:
/etc/sysconfig/contextBroker