storm #5

Supports: precise
Add to new model


This bundle deploys a Twitter's Storm cluster, the real-time stream processing engine. In addition the Storm Deployer is integrated. The Storm Deployer provides a mechanism for deploying Storm Topology Jar application files on Juju deployed Storm Clusters. Deployed as a subordinate charm, applications may be subsequently upgraded across all of your Juju services/units.


The Storm deployer uses a yaml file to define the deployment tasks. The extension by convention is ".storm". The format of the .storm file is: topology: - name: name of the topology jar: jar of the topology topologyclass: full domain and class of the topology packaging: mvn package [currently no others available] repository: the git url where the topology can be found scriptbeforepackaging: optional script to run before packaging scriptbeforedeploying: optional script to run before deployment datasources: - parameters: - {name: name1, value: value1} - {name: name2, value: value2} type: type, can my mysql/mongo/postgres/redis/kafka/etc. script: script to execute - name: another topology ...

In the configuration section of the Storm Deployer put the URL that points to the .storm configuration file.

Example usage: # Deploy storm either via the GUI or via the command line. juju quickstart bundle:storm

# Deploy Topologies juju set stormdeployer "deploy=http://somedomain/somefile.storm"

The storm deployment is logged in /opt/storm/latest/logs/deploy.log.

The storm deployer also support undeploy. Just put the name of the storm topology that needs to be removed in the undeploy field.

For example: juju set stormdeployer "undeploy=mytopology-1.2"

Known Issues

Storm does not support multiple versions of the same topology with the same name so assure that each time the name of the topology is different. You can use a version number for instance. The deployer will not deploy the topology if it is already deployed.

Bundle configuration

Embed this bundle

Add this card to your website by copying the code below. Learn more.