Forked from dale-c-anderson/install_node_exporter.centos6.sh
Created
October 21, 2022 15:56
-
-
Save meoww-bot/60cc1cefb75bc97fa105f788d9707b06 to your computer and use it in GitHub Desktop.
Revisions
-
dale-c-anderson created this gist
Oct 3, 2018 .There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,125 @@ #!/bin/bash # Install Prometheus Node Exporter on CentOS 6. set -eu set -o pipefail set -x REPOFILE='/etc/yum.repos.d/coprs.ibotty.prometheus-exporters.repo' INSTALLED=0 if test -f "$REPOFILE"; then INSTALLED=1 service node_exporter stop || true fi if [[ $INSTALLED -eq 0 ]]; then curl -sS https://copr.fedorainfracloud.org/coprs/ibotty/prometheus-exporters/repo/epel-6/ibotty-prometheus-exporters-epel-6.repo > $REPOFILE # this will create the node_exporter user / group yum install node_exporter iptables -I INPUT -p tcp --dport 9100 -j ACCEPT service iptables save fi touch /var/log/node_exporter.log chmod 640 /var/log/node_exporter.log chown node_exporter:adm /var/log/node_exporter.log # Adjust permissions slightly from what the repo provided. chown root:node_exporter /var/lib/node_exporter/textfile_collector/ chmod 2771 /var/lib/node_exporter/textfile_collector/ cat << 'EOF' > /etc/logrotate.d/node_exporter /var/log/node_exporter.log { weekly missingok notifempty compress delaycompress create 640 node_exporter adm } EOF cat << 'EOF' > /etc/init.d/node_exporter #!/bin/bash # # node_exporter Export statistics to be consumed by a remote Prometheus server # # chkconfig: 345 70 30 # description: Prometheus node exporter # processname: node_exporter ### BEGIN INIT INFO # Provides: # Required-Start: # Required-Stop: # Default-Start: 3 4 5 # Default-Stop: 0 1 2 6 ### END INIT INFO # # # Prometheus node exporter # /etc/init.d/node_exporter # # # Source function library. . /etc/init.d/functions PROGNAME=node_exporter PROG=/usr/sbin/$PROGNAME USER=node_exporter LOGFILE=/var/log/node_exporter.log LOCKFILE=/var/run/$PROGNAME.pid start() { echo -n "Starting $PROGNAME: " cd /var/lib/node_exporter/textfile_collector/ daemon --user $USER --pidfile="$LOCKFILE" "$PROG &>$LOGFILE &" echo $(pidofproc $PROGNAME) >$LOCKFILE echo } stop() { echo -n "Shutting down $PROGNAME: " killproc $PROGNAME rm -f $LOCKFILE echo } case "$1" in start) start ;; stop) stop ;; status) status $PROGNAME ;; restart) stop start ;; reload) echo "Sending SIGHUP to $PROGNAME" kill -SIGHUP $(pidofproc $PROGNAME)#!/bin/bash ;; *) echo "Usage: service node_exporter {start|stop|status|reload|restart}" exit 1 ;; esac EOF chmod 755 /etc/init.d/node_exporter if [[ $INSTALLED -eq 0 ]]; then chkconfig node_exporter --add fi service node_exporter start