#!/bin/bash if [ "$(uname -s)" != "Linux" ]; then echo "This script is not designed for $(uname -s)!" exit 1 fi if [ "$(uname -m)" != "x86_64" ]; then echo "This script can't install binaries for $(uname -m)!" exit 1 fi SCRIPT="`pwd`/$0" SCRIPT_PATH="`dirname $SCRIPT`" SCRIPT_FILES="$SCRIPT_PATH/files" NODE_EXPORTER="node_exporter-0.14.0.linux-amd64" if [ -e "/usr/bin/systemctl" ]; then EXPORTER_OPTS="--collectors.enabled=bonding,cpu,diskstats,edac,filefd,filesystem,loadavg,meminfo,netdev,netstat,sockstat,stat,tcpstat,time,vmstat,systemd" else EXPORTER_OPTS="--collectors.enabled=bonding,cpu,diskstats,edac,filefd,filesystem,loadavg,meminfo,netdev,netstat,sockstat,stat,tcpstat,time,vmstat" fi # cp -r $NODE_EXPORTER /opt/ # # ln -sf /opt/$NODE_EXPORTER /opt/node_exporter # mkdir $SCRIPT_PATH/tmp # install -o root -g wheel -m 0775 --backup=t -d /opt/$NODE_EXPORTER install -o root -g wheel -m 0770 --backup=t $NODE_EXPORTER/node_exporter /opt/$NODE_EXPORTER ln -sf /opt/$NODE_EXPORTER /opt/node_exporter if [ -e "/usr/bin/systemctl" ]; then mkdir -p $SCRIPT_PATH/tmp sed 's|##PROG##|/final/path/to/node_expoter|g' < $SCRIPT_FILES/systemd.service | \ sed "s|##OPTS##|$EXPORTER_OPTS|g" > $SCRIPT_PATH/tmp/node_exporter.service install -o root -m 644 $SCRIPT_PATH/tmp/node_exporter.service /usr/lib/systemd/system systemctl daemon-reload systemctl enable node_exporter systemctl start node_exporter else mkdir -p $SCRIPT_PATH/tmp sed 's|##PROG##|/final/path/to/node_expoter|g' < $SCRIPT_FILES/initd | \ sed "s|##OPTS##|$EXPORTER_OPTS|g" > $SCRIPT_PATH/tmp/node_exporter install -o root -m 755 $SCRIPT_PATH/tmp/node_exporter /etc/init.d chkconfig --add node_exporter fi