centos6及redhat5.8安装部署node_exporter

本文详细介绍了在CentOS 6和Redhat 5.8上安装部署node_exporter的步骤,包括解决daemonize问题,根据系统位数选择合适的node_exporter安装包,设置node_exporter开机自启动,并提供了解决CentOS中'chkconfig'服务不支持的问题。完成安装后,可以通过http://IP:9100/metrics进行访问和监控。

注意事项

安装包

安装包

daemonize的问题

若出现以下报错,则安装daemonize后重试,注意安装符合OS系统的rpm包

Starting node_exporter: ./node_exporter: line 34: daemonize: command not found

node_exporter的问题

使用getconf LONG_BIT查看系统版本,32位的系统使用node_exporter-1.0.1.linux-386.tar.gz这个32位的安装包

redhat5设置自启动

redhat5无法识别下文的脚本内容,需要改成如下内容:

vim /etc/init.d/node_exporter
#!/bin/bash
# chkconfig: 2345 80 80
# description: Start and Stop node_exporter
# Source function library.

安装node_exporter

node_exporter下载

mkdir -p /home/monitoring
wget https://github.com/prometheus/node_exporter/releases/download/v1.0.1/node_exporter-1.0.1.linux-amd64.tar.gz

tar解压node_exporter

cd /home/monitoring
tar -zxvf node_exporter-1.0.1.linux-amd64.tar.gz
mv node_exporter-1.0.1.linux-amd64 node_exporter
#修改权限  
chmod 777 node_exporter/node_exporter

设置开机自启动

编辑自启动脚本
vim /etc/init.d/node_exporter
#!/bin/bash
#	/etc/rc.d/init.d/node_exporter
# chkconfig: 2345 80 80
#
# config: /etc/prometheus/node_exporter.conf
# pidfile: /var/run/prometheus/node_exporter.pid
 
# Source function library.
. /etc/init.d/functions
 
 
RETVAL=0
PROG="node_exporter"
DAEMON_SYSCONFIG=/etc/sysconfig/${PROG}
DAEMON=/usr/bin/${PROG} #要把安装目录下/opt/node_exporter/node_exporter可执行文件拷贝到/usr/bin目录下
PID_FILE=/var/run/prometheus/${PROG}.pid
LOCK_FILE=/var/lock/subsys/${PROG}
LOG_FILE=/var/log/prometheus/node_exporter.log
DAEMON_USER="prometheus"
FQDN=$(hostname)
GOMAXPROCS=$(grep -c ^processor /proc/cpuinfo)
 
. ${DAEMON_SYSCONFIG}
 
start() {
  if check_status > /dev/null; then
    echo "node_exporter is already running"
    exit 0
  fi
 
  echo -n $"Starting node_exporter: "
  daemonize -u ${DAEMON_USER} -p ${PID_FILE} -l ${LOCK_FILE} -a -e ${LOG_FILE} -o ${LOG_FILE} ${DAEMON} ${ARGS}
  RETVAL=$?
  echo ""
  return $RETVAL
}
 
stop() {
    echo -n $"Stopping node_exporter: "
    killproc -p ${PID_FILE} -d 10 ${DAEMON}
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && rm -f ${LOCK_FILE} ${PID_FILE}
    return $RETVAL
}
 
check_status() {
    status -p ${PID_FILE} ${DAEMON}
    RETVAL=$?
    return $RETVAL
}
 
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
	check_status
        ;;
    reload|force-reload)
        reload
        ;;
    restart)
        stop
        start
        ;;
    *)
        N=/etc/init.d/${NAME}
        echo "Usage: $N {start|stop|status|restart|force-reload}" >&2
        RETVAL=2
        ;;
esac
 
exit ${RETVAL}
编辑etc/sysconfig/node_exporter
vim /etc/sysconfig/node_exporter  
##添加如下内容
ARGS=""
创建启动脚本中对应文件和目录
##开机脚本赋权
chmod 777 /etc/init.d/node_exporter  
##拷贝可执行文件到/usr/bin/
cp /home/monitoring/node_exporter/node_exporter /usr/bin/node_exporter  
## 添加用户组 
groupadd -r prometheus
## 创建目录
mkdir -p /usr/hostonnet/prometheus/
useradd -r -g prometheus -s /sbin/nologin -d /usr/hostonnet/prometheus/ -c "prometheus Daemons" prometheus
## 家目录修改属主
chown -R prometheus:prometheus /usr/hostonnet/prometheus/
## 创建运行目录
mkdir -p /var/run/prometheus/
chmod 777 /var/run/prometheus/
## 创建pid文件,并赋权
touch /var/run/prometheus/node_exporter.pid
chmod 777 /var/run/prometheus/node_exporter.pid 
## 创建日志目录,并创建日志文件,赋权,修改属主
mkdir -p /var/log/prometheus/
touch /var/log/prometheus/node_exporter.log
chmod 777 /var/log/prometheus
chmod 777 /var/log/prometheus/node_exporter.log
chown prometheus:prometheus /var/log/prometheus/node_exporter.log

安装daemonize

#centos6.5版本
rpm -ivh daemonize-1.7.7-1.el7.x86_64.rpm
#redhat5版本
rpm -ivh daemonize-1.6.0-1.el6.rf.i686.rpm

运行node_exporter

cd /etc/init.d/ && ./node_exporter start
#设置开机自启动
chkconfig node_exporter on  

查看运行状态

ps -ef|grep node_exporter
ss -ntlp|grep 9100

访问

curl http://IP:9100/metrics或浏览器直接访问http://IP:9100/metrics

参考文档

官方node_exporter下载

CentOS/Redhat安装node_exporter

Prometheus之node_exporter安装和设置开机启动服务–centos6.5

daemonize下载

官方daemonize下载

CentOS使用chkconfig增加开机服务提示service xxx does not support chkconfig的问题解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值