Skip to content

sustainableis/storm-cookbook

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Storm Chef Cookbook

This cookbook has been forked from hmalphettes/storm-project-cookbook and a first pass of modifications have been made to support any Storm version (0.9.1-incubating by default), added recipe for a single node cluster deployment, a recipe for a UI node and added/cleaned some options. I am using this cookbook with Chef Solo and Vagrant. Lots of modifications are still required to put this cookbook in better shape.

This cookbook will install the following:

  • Zookeeper, current Ubuntu package
  • Storm 0.9.1-incubating by default but configurable

Requirement

  • Ubuntu Linux
  • Java 1.7 need to be installed. I suggest this Java cookbook

Recipes

  • storm::singlenode
  • storm::nimbus
  • storm::supervisor
  • storm::ui
  • storm::drpc

The storm::singlenode recipe installs nimbus, supervisor, drpc and ui on the same node.

Default options

default[:storm][:version] = "0.9.1-incubating"

default[:storm][:deploy][:user] = ::File.exists?("/home/vagrant") ? "vagrant" : "ubuntu"
default[:storm][:deploy][:group] = ::File.exists?("/home/vagrant") ? "vagrant" : "ubuntu"

default[:storm][:nimbus][:host] = "192.168.42.10"
default[:storm][:supervisor][:hosts] = [ "192.168.42.20" ]

default[:storm][:nimbus][:childopts] = "-Xmx512m -Djava.net.preferIPv4Stack=true"

default[:storm][:supervisor][:childopts] = "-Xmx512m -Djava.net.preferIPv4Stack=true"
default[:storm][:supervisor][:workerports] = (6700..6706).to_a
default[:storm][:worker][:childopts] = "-Xmx512m -Djava.net.preferIPv4Stack=true"

default[:storm][:ui][:childopts] = "-Xmx512m -Djava.net.preferIPv4Stack=true"

Example Vagranfile

Complete Vagrantfile

chef.add_recipe "java"
chef.add_recipe "storm::singlenode"

chef.json = {
  :java => {
    :oracle => {
      "accept_oracle_download_terms" => true
    },
    :install_flavor => "openjdk",
    :jdk_version => "7",
  },

  :storm => {
    :deploy => {
      :user => "storm",
      :group => "storm",
    },
    :nimbus => {
      :host => "localhost",
      :childopts => "-Xmx128m",
    },
    :supervisor => {
      :hosts =>  ["localhost"],
      :childopts => "-Xmx128m",
    },
    :worker => {
      :childopts => "-Xmx128m",
    },
    :ui => {
      :childopts => "-Xmx128m",
    },
  },
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published