Created
April 12, 2012 01:43
-
-
Save joemiller/2364144 to your computer and use it in GitHub Desktop.
script to setup a sensu client and server for quick testing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# | |
# The purpose of this script is to setup all the pre-reqs needed to | |
# standup a quick single-node Sensu client + server for use during | |
# testing. | |
# | |
# I don't recommend using this for a production setup, but if you must, | |
# then you should replace the SSL keys and certs with your own. | |
# You can use the script from this repo to help with SSL certs: | |
# https://github.com/joemiller/joemiller.me-intro-to-sensu | |
# run: | |
# ./ssl_certs.sh clean | |
# ./ssl_certs.sh generate | |
# | |
centos_ver=`grep CentOS /etc/redhat-release |perl -p -e 's/^CentOS.+(\d\.\d+).+$/$1/'` | |
## install erlang + rabbitmq | |
if echo $centos_ver | egrep -q '^5'; then | |
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm | |
wget -O /etc/yum.repos.d/epel-erlang.repo http://repos.fedorapeople.org/repos/peter/erlang/epel-erlang.repo | |
fi | |
if echo $centos_ver | egrep -q '^6'; then | |
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm | |
fi | |
yum -y install erlang | |
rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc | |
rpm -Uvh http://www.rabbitmq.com/releases/rabbitmq-server/v2.7.1/rabbitmq-server-2.7.1-1.noarch.rpm | |
mkdir /etc/rabbitmq/ssl | |
cat <<EOF >/etc/rabbitmq/ssl/server_key.pem | |
-----BEGIN RSA PRIVATE KEY----- | |
MIIEpAIBAAKCAQEAkr3kAozTvqtrbwYn1wMKWWHYhL7AedCa3AMKigY+Kyg3n3zf | |
X50HoICT8xTqddNPelB7kGX2Ia8cB9zIvZMXNL6u2fgzYIAeNVicnoyPZiRCgMiD | |
JXQL0/Fjc3yFblbYZIvIDNC5w9Fm+MrUlzw/PPd3OacekWYuJEck7f3tnLhGgBp4 | |
skWlzsPCM3HbzLi7O23TPcKKz1g3L5NISmx6Dh+fZv4cLRTFFiDqLzZemuyfyCYM | |
6jKFYmmbODDxq0Vby9Wt3f1ynnOHQWX3iq+3a+rSrPdhYMSxr9AE1AUeveItHiVa | |
RXn0IDETsLT0INxI8kqh+aQVwd89MuIZ1fdcxwIDAQABAoIBAB1f08fK5wwxBmWI | |
Jut8mVLBKnWQNblsz8Mg/LgafdFn0JKljZV3OrKfan5rfm+tqChE+icyse2WPxc3 | |
1BtW2XtefGP3slkr7GAjZ965Jm987K8Y9F/H9iIsHQteLtuimNivvpEKK1WOkn1V | |
JO9NSR9sLjqlQJI8kRoD/9mATlNjpmdlzwX7e3Tnxkr8mLjZn4Uf/I+lC+4O3WI5 | |
MsfbO5nKJqtartQK9wBO3XYnMVlm+aSTUiZISgGEwDJ7P5Spzvn2B8NnTigiJ6yx | |
RHc3YrGjfxmbnB6RAgErCmHG9iozx0hrxA8jzOS47g6noY7erhzFfSwNHXL9IQKR | |
b72KxWECgYEAw6NbLhazSlYPEMSIH2X4YQ3Aq1Q65rLN07rV4BGSImyniHvNCIme | |
fWxhQGVliq5aFINi+rHQovUmsmgXv2YJpiiysyRAIYiyXLW3wUto2h8kiNDH+qe8 | |
2m3lUwBmQMYQRUcl36Axkd0ZwbHznBMdy15BSdYFdpu4gNXpYJtvaTcCgYEAwARq | |
FiO1dDASRt+qTXoVK8ehJEA3n64J4d0qbhM68hTCwmokDrn3IL9aWkoMAMZCwG7B | |
kvCzNj3oCi0/gCG68h1Zx3lhzl+vkY+zkzhuL6+qi4+FhT0dw1mgAUo30QH82ISI | |
PbnLW+jw+u7ljqSohLshU+TlpEdzK8DQevX9MPECgYBktc41XpgzNzQQNKvCRhLj | |
m1nImNatdfRA/5gj/ceVkwt3VgvJTlbZSBaUON5Z0sEqeCxW03yMttiR1MYM0HE9 | |
KQw87fdZi+4NjbondjNmvctn5tpbbUfpxdLctILu60bq8uJLSULbTM96h6nZeXnH | |
/CBt6w/q6+TB5dx6z+k9ZwKBgQCQZQFt4q56UAf+egW0O4EeKgHYo93wW00dJ1bX | |
7ege0VPgJTc2R8w6OQt16Eb8chsSYHd6yzzJJmaO+JXPAg52MXIpGfNd4QDDAoA0 | |
znO1snEaf/QVTO9LzuMO9UPiDY+ZNpjJaiUt2Y8V9H519QawwZP/ZZr3Ha/TECz2 | |
unMK0QKBgQC6uRF7K7KihDw4kV2UdyEnjGEfhmhDghesg5+ddjlL1sAxp90ormS/ | |
9YOkhgoyzWbSjYjDoq9Db1PnACv3JEfyO02eoOYsVHQ9MZuQd0wjC23i1qxB9a1j | |
WhVf766hCzkhDD8LfA2/OGrfAxJHqfngey87c1MEEq5/o+vxYAGxeA== | |
-----END RSA PRIVATE KEY----- | |
EOF | |
cat <<EOF >/etc/rabbitmq/ssl/server_cert.pem | |
-----BEGIN CERTIFICATE----- | |
MIIC6TCCAdGgAwIBAgIBATANBgkqhkiG9w0BAQUFADARMQ8wDQYDVQQDEwZUZXN0 | |
Q0EwHhcNMTIwNDEyMDAyMTQ3WhcNMTMwNDEyMDAyMTQ3WjAuMRswGQYDVQQDExJi | |
dW5jaHItc2Vuc3UtYnVpbGQxDzANBgNVBAoTBnNlcnZlcjCCASIwDQYJKoZIhvcN | |
AQEBBQADggEPADCCAQoCggEBAJK95AKM076ra28GJ9cDCllh2IS+wHnQmtwDCooG | |
PisoN59831+dB6CAk/MU6nXTT3pQe5Bl9iGvHAfcyL2TFzS+rtn4M2CAHjVYnJ6M | |
j2YkQoDIgyV0C9PxY3N8hW5W2GSLyAzQucPRZvjK1Jc8Pzz3dzmnHpFmLiRHJO39 | |
7Zy4RoAaeLJFpc7DwjNx28y4uztt0z3Cis9YNy+TSEpseg4fn2b+HC0UxRYg6i82 | |
Xprsn8gmDOoyhWJpmzgw8atFW8vVrd39cp5zh0Fl94qvt2vq0qz3YWDEsa/QBNQF | |
Hr3iLR4lWkV59CAxE7C09CDcSPJKofmkFcHfPTLiGdX3XMcCAwEAAaMvMC0wCQYD | |
VR0TBAIwADALBgNVHQ8EBAMCBSAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwDQYJKoZI | |
hvcNAQEFBQADggEBAJAPZ2zaz8sqLLpzUtPVa15IKNKqwnHqAAvBWxvBiIAMLzlD | |
NSaGENPBIXRsC22juPB9i8mn+1KFncA1pKnQj+bdbkqIrV/eGF+5yAJ0ssfFb+h+ | |
3xxgWbgc+nNNCkaI3TR3l1WpQGmPdmTe/FIg3o9YxX1i93qWFlkarVQoJ5eBKdpy | |
sny79qKpbyyWEKksKEn6VWR2suqbl/8XQH58mPm5pdwHbgCkvalMupGtjzQQVynd | |
jRA+JKNLOBP1sGAoZ7Rx7GHfAf45VTMHV4OOcvLsabCElVVLJNjXaRxFUGdxElvY | |
gngO7kmLuHGXLnXz+FxMQs5Hlao1trblbj658Gs= | |
-----END CERTIFICATE----- | |
EOF | |
cat <<EOF >/etc/rabbitmq/ssl/cacert.pem | |
-----BEGIN CERTIFICATE----- | |
MIICxDCCAaygAwIBAgIJAJiGmToM9QYWMA0GCSqGSIb3DQEBBQUAMBExDzANBgNV | |
BAMTBlRlc3RDQTAgFw0xMjA0MTIwMDIxNDdaGA8yMTIxMTAxODAwMjE0N1owETEP | |
MA0GA1UEAxMGVGVzdENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA | |
4ernbgQmJDxaVPMoyi6+sd26u9AFNxy8IYUj864MiPgClhz45sRCh1/3cnR2Tde2 | |
yn36SU6+7NsJhVajDQd9//XVHaryhDTGA6DpKO+eT/g1oyYql/ey0JOak3LWaboy | |
f/EIm8iD7/yqMcozqk6buLRUrH8+m7WOxaKqmJyvUrPL2qtlo7T/EW0o29fEO9kc | |
wxrVzaBVgPePfw2krtr8VzuNpnpGEgKUKoJfl+k6q4uPSTd0B/U0IJI0othNRMiY | |
fye5pDPukHT3X0VcU2u9WoLX8Y836/KKRKxhhWiSvclhIBSRbknRATTH0RnipJjl | |
R0c/nCHPg1KjUxcoI6a8+wIDAQABox0wGzAMBgNVHRMEBTADAQH/MAsGA1UdDwQE | |
AwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAp9Nwr9SPCsxqz7JvJHTXXlq2MW0nsJRk | |
rKb/l0h9yyAjw0vPRpv49L+zzsNfBwQVh/kztsYKyxFnxJeGJQuvmUClRai4yB1v | |
VxwWNKyxXJxnppA00Oc1k1LLzk/VQiVu3gaUe/uXSfk0HDK6u74zoWpNhPEvpnnc | |
K8w67tvntDcmslHMi5yCr6NdDFYQX1XNM9zla39ni915QBMSckb7nyQieSXrDLoE | |
MQ8SIbTT5IitYuvRMsAw+k9v/rd1Qy/UKwasNbU/LsT1JAltDpzsRMSdUuFjRRIj | |
nWBOiDY0dYwUC1iSR1MpsY4Lw0bpoyNyY8iEF5Sghy31tnfjkE2SwA== | |
-----END CERTIFICATE----- | |
EOF | |
cat <<EOF >/etc/rabbitmq/rabbitmq.config | |
[ | |
{rabbit, [ | |
{ssl_listeners, [5671]}, | |
{ssl_options, [{cacertfile,"/etc/rabbitmq/ssl/cacert.pem"}, | |
{certfile,"/etc/rabbitmq/ssl/server_cert.pem"}, | |
{keyfile,"/etc/rabbitmq/ssl/server_key.pem"}, | |
{verify,verify_peer}, | |
{fail_if_no_peer_cert,true}]} | |
]} | |
]. | |
EOF | |
rabbitmq-plugins enable rabbitmq_management | |
/sbin/chkconfig rabbitmq-server on | |
/etc/init.d/rabbitmq-server start | |
/usr/sbin/rabbitmqctl add_vhost /sensu | |
/usr/sbin/rabbitmqctl add_user sensu mypass | |
/usr/sbin/rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*" | |
## install redis ## | |
yum -y install redis | |
/sbin/chkconfig redis on | |
/etc/init.d/redis start | |
## setup a bare minimum config for sensu ## | |
cat <<EOF >/etc/sensu/config.json | |
{ | |
"rabbitmq": { | |
"ssl": { | |
"private_key_file": "/etc/sensu/ssl/client_key.pem", | |
"cert_chain_file": "/etc/sensu/ssl/client_cert.pem" | |
}, | |
"port": 5671, | |
"host": "localhost", | |
"user": "sensu", | |
"password": "mypass", | |
"vhost": "/sensu" | |
}, | |
"redis": { | |
"host": "localhost", | |
"port": 6379 | |
}, | |
"api": { | |
"host": "localhost", | |
"port": 4567 | |
}, | |
"dashboard": { | |
"host": "localhost", | |
"port": 8080, | |
"user": "admin", | |
"password": "secret" | |
} | |
} | |
EOF | |
cat <<EOF >/etc/sensu/conf.d/client.json | |
{ | |
"client": { | |
"name": "`hostname`", | |
"address": "10.0.0.1", | |
"subscriptions": [ "test" ] | |
} | |
} | |
EOF | |
mkdir /etc/sensu/ssl | |
cat <<EOF >/etc/sensu/ssl/client_key.pem | |
-----BEGIN RSA PRIVATE KEY----- | |
MIIEowIBAAKCAQEAs3gQdhBRHRyxcYn36A6cljAY9H8Ms4XcGg9UNYGQ2vF+0eND | |
gYXXMtabuk57uzGrXlMjYIIJNY8gBcF1jKrZPH4iWAThzWMxZUyGKosKwoklUOak | |
UJee7GKGkJGd37nxA4FcbhtQ8Gv5sJMUKx+FVUiyIbolAJ8dxbtE05TGBPHW0qni | |
VKcTcXxI6QUOCVwCC0qDARnnN8FHV8EO+EP5H2X2UmPVOuQmSHKWEyKZ6XAeGXd6 | |
ARKLb868azMwhQJgPm5qKjgMExl+KklNX2CrbdqnWOx5/ByVdVF/s0KJQUh0L7HW | |
9hbB4IYksifVNe1q0bwkH4espks0B9CF8UX5bQIDAQABAoIBAQCSr+nUdhW2U8N8 | |
56Xm2DqITxu2izmYaiqyaiEL8rCxI33ik3yTmw9/kAWMy6U6JajJ2e4qbV6Vljw4 | |
OB2aMfKJDReJFcRxmUfAYkGu+CJ9SpdjfoCDFspgr08JTtvZByPFF7CylkUbnUVi | |
W3S6onLaeCaQhpLD5UnyWdQxk4IeeyTKWOFgQNI/ApI6EPzLjqWB4+anNFYG8zUs | |
vVE6lvtwkI++FC9CZwNncFF8OTX56DJBWctRJBKzTvGHXt0yIaqTcF9Sn2M9nwZW | |
jZzwfDT+RBz+/+IMpTR4tXyctiAT9o7Vv8rsOA2lTCXzav/XPQny3XK86dpmD2UX | |
0gZZRG6BAoGBAOmLLMO8Ky7TIi5l0pN0Wn51HWtJWodhGIQnFvMrwiMOHtgTxBXe | |
9xihtGNks8ZewvFTzpRVGnwR7FTAolUHRT7YFMJ8WYbCLxuM1GL4tokJ/FwvDq4Q | |
u/Go6aArm611hoKhYkhVJHqHFlqFf/X3Wc4VzJAQyEpEtJC634CubfVdAoGBAMS5 | |
zr+tIQKkWcXNw+d/DZwXb5ZP66liLQUkg3brKN4NA8m6II7vFZTZ8rdnxk2Owc0J | |
z2n2t8MYLWocmDIJbeOGDPIr/NSu8ulSfb2IrVa/i9jjg1nUOxlbPsaU7y62ue4O | |
XD9SywX+J+fE3f6kb2s4+v4sEdP0D5LV2WkmFENRAoGAWr3wzry2KqNujIiToSd8 | |
YdYvcBg4TJG1bOOjTyiZbfV2lo5XigfwCmoKJPRjxZfcNthRU+EdQUfVg7i1WkRQ | |
63IZ3tdiEbIxi4rUmv/4LJbsrwS5t3hZDjSLUeifvG4FrYv3HBO48MK8NL/aUD+j | |
bSebK/7ZU8IORo3VebJMlyECgYBpO3+F9uWOlT3UWrJttgAgvESbolrMe9DbTGHq | |
jfaJeWrKUP8zll70BfYY97ETMccnmBTUeP5ppRg+B9e+BF888ysfrDoNxxv3hYHv | |
jhozKjlzpphPyABpGu8kqOydD2+8EQB1eyNRLFhKWXvqyCk1sQBKUGak+4wNHsmy | |
voTeUQKBgHa/DgGFyGzby2OQPhwfAA4nPNKqrndIJx68OcJIvUVoiebfj1NMjJUq | |
gZbNB/pZKwZCQdLn8FBScR7rl11wBGFIcpecbiEN0VpxdV8u/AH/KVP17sG6tduz | |
qMNQ7KRphvelPPb/2GoCv7yvKiPrItsLkvCDHMbgLpxC57ln67V1 | |
-----END RSA PRIVATE KEY----- | |
EOF | |
cat <<EOF >/etc/sensu/ssl/client_cert.pem | |
-----BEGIN CERTIFICATE----- | |
MIIC6TCCAdGgAwIBAgIBAjANBgkqhkiG9w0BAQUFADARMQ8wDQYDVQQDEwZUZXN0 | |
Q0EwHhcNMTIwNDEyMDAyMTQ4WhcNMTMwNDEyMDAyMTQ4WjAuMRswGQYDVQQDExJi | |
dW5jaHItc2Vuc3UtYnVpbGQxDzANBgNVBAoTBmNsaWVudDCCASIwDQYJKoZIhvcN | |
AQEBBQADggEPADCCAQoCggEBALN4EHYQUR0csXGJ9+gOnJYwGPR/DLOF3BoPVDWB | |
kNrxftHjQ4GF1zLWm7pOe7sxq15TI2CCCTWPIAXBdYyq2Tx+IlgE4c1jMWVMhiqL | |
CsKJJVDmpFCXnuxihpCRnd+58QOBXG4bUPBr+bCTFCsfhVVIsiG6JQCfHcW7RNOU | |
xgTx1tKp4lSnE3F8SOkFDglcAgtKgwEZ5zfBR1fBDvhD+R9l9lJj1TrkJkhylhMi | |
melwHhl3egESi2/OvGszMIUCYD5uaio4DBMZfipJTV9gq23ap1jsefwclXVRf7NC | |
iUFIdC+x1vYWweCGJLIn1TXtatG8JB+HrKZLNAfQhfFF+W0CAwEAAaMvMC0wCQYD | |
VR0TBAIwADALBgNVHQ8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZI | |
hvcNAQEFBQADggEBAIAIp8XBHArNgZZNM7PM1wQSZOy+sMMlUYRfDhHXbqp0uuI0 | |
qFHR2KzLSSkQcBZOLLD+ctmyCcZsCKSPsbXyfLLWesDPG7RY+HDqgQKGI+GzvmBo | |
ig/C7lIvykyK3lZhsIZgizKPPHmQfSP+LU2JmdZH37aWfLFXimddWPXrde5Ig+qL | |
mV4l5eoe7BSQiuPEyhjhzxEi0Y3V7ctpl0YSuIbmE7abmP4fJJHHe9vZm0hLNhav | |
/2jm/c58IUootdl1rgGWkosSTjHvl//6YbgObB62mSNaNPafzm/NPKLBRYKRP/2O | |
QRw9RNsasb9Kb3Bslc9haQ9kki7Qrfng7ffBWGg= | |
-----END CERTIFICATE----- | |
EOF | |
## finish ## | |
echo "You should now be able to start sensu:" | |
echo " sudo /etc/init.d/sensu-server start" | |
echo " sudo /etc/init.d/sensu-client start" | |
echo " sudo /etc/init.d/sensu-api start" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment