A Cautionary Tale: Splitting a Large Plex Library Across Multiple Servers

:warning: A Cautionary Tale: Splitting a Large Plex Library Across Multiple Servers

Hey everyone,

Just wanted to share my recent journey with Plex in case it helps others avoid some unexpected pitfalls.

It all started when my main Plex server — which housed a massive library of movies and TV shows — began to slow down significantly. Search queries were taking ages to return results, and navigating the interface felt increasingly sluggish. I tried cleaning the library regularly, removing stale metadata and unused entries, but the performance issues persisted.

So I decided to take a more structural approach: I spun up several VM-based Plex servers, each dedicated to managing a specific portion of the original library (e.g. one for movies, one for TV shows, etc.). The idea was to retire the bloated main server and distribute the load across smaller, more responsive instances.

Everything seemed promising until I enabled remote access on one of the new Plex VMs. Suddenly, the original server — still active for testing — became inaccessible remotely. That’s when I learned the hard truth: Plex.tv only allows one server per public IP to be registered for remote access. Activating remote access on a second server effectively overrides the first.

To work around this, I configured each server behind its own reverse proxy address using HAProxy and DDNS. This allowed me (and technically others) to access each server externally via browser — for example, https://plex-main.ddns.net or https://plex-tv.ddns.net. That worked well on laptops and desktops, but not on native Plex apps. Since mobile and smart TV apps rely on Plex.tv’s centralized routing, users can’t manually input proxy URLs. So despite having multiple servers online and reachable, only one is visible to guests using native apps.

In hindsight, splitting the library helped with performance, but introduced a major limitation in accessibility. If you’re considering a similar setup, be aware that only one Plex server can be exposed via Plex.tv remote access per public IP, and native apps won’t let users choose alternate servers manually.

So here’s my question to the Plex team and community:
:backhand_index_pointing_right: Is there any plan to support multiple servers under a single account, allowing an account owner to share more than one server with guests?
It would be a game-changer for those of us managing large, segmented libraries.

Thanks for reading. Hope this helps someone out there before they go down the same rabbit hole.

JP

Not true.

There is no issue with operating several servers behind the same public gateway interface,
as long as:

  • every server has its own, individual public port number. Which means you need separate port forwarding rules for each server.
  • every server has its own, individual server ID. Which means if you create a second server as a “clone” of an existing server, by copying all its plex data folder and particularly its Preferences.xml file, you need to remove the server ID from it previous to starting it up for the first time.
1 Like

Hey Otto,

Each VMs were started as fresh VMs. And each plex instance had unique ID (i can see it in the address bar when connecting them) or even due to the fact i had to claim them as new server and went through the setup in adding the relevant library folder for each of them.

As for the port, this is where i may have messed this up. Ie the orignal server is on vlan1 and is using 32400. But all the VM based servers are on a different VLAN and all using a different port in increment. i.e 32401, 402 etc etc. That change was made on the web gui setting for remote access and NAT was set up on OPNsense for each of them. Still the minute i activated any of the VMs for remote access, my friend immediately lose access to the original server and can only see the content of the new VM.

May give it another go this weekend.

I don’t exactly know what you mean with that. Are you saying that you copied no data whatsoever from the original server to the new instances?

I am not talking about port numbers on your private LAN. Only about which port number you are assigning to each server when activating remote access.

Correct.

We are talking about the same thing. And since each instance are using a different port to listen to, i also had to use NAT on OPNsense on the firewall side of things.

Did you add the appropriate address to the custom access url in each server setting?

i completely missed this, completely forgot that setting was even available.

  1. Does putting each respective proxy address in this setting for each VM will fix the issue?

  2. Do i still need to enable remote access with unique port on each Plex server?

TOP MAN! That did exactly what it was supposed to do. I disabled remote access from the menu, in each server i put their respective proxy address and ran a test on a dummy account with my cellular phone. Works like a charm. I can even delete all the port configs in OPNsense since they are no longer needed.

If you do not enter the custom server URL, then each server will independently determine their external IP. And if you do not specify a port, ALL of them report the same external IP and port combo up to Plex for remote access.

If you leave them to UPnP, each server will get a different external port number. Unless the UPnP implementation of the router is buggy.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.