Hi Michael, Thanks very much for your hard work on this, your puppet scripts have been very helpful. We are having a specific issue with supervision of zookeeper and I wonder if you have encountered something similar or if we are doing something wrong. Even with the stopasgroup=true supervisord option, there still seems to be a problem with orphaned child processes when the parent process (zookeeper-server script) goes down from an external event. Although running "supervisorctl stop zookeeper" will take down the zookeeper-server script and its child processes, issuing a "killall zookeeper-server" will take down only the script, leaving the child processes running. This sends supervisord into an infinite loop of attempting to restart zookeeper, but failing because the child processes are still alive and occupying the required ports.
A fix we've found (refer to the last answer here http://stackoverflow.com/questions/9090683/supervisord-stopping-child-processesis) is to put trap "kill -- -$$" EXIT at the top of the zookeeper-server script. However, it seems like the stopasgroup=true setting was designed to handle this case. I know that stopasgroup was part of the 3.0b2 (05.28.2013) release of supervisord. We are using the 3.0 (07.30.2013) release from your RPM https://github.com/miguno/wirbelsturm-rpm-supervisord so I believe it should be available. Thanks, Marc On Mon, Mar 17, 2014 at 09:02:11PM +0100, Michael G. Noll wrote: > Hi everyone, > > I have released a tool called Wirbelsturm > (https://github.com/miguno/wirbelsturm) that allows you to perform local > and remote deployments of Storm. It's also a small way of saying a big > "thank you" to the Storm community. > > Wirbelsturm uses Vagrant for creating and managing machines, and Puppet > for provisioning the machines once they're up and running. You can also > use Ansible to interact with deployed machines. Deploying Storm is but > one example, of course -- you can deploy other software with Wirbelsturm > as well (e.g. Graphite, Kafka, Redis, ZooKeeper). > > I also wrote a quick intro and behind-the-scenes blog post at [1], which > covers, for instance, the motivation behind building Wirbelsturm and > lessons learned along the way (read: mistakes made :-P). > > Enjoy! > Michael > > > [1] > http://www.michael-noll.com/blog/2014/03/17/wirbelsturm-one-click-deploy-storm-kafka-clusters-with-vagrant-puppet/ > >
