Project

Profile

Help

Story #3707

closed

As a user, I can run multiple resource_managers for high availability

Added by bmbouter over 6 years ago. Updated almost 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

With the switch to RQ, the resource_manager became not-highly available. If you run two of them, bad things will happen.

We should make the resource_manager highly available again. there are two implementation options:

1. Use TaskLock again

Before the RQ transition we were using TaskLock: https://github.com/pulp/pulp/blob/968766e975c2eca00169470b8a028ec28c2a9274/pulpcore/pulpcore/app/models/task.py#L250-L280

This would be a PostgreSQL based table that only serves to elect a single master by one person writing the unique lock record.

2. Built something Redis based

This would be more something to contribute upstream to RQ.

3. Find something that we can wrap around the resource manager to provide a singleton function.

Also available in: Atom PDF