Installs Twitter's Storm distributed computation platform. Includes recipes for installing both the Nimbus / Web UI component and the Supervisor component.
- Ubuntu 12.04
- May function on other distributions, but has not been tested
- java cookbook
- runit cookbook
- apt cookbook
- git cookbook
A lot. Anything that can be specified in Storm's YAML file can be specified as an attribute by using:
storm['yaml'][CONFIGURATION_KEY]
= "VALUE"
Strings are automatically rendered with quotes around them (except "null" which is rendered without quotes). Integers are printed as-is.
storm['cluster_role']
- The role that defines a storm cluster. This is used by nodes in the cluster to find other nodes in the cluster. You can set this to anything you want but it needs to be the same for all nodes in the cluster.storm['zookeeper']['node_search_str']
- The string used (withsearch()
) to find the nodes of your zookeeper cluster, if you're using Apache Zookeeper. The cookbook will automatically append "AND chef_environment:#{node.chef_environment}" so that only nodes in the same environment will be included.
storm['version']
- Which storm version to installstorm['download_url']
- The full download URL from which to grab the tarballstorm['root_dir']
- Base directory of the storm installstorm['log_dir']
- Log directory
At a basic level the only thing you should need to do to get this working is add both the nimbus and supervisor roles to your nodes' run lists and set the needed attributes above.