Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Job scheduling / remote execution pt. 1: Node to Node (Local/Remote) Coordination #604

Open
10 tasks
zeeshanlakhani opened this issue Mar 7, 2024 · 0 comments
Assignees
Labels
dx Developer experience applications and improvements execution Workflow / task execution features / functionality networking Features, functionality involving networking workflows Related to IPVM workflows

Comments

@zeeshanlakhani
Copy link
Contributor

Summary

We want Homestar to be able to schedule workflows locally or on remote nodes that it is connected with.

Components

  • Distributed Scheduling Policy
    • Random
    • Local->run right away (as it is today)
    • Round-Robin (enhancement)
  • Background process for picking up pending workflow, gathering ahead-of-time (static) info, and determining who should run it based on the Distributed Scheduling Policy
    • If the job is being run remotely (i.e. the node that accepted the workflow is acting as the coordinator), determine a peer from connected peers and start a request-response for handing off the workflow and its static information
    • The remote, chosen node can then store that info locally, and pick up the pending workflow on its next tick to run it
  • Add DB fields to workflow stored/info around coordinator vs runner and who (peer id) is running and/or coordinating
  • Handle ConnectionClosed even from the coordinator's perspective
  • Notifications around how a job is scheduled and if it's complete from the coordinator's perspective
@zeeshanlakhani zeeshanlakhani added workflows Related to IPVM workflows networking Features, functionality involving networking execution Workflow / task execution features / functionality dx Developer experience applications and improvements labels Mar 7, 2024
@zeeshanlakhani zeeshanlakhani self-assigned this Mar 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dx Developer experience applications and improvements execution Workflow / task execution features / functionality networking Features, functionality involving networking workflows Related to IPVM workflows
Projects
None yet
Development

No branches or pull requests

1 participant