Hi all
I'm trying to understand better a typical Jamulus installation but I didn't find any overview.
I should be interested into a linux architecture.
If I understood well one deployment architecture could be:
one central server (headed or headless) that mix it all up
one client per player
Maybe there esists some docs that already clarify these aspects:
Is this schema correct?
Is it possible to use single board computer in order to implement these modules (e.g. raspberry pi, orange pi, ...)?
why it seems that only windows installation is the preferred one? Is it just a "often use case" or there are known issues on linux?
Is there a step-by-step installation guide?
Obviously, if there's not any kind of info like this I'll go deeper by myself, it's just to avoid reinventing the wheel.
Thank you
Sergio
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Many thanks fo the link and the other replies.
Do you think that orange pi 3 could do the job? It's a 64-bit machine with 2GB RAM.
What about clients? Did you tested it on single boards too?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm running a server with a three client limit on a small NUC that's not got a real-time kernel and it doesn't seem too heavy there (jamulus.drealm.info). It's really only for experimentation but it seems stable.
By the way, in the docs, "central server" can also mean where the client looks for the list of available servers, rather than just any server that does the mixing. If you aren't looking to run your own "central server", you can use the public one and just type in the address of your local server when connecting from a client.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you, maybe I'll start with the public one and then install mine at a second stage.
So central server could be a pointer to the mixing server? It's really a nice idea in terms of scalability and reliability.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
What I mean is that when you run the client and click "Connect", the list of servers that gets shown is taken from the "central server". If you don't tell that server of your server's existence, it won't appear on the list.
Of course, a client can specify a "central server" other than the default, but then it also won't show the same list - only those servers that have used that non-default "central server" to publish their existence.
The client doesn't need to know of a central server to connect to a known mixing server, though. You can specify whatever server address (and port) you want.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm not sure I undertand the section "Configuration of the jamulus.dyndns.org official central server" How does it relate to setting up a dedicated server? In other words, when it says "The official central server at jamulus.dyndns.org is started with the following command line" - why would I want to do this? What does doing this achieve?
Does anyone have a system startup script for Linux so that I can make sure Jamulus comes back up on reboot? If not I can have a go at creating one myself. My server runs Ubuntu 18.04 so it's systemd.
My server will be on the public Internet (obviously). Is there anything I should know about security and Jamulus? I've got the server's UDP port both source and destination open. I assume I can block everything else in and out, is that right (I'm using a proxy for things like system updates and I can add Sourceforge to that)? Also I assume running it as user "jamulus" or some other non-priviledged account is a good idea?
Thanks.
Last edit: Gilgongo 2020-03-19
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
A "central server" organizes the server list you see when you open the Connection Setup. If you setup a pure private server, this is not needed.
I do it in the rc.local but this is no state of the art anymore...
The protocol messages are checked for incorrect values to avoid crashes. Nevertheless, no non-trivial software is free of bugs. So yes, it is a good idea to use a dedicated user.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
1) No. If you look in the Jamulus Settings dialog you can see "Central Server Address:". If you have configured your local server as a central server and your musicians entry the URL of your server in that field, they see a Connection Setup list which is managed by your server. So in theory other private servers could register at your server and that would show up in that list.
3) No roll is implemented. But the traffic in that log file is usually not so high so that even if the server runs for years, the file is not very large.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ah! Ok. Er.., thanks for explaining but I'm still not sure I get this.
Could you help me by giving an example of a use case in which I would want to configure a local server as a central server? Does it benefit the musicians who connect to my server in some way (I assume I have to tell them to use the non-default "Central Server Address:" setting somehow) ?
And conversely, how do I get my private server to show up in the default server list?
I realise you must be very busy answering questions, but if I can get up to speed on this I hope I can help others here.
EDIT: I think I realise what's meant in the docs when it says "Configuration of the jamulus.dyndns.org official central server" It means something like "How to start the server". And that "The official central server at jamulus.dyndns.org is started with the following command line" means "Here is an example of starting a server". At least that's clear now. I was confused becuase there is a section before it talking about starting tyhe server with ./Jamulus -s -n But I'm still confsed about my original quesiton.
3 . OK cool, thanks.
Last edit: Gilgongo 2020-03-19
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
For your purpose it does not make sense to setup your server as a central server. It would not really benefit the musicians.
Regarding the registering of your server at the official central server, please see the following post: https://sourceforge.net/p/llcon/discussion/533517/thread/6ec5dcd6/?limit=25&page=2#38b7
With the "-e" option you specify the server you want to register to.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi all
I'm trying to understand better a typical Jamulus installation but I didn't find any overview.
I should be interested into a linux architecture.
If I understood well one deployment architecture could be:
Maybe there esists some docs that already clarify these aspects:
Obviously, if there's not any kind of info like this I'll go deeper by myself, it's just to avoid reinventing the wheel.
Thank you
Sergio
Many thanks fo the link and the other replies.
Do you think that orange pi 3 could do the job? It's a 64-bit machine with 2GB RAM.
What about clients? Did you tested it on single boards too?
I have not tried it on a Pi 3. Just on a Pi 2. On the Pi 2 the performance was not good.
I'm running a server with a three client limit on a small NUC that's not got a real-time kernel and it doesn't seem too heavy there (jamulus.drealm.info). It's really only for experimentation but it seems stable.
By the way, in the docs, "central server" can also mean where the client looks for the list of available servers, rather than just any server that does the mixing. If you aren't looking to run your own "central server", you can use the public one and just type in the address of your local server when connecting from a client.
Thank you, maybe I'll start with the public one and then install mine at a second stage.
So central server could be a pointer to the mixing server? It's really a nice idea in terms of scalability and reliability.
What I mean is that when you run the client and click "Connect", the list of servers that gets shown is taken from the "central server". If you don't tell that server of your server's existence, it won't appear on the list.
Of course, a client can specify a "central server" other than the default, but then it also won't show the same list - only those servers that have used that non-default "central server" to publish their existence.
The client doesn't need to know of a central server to connect to a known mixing server, though. You can specify whatever server address (and port) you want.
Thank you, now it's more clear
Hi - just discovered Jamulus and it looks amazing! Thanks for all your hard work so far!
I'm looking to set up a headless server on Linux and now have it running OK (and I can connect a client to it). I used http://llcon.sourceforge.net/servermanual.html to get this far.
I have a couple of basic questions though:
I'm not sure I undertand the section "Configuration of the jamulus.dyndns.org official central server" How does it relate to setting up a dedicated server? In other words, when it says "The official central server at jamulus.dyndns.org is started with the following command line" - why would I want to do this? What does doing this achieve?
Does anyone have a system startup script for Linux so that I can make sure Jamulus comes back up on reboot? If not I can have a go at creating one myself. My server runs Ubuntu 18.04 so it's systemd.
My server will be on the public Internet (obviously). Is there anything I should know about security and Jamulus? I've got the server's UDP port both source and destination open. I assume I can block everything else in and out, is that right (I'm using a proxy for things like system updates and I can add Sourceforge to that)? Also I assume running it as user "jamulus" or some other non-priviledged account is a good idea?
Thanks.
Last edit: Gilgongo 2020-03-19
OK so it would publish my private server information to the public list, so that others can see it.
Yes, rc.local is possible with systemd but it's deprecated. I'll see if I can set up systemd service file for it.
EDIT: This seems to work OK (although not if point ExecStart at a script). Also BTW user jamulus has no shell or home dir specified in /etc/passwd.
Last edit: Gilgongo 2020-03-19
1) No. If you look in the Jamulus Settings dialog you can see "Central Server Address:". If you have configured your local server as a central server and your musicians entry the URL of your server in that field, they see a Connection Setup list which is managed by your server. So in theory other private servers could register at your server and that would show up in that list.
3) No roll is implemented. But the traffic in that log file is usually not so high so that even if the server runs for years, the file is not very large.
Could you help me by giving an example of a use case in which I would want to configure a local server as a central server? Does it benefit the musicians who connect to my server in some way (I assume I have to tell them to use the non-default "Central Server Address:" setting somehow) ?
And conversely, how do I get my private server to show up in the default server list?
I realise you must be very busy answering questions, but if I can get up to speed on this I hope I can help others here.
EDIT: I think I realise what's meant in the docs when it says "Configuration of the jamulus.dyndns.org official central server" It means something like "How to start the server". And that "The official central server at jamulus.dyndns.org is started with the following command line" means "Here is an example of starting a server". At least that's clear now. I was confused becuase there is a section before it talking about starting tyhe server with ./Jamulus -s -n But I'm still confsed about my original quesiton.
3 . OK cool, thanks.
Last edit: Gilgongo 2020-03-19
For your purpose it does not make sense to setup your server as a central server. It would not really benefit the musicians.
Regarding the registering of your server at the official central server, please see the following post: https://sourceforge.net/p/llcon/discussion/533517/thread/6ec5dcd6/?limit=25&page=2#38b7
With the "-e" option you specify the server you want to register to.
OK, thanks!