Network and Application Servers separate from Gateway Bridge

At the moment I have all the ChirpStack components installed on a Raspberry Pi and that setup is working well. Now I would like to move the Network Server and Application Server to a DigitalOcean Ubuntu Droplet so I can work with multiple gateways. I followed the “Quickstart Debian or Ubuntu” guide to install the Network and Application Servers on DigitalOcean but am not sure how the different configuration files need to be modified. This seems like a common architecture but I can not figure out how the Gateway Bridge installed on the Raspberry Pi will communicate with the the DigitalOcean server.

Any guidance would be appreciated.

Ned

The most likely setup would be to have your Gateway Bridge instance pointed at an MQTT server (over TLS) in the same network segment as your Network Server and Application Server.

You are correct, there are lost of options. A couple are in the diagram here: https://www.chirpstack.io/project/architecture/

Thanks @bconway. I spent some time learning more about MQTT and have it working now. Now I realize how important MQTT is for ChirpStack. My next step is to figure out how to use two MQTT addresses in the gateway-bridge, one for a localhost and a remote server.

Hi Ned,

If you have a quick ‘how to’ doc that explains the steps I would be very interested - or if you can give some general guidance. I am trying to do the exact same thing. I presume there are some configuration files that need to be configured in the gateway to point it to the DO Droplet, and maybe also some public keys that need to be generated/exchanged?

If I can get it to work I’d be happy to write it up into a document/howto/whatever for chirpstack to host so that it would help others - with accreditation of course.

Many thanks

Mark

Hi Mark,

I’m working on a more detailed guide and hope to post that to the UserGuide directory in my GitHub repo: https://github.com/nedhorning/TerrapinTracker later today but the basic steps I followed are:

On the DigitalOcean Droplet change the firewall to allow connections to port 8883
sudo ufw allow 8883

In the RPi gateway configuration file point to your DigitalOcean MQTT server:
[integration.mqtt.auth.generic]
server=“tcp://206.117.190.51:1883”

Then restart: sudo systemctl restart chirpstack-gateway-bridge on the RPi

In the application server configuration file on DigitalOcean change:
[application_server.integration]
marshaler=“json”

Then restart: sudo systemctl restart chirpstack-application-server

Although ChirpStack will work without adding MQTT security for more information about securing Mosquitto on DigitalOcean I found this helpful: https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-the-mosquitto-mqtt-messaging-broker-on-ubuntu-18-04

1 Like

Hi there - thanks very much for taking the time to reply - much appreciated! I’ll have a go at this at the weekend. I think I will probably re-create my DO droplet from scratch to ensure that I’m starting fresh.

And I’ll keep an eye on your repo!

Thanks again

Mark