[Rspamd-Users] Unable to See Neighbours using a Load Balancer

Kendall Marino kendall at beehiiv.com
Mon Oct 27 14:56:54 UTC 2025


Hello Alexander,

Thank you for your response! I chased this down a bit but in my current
implementation I wouldn't be able to expose individual instances to the
browser. I'm thinking that instead of this, one solution would be to write
a custom plugin that performs the same functionality from within the subnet
and exposes it as an endpoint that the browser can query instead of
/neighbours -> /stats. I'm curious whether anyone has thoughts on this
solution (or a better one) or has done something similar.

Thank you again,
Kendall,

On Sat, Oct 25, 2025 at 2:43 AM Alexander Moisseev via Users <
users at lists.rspamd.com> wrote:

> On 25.10.2025 0:37, Kendall Marino via Users wrote:
> > Each separate instance runs both rspamd and nginx, and I am able to query
> > the /neighbours endpoint on one instance successfully from another.
> > However, external traffic to each instance is directed solely by a load
> > balancer so when the browser attempts to query the /stat endpoint for
> each
> > neighbour it fails and the UI displays the errors below repeatedly.
> >
> > "Cannot get server status"
> > "request failed"
> >
> > These two instances are set up identically. The documentation doesn't
> seem
> > to note a way for the instances to interact directly; what is the
> solution
> > to resolve this setup with a load balancer so the instances are visible
> to
> > each other?
> >
>
> Hi Kendall,
>
> There’s no way to make the Rspamd UI aggregate stats purely through the
> load balancer, since it’s the browser that queries each backend.
>
> The WebUI retrieves statistics for each neighbour directly from the
> browser, not via the backend. This means the browser must be able to reach
> each neighbour’s /stat endpoint at the address configured under neighbours
> { ... }.
>
> In your setup, the load balancer hides the real backend addresses, so the
> browser’s requests to those neighbour URLs fail. The /neighbours endpoint
> works from the command line because Rspamd itself can reach the internal
> addresses, but the browser cannot.
>
> To fix this, you need to expose each instance directly to the browser —
> ensure the neighbour hostnames or IPs in your options.inc are reachable
> from the client viewing the WebUI (for example, by using DNS names that
> resolve to each instance instead of the load balancer).
>
> Best,
> Alexander
> --
> Users mailing list
> Users at lists.rspamd.com
> https://lists.rspamd.com/mailman/listinfo/users
>


More information about the Users mailing list