Skip to content

Unicorn LB not aware of node status without service restart #44

@g-vdn

Description

@g-vdn

Hi,

First I want to say thanks for this great piece(s) of software!

Here is my set-up: PMS, Unicorn LB and Transcoder running on rpi4, and I have set-up a VM on my desktop for when I need help on transcodes, with Unicorn Transcoder and PMS running on it. On both machines there is systemd service running for unicorn transcoder and only on rpi4 systemd service for load balancer.
I managed to install all pieces of software correctly (or at least I think I did), as all works fine. When the max number of transcodes is reached on VM transcoder, the next one goes on pi. The problem is when the VM goes down for any reason, LB doesn't know it, unless a restart is issued, and will keep redirecting to the offline node. After restart, it will see that it has only 1 node. Same vice-versa, if LB knows about 1 node, when 2nd one is online, without a restart it wont see it.

Here is the part of config files I think it's relevant to the issue:

rpi4 Unicorn LB config:

timeout: env.int('CUSTOM_SCORES_TIMEOUT', 10)
list: env.array('CUSTOM_SERVERS_LIST', 'string', ['https://transcoder-2.domain.com/','https://transcoder-1.domain.com/'])

rpi4 Unicorn Transcoder config:

transcoder_decay_time: env.int ('TRANSCODER_DECAY_TIME', 120),
loadbalancer_address: env.string('LOADBALANCER_ADDRESS', 'https://plex.domain.com'),
ping_frequency: env.int ('PING_FREQUENCY', 10),
instance_address: env.string('INSTANCE_ADDRESS', 'https://transcoder-1.domain.com'),
maxSessions: env.int('MAX_SESSIONS', 0),

VM Unicorn Transcoder config:

transcoder_decay_time: env.int ('TRANSCODER_DECAY_TIME', 120),
loadbalancer_address: env.string('LOADBALANCER_ADDRESS', 'https://plex.domain.com'),
ping_frequency: env.int ('PING_FREQUENCY', 10),
instance_address: env.string('INSTANCE_ADDRESS', 'https://transcoder-2.domain.com'),
maxSessions: env.int('MAX_SESSIONS', 2),

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions