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的问题解决

CentOS 系统上部署 `node_exporter` 是一种常见的监控方案,适用于采集操作系统和硬件级别的指标。以下是完整的部署步骤: ### 安装 node_exporter 1. **下载 node_exporter** 访问 Prometheus 官方网站下载适用于 Linux 的 `node_exporter` 二进制文件。例如,使用 `curl` 或 `wget` 下载: ```bash wget https://github.com/prometheus/node_exporter/releases/latest/download/node_exporter-latest.linux-amd64.tar.gz ``` 2. **解压文件** 解压下载的压缩包: ```bash tar -xvf node_exporter-latest.linux-amd64.tar.gz ``` 3. **移动 node_exporter 到系统路径** 将 `node_exporter` 移动到 `/usr/local/bin/` 目录,以便全局使用: ```bash sudo mv node_exporter /usr/local/bin/ ``` 4. **验证安装** 检查 `node_exporter` 是否安装成功: ```bash node_exporter --version ``` ### 配置 systemd 服务 1. **创建 systemd 服务文件** 创建一个 systemd 服务文件 `/etc/systemd/system/node_exporter.service`,内容如下: ```ini [Unit] Description=Node Exporter After=network.target [Service] User=root ExecStart=/usr/local/bin/node_exporter [Install] WantedBy=multi-user.target ``` 2. **重新加载 systemd 配置** ```bash sudo systemctl daemon-reload ``` 3. **启动 node_exporter 服务** ```bash sudo systemctl start node_exporter ``` 4. **设置开机启动** ```bash sudo systemctl enable node_exporter ``` 5. **检查服务状态** ```bash sudo systemctl status node_exporter ``` ### 验证 node_exporter 是否运行正常 1. **访问指标端点** 默认情况下,`node_exporter` 监听在 `http://localhost:9100/metrics` 端点上。可以通过以下命令检查指标: ```bash curl http://localhost:9100/metrics ``` 2. **确保防火墙允许访问** 如果启用了防火墙,确保允许 `9100` 端口: ```bash sudo firewall-cmd --permanent --add-port=9100/tcp sudo firewall-cmd --reload ``` ### 配置 Prometheus 采集 node_exporter 数据 1. **编辑 Prometheus 配置文件** 在 Prometheus 的配置文件 `prometheus.yml` 中添加 `node_exporter` 的目标: ```yaml scrape_configs: - job_name: 'node-exporter' static_configs: - targets: ['<centos-node-ip>:9100'] ``` 2. **重启 Prometheus 服务** 应用新的配置后,重启 Prometheus 服务以开始采集数据。 ### 总结 通过上述步骤,可以在 CentOS 系统上成功部署 `node_exporter`,并通过 Prometheus 收集详细的系统级指标。`node_exporter` 是一个轻量级且高效的工具,适用于监控硬件和操作系统级别的性能数据[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值