Skip to content

Instantly share code, notes, and snippets.

@kessler
Last active January 17, 2017 14:52
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kessler/7448337 to your computer and use it in GitHub Desktop.
Save kessler/7448337 to your computer and use it in GitHub Desktop.
install riemann
sudo yum install -y make
echo 'sleeping for 2 seconds now...'
sleep 2
sudo yum install -y git
echo 'sleeping for 2 seconds now...'
sleep 2
sudo yum install -y gcc-c++
echo 'sleeping for 2 seconds now...'
sleep 2
# should install ruby and other dependencies as well
sudo yum install ruby19-devel.x86_64
echo 'sleeping for 2 seconds now...'
sleep 2
sudo yum install rubygems.noarch
echo 'sleeping for 5 seconds now...'
sleep 2
# this will not work if epel repo is not enabled
sudo yum install daemonize
echo 'sleeping for 5 seconds now...'
sleep 2
wget https://gist.github.com/kessler/7449381/raw/db10681c651c08e0c968983d139c0deaa1fd8d0f/install-java
chmod +x install-java
./install-java
wget http://aphyr.com/riemann/riemann-0.2.2.tar.bz2
tar xvfj riemann-0.2.2.tar.bz2
echo '******** creating start script'
cat <<EOM > start
#!/bin/bash
daemonize -c /home/ec2-user/riemann-0.2.2/ -p /home/ec2-user/daemon.pid -v -o /home/ec2-user/logs/r.log -e /home/ec2-user/logs/r.error.log /home/ec2-user/riemann-0.2.2/bin/riemann /home/ec2-user/config/riemann.config
sleep 5
sudo daemonize -u root -p /home/ec2-user/dash.pid -v -o /home/ec2-user/logs/dash.log -e /home/ec2-user/logs/dash.error.log /usr/local/bin/riemann-dash /home/ec2-user/config/dashboard-config.rb
daemonize -p /home/ec2-user/health.pid -v -o /home/ec2-user/logs/health.log -e /home/ec2-user/logs/health.error.log /usr/local/bin/riemann-health
EOM
chmod +x start
echo '******** creating a very aggresive stop script'
cat <<EOM > stop
#!/bin/bash
sudo killall -9 /usr/bin/ruby
sudo killall -9 java
EOM
chmod +x stop
echo '******** creating restart script'
cat <<EOM > restart
#!/bin/bash
~/./stop
~/./start
EOM
sudo gem install riemann-client
sleep 5
sudo gem install riemann-tools
sleep 5
sudo gem install riemann-dash
sudo mkdir /home/ec2-user/config/
sudo cp /home/ec2-user/riemann-0.2.2/etc/riemann.config /home/ec2-user/config/
cat <<EOM >/home/ec2-user/config/dashboard-config.rb
# Serve HTTP traffic on this port
set :port, 4567
set :bind, "0.0.0.0" # Bind to a different interface
# Specify a custom path to your workspace config.json
config.store[:ws_config] = "/home/ec2-user/config/config.json"
EOM
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment