1 x Loraserver and Many Lora-app-server?

Hello,
I have a (perhaps) stupid question but I can’t find any answer after reading the docs or the forum.

I understand that one Lora-app-server can connect to several Lora-server.

But it seems that it is not possible to have several lora-app-server connecting to one lora-server instance. Am I correct ?

If I want to have separate instances of “Lora-app-server” running (and in my case it could be very useful), I have to create 2 separate “Lora-server” instances ? Am I correct ?

Thanks in advance,

LDioc

1 Like

Do you mean running two (or more) LoRa App Server instances to make your deployment more scalable / highly available? Or do you want LoRa Server to forward part of the devices to LoRa App Server 1 and the other part of the devices to LoRa App Server 2?

Dear Mr. Brocaar,
First of all, thanks for your fantastic work and your continuous improvements of your software !

As you guessed, I want my LoRa Server to forward part of the devices to LoRa App Server 1 and the other part of the devices to LoRa App Server 2.

Is it possible with one instance of LoRa Server or do I have to create a second instance of LoRa Server to serve exclusively the LoRa App Server 2 ?

Sincerely yours,

LDioc

I have not tested this, but try the following:

  • Setup two LoRa App Server instances each connecting to their own database (e.g. loraserver_as_1 and loraserver_as_2
  • Update the lora-app-server.toml configuration so that the id under application_server is a different UUID than in the lora-app-server.toml of your first instance.
  • Potentially update other configuration in the lora-app-server.toml files (e.g. public_host), etc…

@lucdioc Have you been successful? Because I need the same functionality.

However, I can’t test it because I don’t have a complete setup yet with devices that transmit.

Btw, on /internal/uplink/data/data.go in Lora Server repository under getApplicationServerClientForDataUp method there is a logic for getting an application server client from a pool of registered IP addresses before making the gRPC (uplink) call.

I wondering if this part can be those that enables one-to-many communication between Loraserver an Lora-App-Server.

Thanks in advance.

EDIT:
On the documentation of Lora Server, under Routing-profile section, says that one lora-server is able to connect to multiple lora-app-server istance. So at the end it is possible to connect multple lora-app-server to ona lora-server istance I guess.

@brocaar i have similar architecture as @NMont , i have deployed 2 App server (development and production) and 2 network server with same band complying both app server respectively as well 1 mqtt broker assisting both environment . But , i have situation where some of my client would like to use their gateway for their own RnD purpose and serving my product as well . Right now , im putting 1 gateway in both enviroment and let my client use account in dev enviroment for their rnd and their purchased product served in production appserver . Am i advisable to do so because sometimes my product sending JoinAccept and first uplink on the lorawan frames at both appserver but on the production appserver where my device is registered it doesn’t show the device have been activated .

Thanks in advance !