2
votes

I am experimenting with fiware and I would like to setup a VM with those 2 compoments in order to have an environment to be used with IoT devices.
I have been able (let me say with a great effort) to create a VM with the two components installed, by using the base contextBroker instance and building IoTAgent from source and then installing the generated RPMs. ContextBroker seems to work fine, because I can query for entities and I get 200 status as response, but if I try to create a service in IoTA I get no response, so I guess there is something wrong with the configuration.
I'll list all the steps I have performed so troubleshooting can be easier:

  • Deployed the VM in fiware Lab Cloud (orion-psb-image-R4.4)
  • Opened ports in the security group
  • Associated a floating IP to the VM
  • Built IoTAgent
  • Generated and installed RPMs packages
  • Set PATH and LD_LIBRARY_PATH in .bashrc to start iotagent properly
  • Created the configuration file "config.json" in /etc/iot as described on GitHub (I used the example one)
  • Started iotagent as a service with the command sudo service iotagent start protocol
  • Used the figway scripts to create a service, but the script hangs

Does iotagent_protocol.conf file in /usr/local/iot/config need any particular configuration as well or is there in general something I am missing or that I could check? Also, if I check the log in /tmp I can see this message: OAuth for northbound is not configured. Is authentication needed? In GitHub README the example configuration file has no authentication.

1
We would need more information to diagnose your problem properly. Authentication is not needed in order to use the IoT Agent; if no authentication information is configured, the IOTA doesn't try to get the token and authenticate requests. If the log is showing that line and you haven't configured anything, it may be just a warning (some bugs have been reported of error lines shown as errors where they where only warnings). Are there any more errors in the log? Did you use netstat to check if the process is really listening in the appropriate port? - Daniel Morán Jiménez
At the end it was just a firewall problem, I flushed iptables leaving only the security group VM policies and now I am able to reach the endpoint. - Pyrox

1 Answers

2
votes

The problem was the firewall, so a simple
sudo iptables -F

solved the problem, leaving only the security policies specified in the VM security group from the fiware cloud.