This is a chef cookbook for apache storm
storm-cluster: Chef Supermarket
Chef: 11.18.0+ java
When you run this cookbook on debian platform, you should run also apt::default recipe before storm recipes.
| Key | Type | Description | Default |
|---|---|---|---|
| ['storm']['package'] | String | Storm package name for constructing storm cluster | apache-storm-0.10.0-SNAPSHOT |
| ['storm']['version'] | String | Storm version | 0.10.0-SNAPSHOT |
| ['storm']['install_dir'] | String | Storm package install directory | /usr/share/storm |
| ['storm']['install_method'] | String | Set to remote_file to download from storm.apache.org | cookbook_file |
All storm.yaml options are supported through the node['storm']['storm_yaml'] not object. See the attributes/storm_yaml.rb for more details.
At a minimum you will need create a role/environment/wrapper with the following options:
"storm": {
"storm_yaml": {
"nimbus.host": "nimbus.example.com",
"storm.zookeeper.servers": [
"zookeeper1.example.com"
]
}
}
First you have to add your storm package under files/default as tar.gz format in default install_method.
$ cp <your storm package> cookbooks/storm-cluster/files/default/
If you change install_method to remote_file, the package will be downloaded automatically.
e.g.
Just include storm in your node's run_list:
For nimbus node
{
"name":"nimbus_host",
"run_list": [
"storm::nimbus"
]
}For supervisor node
{
"name":"supervisor_host",
"run_list": [
"storm::supervisor"
]
}For DRPC server
{
"name": "drpc_host",
"run_list": [
"storm::drpc"
]
}- Fork the repository on Github
- Create a named feature branch (like
add_component_x) - Write your change
- Write tests for your change (if applicable)
- Run the tests, ensuring they all pass
- Submit a Pull Request using Github
Authors:
This cookbook is distributed under MIT License