To expound, this article does a great job of explaining the difference between tasks, executors, and workers: http://www.michael-noll.com/blog/2012/10/16/understanding-the-parallelism-of-a-storm-topology/. Also, 20 worker slots seems like a lot for each supervisor. Each worker runs its own JVM, and can contain multiple tasks and executors. For your example, I would reduce workers per supervisor to the default for now (4), and set number of workers in the topology to 3. The scheduler might not split the workers across all the machines, but typically if nothing else is running it would. Then in each worker you would see 3 instances of your bolt.
On Fri, Nov 7, 2014 at 9:32 AM, Nathan Leung <[email protected]> wrote: > If your topology is only configured to use one worker then everything > would go on one process on one machine. > On Nov 7, 2014 8:43 AM, "An Tran" <[email protected]> wrote: > >> Hello all, >> >> I have currently have a small Storm cluster (3 nodes) each can accept 20 >> slots. >> I have 5 topologies submitted to storm cluster currently and have set >> parallelism_hits & num tasks on each bolt. >> >> What I am finding out is that it looks like all of my bolts in the 5 >> topologies are running on a single machine. Ideally if i se the number of >> tasks/parallisum to 9 i like to see 3 instance of the bolts on each >> machine. Is this possible? >> >
