Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple Master-Server for Relays (Aggregating Mounts) #428

Open
shaksp opened this issue Jul 25, 2023 · 1 comment
Open

Multiple Master-Server for Relays (Aggregating Mounts) #428

shaksp opened this issue Jul 25, 2023 · 1 comment

Comments

@shaksp
Copy link

shaksp commented Jul 25, 2023

HI,

We currently use Icecast 2.4.4 (none-KH) as below:

  • 1x Master Server - Supports approx 150 mounts. Sources connect to this server. Server records mounts, sends notifications to mobile clients of stream start/end etc. and other processing. No clients connect to the Master
  • Multiple Relay Servers - Clients connect to these relay servers and are DNS Load Balanced. These are configured to relay all mounts from the master using the master-server config.

We are working on building a more resilient backend/master server solution and also to accommodate more mounts. Hence we wanted a multiple master setup as follows:

Icecast-2.4.0-KH22 build or similar (we have been testing on KH20 and 22)

  • 2 or 3 Master Servers. Supporting 200+ mounts - same mounts configured on each server however sources are DNS Round Robin Load Balanced (with Healthchecks) across the 2 or 3 master servers.
  • Multiple Relay Servers - each Relay connects to all 2/3 master servers. Clients connect here and are DNS Load Balanced with Healthchecks

To achieve this, we can't use the relay config as this is for individual mounts, we need to relay all streams aggregated from all masters. I understood Icecast-KH could do this however the config doesn't seem to allow to specify multiple master-server entries. Multiple hosts can be specified under relay but this is limited as it's individual.

It is worth noting that the mounts do not stream 24x7 due to the service they provide - most stream for a few minutes to few hours at a time a few times per day. The relays are setting to poll the master regularly (rather than the default 120seconds)

Is it possible to achieve this? There was a pull request on icecast from xiph for this feature as follows but hasn't been implemented. I was really hoping Icecast-KH could do this.
xiph/Icecast-Server#5

@shaksp
Copy link
Author

shaksp commented Jul 27, 2023

@karlheyes I also tried what you suggested here:
#236

Including various variants of it. However, it only supported one master-server (after changing host to server and removing IP)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant