CentOS/Redhat安装node_exporter

本文详细介绍了在CentOS和Redhat系统上安装Node Exporter的过程,包括下载、解压、配置systemd服务文件及初始化服务,适用于不同版本的CentOS,如CentOS 6和CentOS 7。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CentOS/Redhat安装node_exporter

注:CentOS/Redhat 5要使用node_exporter 0.13版本,用0.16.0版本会报kernel太老,其它步骤同CentOS 6

node_exporter下载网址:

https://prometheus.io/download/

node_exporter-0.16.0.linux-amd64.tar.gz

我这边以/home示例,请根据实际情况具体调整

CentOS 7:

tar zxfv node_exporter-0.16.0.linux-amd64.tar.gz -C /home/

mv /home/node_exporter-0.16.0.linux-amd64 /home/node_exporter

vi /etc/systemd/system/node_exporter.service

[Unit]
Description=Prometheus Node Exporter
After=network.target

[Service]
ExecStart=/home/node_exporter/node_exporter
User=nobody

[Install]
WantedBy=multi-user.target

:wq

systemctl start node_exporter

systemctl enable node_exporter

CentOS 6:

tar zxfv node_exporter-0.16.0.linux-amd64.tar.gz -C /home/

mv /home/node_exporter-0.16.0.linux-amd64 /home/node_exporter

yum install daemonize (如果没搭建本地yum,可自行下载适配的rpm包手动安装)

useradd prometheus -s /sbin/nologin

mkdir /var/log/prometheus

mkdir /var/run/prometheus

chown prometheus:prometheus /var/log/prometheus -R

chown prometheus:prometheus /var/run/prometheus -R

vi /etc/init.d/node_exporter

#!/bin/bash
#

Comments to support chkconfig
chkconfig: 2345 98 02
description: prometheus service script
#

Source function library.
. /etc/init.d/functions

Default variables
prog_name="prometheus"
config_file="/space/${prog_name}/${prog_name}.yml"
prog_path="/space/${prog_name}/${prog_name}"
data_path="/space/${prog_name}/data"
pidfile="/var/run/${prog_name}.pid"
prog_logs="/var/log/${prog_name}.log"
options="--web.listen-address=10.29.60.62:9090 --config.file=${config_file} --web.enable-lifecycle --storage.tsdb.path=${data_path}"
DESC="Prometheus Server"

Check if requirements are met
[ -x "${prog_path}" ] || exit 1

RETVAL=0

start(){
action $"Starting $DESC..." su -s /bin/sh -c "nohup $prog_path $options >> $prog_logs 2>&1 &" 2> /dev/null
RETVAL=$?
PID=$(pidof ${prog_path})
[ ! -z "${PID}" ] && echo ${PID} > ${pidfile}
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog_name
return $RETVAL
}

stop(){
echo -n $"Shutting down $prog_name: "
killproc -p ${pidfile}
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog_name
return $RETVAL
}

restart() {
stop
start
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
status $prog_path
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
RETVAL=1
esac

:wq

chmod +x /etc/init.d/node_exporter

vi /etc/sysconfig/node_exporter

ARGS=""
:wq

/etc/init.d/node_exporter start

ps -ef | grep node_exporter

chkconfig --level 35 node_exporter on

转载于:https://blog.51cto.com/yangzhiming/2315709

<think>好的,用户之前问过如何安装node_exporter,现在他们遇到了下载问题。用户提供的链接下载不了,我需要帮他们解决这个问题。首先,可能的原因有很多,比如网络问题、链接失效、权限问题或者系统架构不匹配。 先考虑网络连接问题。用户可能在某些地区访问GitHub速度慢或被限制,比如中国大陆的用户。这时候需要建议他们使用代理或镜像站。常见的镜像站有ghproxy.com,可以加速下载。另外,使用curl或wget的参数如--proxy可能有效,但用户可能不太熟悉代理设置,所以推荐镜像更简单。 然后是链接是否正确。用户用的是v1.7.0,可能这个版本已经被删除或移到旧版本里。需要让用户去GitHub Releases页面确认最新版本,或者尝试其他版本。比如,如果最新版是v1.8.0,用户需要更新链接中的版本号。还可能用户复制链接时有拼写错误,需要检查URL是否正确。 系统架构是否匹配也很重要。用户可能下载的是linux-amd64,但他们的系统是arm或其他架构。这时候需要确认系统架构,并推荐对应的包,比如linux-arm64。可以使用uname -m命令来检查架构,并调整下载链接。 另外,用户可能没有安装wget,或者权限不足无法写入目标目录。这时候可以建议他们使用curl -LO替代,或者检查目录权限,使用sudo。如果用户遇到证书问题,可能需要加上--no-check-certificate参数,不过这个不太安全,需谨慎。 还可以建议用户使用包管理器安装,比如apt或yum,可能更方便。或者使用docker方式,避免下载问题。如果用户已经尝试过所有方法,可能需要手动下载,比如用其他设备下载后传输过来。 最后,确认下载后的步骤,比如解压、安装、配置服务,确保用户完成所有步骤后能正确运行node_exporter。同时提醒用户检查防火墙设置,确保端口9100开放,以及正确集成到Prometheus中。 总结下来,需要分步骤给出多种可能的解决方案,从网络问题到版本、架构问题,再到替代下载方式,确保用户能找到适合自己的解决方法。同时保持回答结构清晰,易于跟随,避免使用复杂术语,让新手也能理解。</think>如果无法通过 `wget` 直接下载 `node_exporter` 的二进制文件,可能是由于网络限制、版本过时或链接失效。以下是几种解决方法: --- ### **1. 检查网络问题** - **确认网络连接** 尝试访问其他网站(如 `curl google.com`),确保网络畅通。 ```bash ping github.com ``` - **使用代理** 如果处于受限网络(如企业内网),可通过代理下载: ```bash # 使用代理参数(需替换为实际代理地址) wget -e use_proxy=yes -e http_proxy=your_proxy:port https://github.com/.../node_exporter-1.7.0.linux-amd64.tar.gz ``` - **中国大陆用户加速下载** 使用 GitHub 镜像站(如 `ghproxy.com`): ```bash # 在原链接前添加镜像代理 wget https://ghproxy.com/https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz ``` --- ### **2. 确认链接有效性** - **检查版本是否存在** 访问 [GitHub Releases](https://github.com/prometheus/node_exporter/releases),确认 `v1.7.0` 是否仍为有效版本。 - 如果版本已过时,替换链接中的版本号为最新版本(如 `v1.8.0`)。 - **直接下载最新版本** 使用 `curl` 直接获取最新版本: ```bash # 自动获取最新版本号并下载 LATEST_VERSION=$(curl -s https://api.github.com/repos/prometheus/node_exporter/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")') wget https://github.com/prometheus/node_exporter/releases/download/${LATEST_VERSION}/node_exporter-${LATEST_VERSION}.linux-amd64.tar.gz ``` --- ### **3. 手动下载并传输** 如果服务器无法直连 GitHub,可尝试: 1. 在本地浏览器访问 [GitHub Releases](https://github.com/prometheus/node_exporter/releases) 下载文件。 2. 通过 `scp` 或 `rsync` 将文件上传到服务器: ```bash scp node_exporter-1.7.0.linux-amd64.tar.gz user@your_server_ip:/tmp/ ``` --- ### **4. 使用替代工具** - **用 `curl` 替代 `wget`** ```bash curl -LO https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz ``` - **忽略 SSL 证书验证(临时应急)** ```bash wget --no-check-certificate https://github.com/.../node_exporter-1.7.0.linux-amd64.tar.gz ``` --- ### **5. 检查系统架构** - **确认是否下载了正确的架构包** 通过 `uname -m` 查看系统架构: - `x86_64` → 使用 `linux-amd64` - `aarch64` → 使用 `linux-arm64` 如果架构不匹配,需调整下载链接中的文件名。 --- ### **6. 通过包管理器安装** 如果二进制文件下载失败,可直接通过系统包管理器安装(无需手动下载): - **Debian/Ubuntu** ```bash sudo apt-get update sudo apt-get install prometheus-node-exporter ``` - **RHEL/CentOS** ```bash sudo yum install epel-release sudo yum install prometheus-node_exporter ``` --- ### **7. 使用 Docker 运行** 如果所有下载方式均失败,直接通过 Docker 启动: ```bash docker run -d \ --name node_exporter \ --net="host" \ --pid="host" \ -v "/:/host:ro,rslave" \ quay.io/prometheus/node-exporter:latest \ --path.rootfs=/host ``` --- ### **验证下载文件** 下载完成后,检查文件完整性: ```bash # 查看文件是否完整 tar -tf node_exporter-1.7.0.linux-amd64.tar.gz # 解压并测试运行 tar xvf node_exporter-*.tar.gz cd node_exporter-*/ ./node_exporter --version ``` --- 通过以上方法,应能解决下载问题。如果仍失败,请检查防火墙规则或联系网络管理员。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值