Actions
Task #3076
closedDelete pulp_celerybeat
Start date:
Due date:
% Done:
100%
Estimated time:
Platform Release:
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
Sprint:
Sprint 28
Quarter:
Description
Pulp celerybeat can be removed from the Pulp3 architecture entirely if we can transition its two remaining software responsibilities to the workers themselves. Specifically:
- Celerybeat looks to find missing workers and call "mark_worker_offline()". That call effectively cancels any reserved tasks assigned to the worker and removes the worker's records from the database.
- Check that at least one resource_manager process is running and that at least one worker process is running and log loudly as necessary if they aren't.
These responsibilities should move to the worker heartbeat code here All workers should effectively run this cleanup whenever they see it needs to be done, this makes a shared responsibility to across all workers.
The scheduler.py should be deleted along with any orphaned code that was exclusively used by scheduler.py.
This will require a few other updates too:
- searching and updating the documentation to remove celerybeat references
- updating the devel environment to not deal with celerybeat or its units
- updating the galaxy playbooks to not deal with celerybeat or its units.
Also there are two correctness points to verify to ensure that any old records won't cause correctness problems:
- Verify the status API filters out records older than 30 seconds
- Verify the resource manager filters out workers who haven't checked in within 30 seconds
Actions
Removing celerybeat code
fixes #3076 https://pulp.plan.io/issues/3076