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

enhance scheduling to act more predictably #158

Open
erikdw opened this issue Jul 18, 2016 · 0 comments
Open

enhance scheduling to act more predictably #158

erikdw opened this issue Jul 18, 2016 · 0 comments

Comments

@erikdw
Copy link
Collaborator

erikdw commented Jul 18, 2016

We should have an option to force scheduling onto the number of workers requested (Config: "topology.workers"). That will prevent various pathological scenarios where we cannot prevent topologies from becoming unbalanced with respect to the storm executors per storm worker process.

For example, say you have requested 10 workers and you have 50 executors, thus desiring 5 executors per worker. When you first submit let's assume 10 workers are able to be launched. Then later 2 workers die. During the subsequent attempt to relaunch those 2 workers, let's say the Nimbus only gets enough resources to schedule 1 replacement worker. That would cause 10 executors to be put onto the 9th worker, making it unbalanced as compared to the other 8 workers that have 5 executors. Under that scenario, the only ways to fix the balancing require manual intervention:

  1. running a "rebalance" through the Storm nimbus
  2. killing that one worker with 10 executors, and hoping we have enough resources now to schedule onto 2 workers
  3. killing & restarting the topology
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant