按照我之前的问题How to show an entity from in the Wirecloud MapViewer widget,我安装了rush,当我打算从文件夹/ etc / sysconfig启动contextBroker时,我得到以下结果:
[root@fiware sysconfig]# contextBroker -rush localhost:1234 -https -key /etc/sysconfig/localhost.key -cert /etc/sysconfig/localhost.pem
E@19:00:10 exitFunc[1009]: unlink(/tmp/contextBroker.pid): No such file or directory
[root@fiware sysconfig]# F@19:00:10 ***[1063]: Connected to mongo at localhost:orion
E@19:00:10 restStart[764]: MHD_start_daemon failed
restStart: error 3
E@19:00:10 orionExit[998]: restStart: error
虽然当我通过“netstat -tupln”命令检查rush和contextBroker是否正在运行时,我得到“MHD_start_daemon failed”,但我得到以下结果:
[root@fiware /]# netstat -tupln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN 28973/node
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1622/mongod
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 28942/./home/locala
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 1673/Xvnc
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1234/rpcbind
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 1673/Xvnc
tcp 0 0 0.0.0.0:28017 0.0.0.0:* LISTEN 1622/mongod
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 12809/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1372/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1576/master
tcp 0 0 0.0.0.0:54363 0.0.0.0:* LISTEN 1252/rpc.statd
tcp 0 0 0.0.0.0:1026 0.0.0.0:* LISTEN 20892/contextBroker
tcp 0 0 :::6379 :::* LISTEN 28942/./home/locala
tcp 0 0 :::111 :::* LISTEN 1234/rpcbind
tcp 0 0 :::6001 :::* LISTEN 1673/Xvnc
tcp 0 0 :::22 :::* LISTEN 12809/sshd
tcp 0 0 ::1:631 :::* LISTEN 1372/cupsd
tcp 0 0 ::1:25 :::* LISTEN 1576/master
tcp 0 0 :::42975 :::* LISTEN 1252/rpc.statd
tcp 0 0 :::1026 :::* LISTEN 20892/contextBroker
udp 0 0 0.0.0.0:36688 0.0.0.0:* 1252/rpc.statd
udp 0 0 0.0.0.0:985 0.0.0.0:* 1234/rpcbind
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1361/avahi-daemon
udp 0 0 0.0.0.0:1004 0.0.0.0:* 1252/rpc.statd
udp 0 0 0.0.0.0:111 0.0.0.0:* 1234/rpcbind
udp 0 0 0.0.0.0:631 0.0.0.0:* 1372/cupsd
udp 0 0 0.0.0.0:51640 0.0.0.0:* 1361/avahi-daemon
udp 0 0 0.0.0.0:68 0.0.0.0:* 1131/dhclient
udp 0 0 :::985 :::* 1234/rpcbind
udp 0 0 :::111 :::* 1234/rpcbind
udp 0 0 :::39336 :::* 1252/rpc.statd
然后我返回“https://mashup.lab.fi-ware.org”并在每个小部件/操作符上添加以下输入:
NGSI来源
NGSI服务器网址:thiisorioncontextbroker:1026 /(http无https)
NGSI代理网址:https://ngsiproxy.lab.fi-ware.org/
NGSI实体:城市
NGSI属性:位置
NGI对Poi的实体
坐标属性:位置
但地图中没有任何内容再次出现:(。
运行以下命令后,我遇到了一个ssl错误:
[root@fiware sysconfig]# curl -k https://localhost:1026/version
curl: (35) SSL connect error
-------------------------------------------- --------------------------------------
我杀死了contextBroker运行进程并重新启动,然后我再次运行以下命令:
[root@fiware sysconfig]# curl -k https://localhost:1026/version
<orion>
<version>0.14.0</version>
<uptime>0 d, 0 h, 15 m, 18 s</uptime>
<git_hash>5e3d210e4b15fa9ebbfa07c93dd41f8b41697d0e</git_hash>
<compile_time>nodate</compile_time>
<compiled_by>fermin</compiled_by>
<compiled_in>centollo</compiled_in>
</orion>
使用https协议(https://YYY.YYY.YYY.YYY:1026)的contextBroker网址与NGSIUpdater小部件完美配合。所以我也在使用wirecloud小部件/运算符https://YYY.YYY.YYY.YYY:1026而不是http://YYY.YYY.YYY.YYY:1026,但我仍然没有得到要在MapViewer中显示的标记(PoI)。
再次运行netstat -tupln会显示以下结果:
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1622/mongod
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 28942/./home/locala
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 1673/Xvnc
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1234/rpcbind
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 1673/Xvnc
tcp 0 0 0.0.0.0:28017 0.0.0.0:* LISTEN 1622/mongod
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 12809/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1372/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1576/master
tcp 0 0 0.0.0.0:54363 0.0.0.0:* LISTEN 1252/rpc.statd
tcp 0 0 0.0.0.0:1026 0.0.0.0:* LISTEN 26631/contextBroker
tcp 0 0 :::6379 :::* LISTEN 28942/./home/locala
tcp 0 0 :::111 :::* LISTEN 1234/rpcbind
tcp 0 0 :::6001 :::* LISTEN 1673/Xvnc
tcp 0 0 :::22 :::* LISTEN 12809/sshd
tcp 0 0 ::1:631 :::* LISTEN 1372/cupsd
tcp 0 0 ::1:25 :::* LISTEN 1576/master
tcp 0 0 :::42975 :::* LISTEN 1252/rpc.statd
tcp 0 0 :::1026 :::* LISTEN 26631/contextBroker
udp 0 0 0.0.0.0:36688 0.0.0.0:* 1252/rpc.statd
udp 0 0 0.0.0.0:985 0.0.0.0:* 1234/rpcbind
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1361/avahi-daemon
udp 0 0 0.0.0.0:1004 0.0.0.0:* 1252/rpc.statd
udp 0 0 0.0.0.0:111 0.0.0.0:* 1234/rpcbind
udp 0 0 0.0.0.0:631 0.0.0.0:* 1372/cupsd
udp 0 0 0.0.0.0:54968 0.0.0.0:* 26706/local
udp 0 0 0.0.0.0:51640 0.0.0.0:* 1361/avahi-daemon
udp 0 0 0.0.0.0:68 0.0.0.0:* 1131/dhclient
udp 0 0 :::985 :::* 1234/rpcbind
udp 0 0 :::111 :::* 1234/rpcbind
udp 0 0 :::39336 :::* 1252/rpc.statd
感谢来自fiware人员的大力支持。
答案 0 :(得分:0)
似乎代理拒绝启动,因为已经有一个代理正在运行(在同一个端口上)。
在开始测试之前,请确保没有经纪人正在运行。
答案 1 :(得分:0)
考虑到问题评论,使用https://github.com/telefonicaid/fiware-orion/blob/master/scripts/httpsPrepare.sh脚本生成密钥和证书文件时,似乎可以解决使用HTTPS设置Orion CB的问题。
...
openssl genrsa -out "$keyFileName" 1024 > /dev/null 2>&1
openssl req -days 365 -out "$certFileName" -new -x509 -key "$keyFileName" -subj "$OPTIONS" > /dev/null 2>&1
此外,你需要启动并运行(你使用-rush localhost:1234
启动Orion,但我没有看到任何进程收听1234,所以我知道Rush没有启动)。据我所知,this other question正在讨论这个问题。