一键搭建Prometheus+node_exporter+grafana监控脚本

概要

为了方便更好的安装prometheus监控体系,创建了一个一键搭建监控的脚本,但实际需要跟现场环境进行匹配,修改。

脚本使用方法:

1.修改你需要下载的版本号

2.创建一个目录名为/prometheus的目录

3.如需修改为其他目录,需修改脚本文件,以及*.service的目录路径

代码如下:

#!bin/bash
#定义prometheus版本号
PROMETHEUS_VERSION="2.25.0" #选择要下载的版本
NODE_EXPORTER_VERSION="1.1.2"
GRAFANA_VERSION="7.4.3"
#下载链接
DOWNlOAD_PROMETHEUS_URL="https://github.com/prometheus/prometheus/releases/download/v${PROMETHEUS_VERSION}/prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz"

wget ${DOWNlOAD_PROMETHEUS_URL}

#判断是否下载成功
if [ $? -ne 0]; then
    echo "Failed to download Prometheus"
    exit 1
fi
#解压prometheus到指定路径 此处在/prometheus/

PROMETHEUS_DIR="/prometheus"
mkdir ${PROMETHEUS_DIR}
tar -xf prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz -C ${PROMETHEUS_DIR}


mv ${PROMETHEUS_DIR}/prometheus-${PROMETHEUS_VERSION}.linux-amd64 ${PROMETHEUS_DIR}/prometheus

cat >> /usr/lib/systemd/system/prometheus.service <<EOF
[Unit]
Description=Prometheus Node Exporter
After=network.target
 
[Service]
ExecStart=/prometheus/prometheus/prometheus --config.file=/prometheus/prometheus/prometheus.yml --web.read-timeout=5m  --web.max-connections=10 --storage.tsdb.retention=15d --storage.tsdb.path=/prometheus/prometheus/data --query.max-concurrency=20 --query.timeout=2m
User=root

[Install]
WantedBy=multi-user.target

EOF

systemctl daemon-reload
systemctl restart prometheus

# 检查服务是否成功启动  
if ! systemctl is-active --quiet prometheus; then  
    echo "Failed to start prometheus service"  
    exit 1  
fi  
systemctl enable prometheus

echo "prometheus has been installed and started successfully."

#下载node_exporter
DOWNlOAD_NODE_EXPORTER_URL="https://github.com/prometheus/node_exporter/releases/download/v${NODE_EXPORTER_VERSION}/node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64.tar.gz"
wget ${DOWNlOAD_NODE_EXPORTER_URL}

# 检查下载是否成功  
if [ $? -ne 0 ]; then  
    echo "Failed to download node_exporter"  
    exit 1  
fi  
  
tar xf "node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64.tar.gz" -C ${PROMETHEUS_DIR} 
  
# 重命名解压后的目录  
mv ${PROMETHEUS_DIR}/node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64/ ${PROMETHEUS_DIR}/node_exporter  
  
# 创建systemd服务文件  
cat > /usr/lib/systemd/system/node_exporter.service <<EOF  
[Unit]  
Description=Prometheus Node Exporter  
  
[Service]  
Restart=on-failure  
ExecStart=/prometheus/node_exporter/node_exporter --web.listen-address=:9100
  
[Install]  
WantedBy=multi-user.target  
EOF
  
# 重新加载systemd以识别新服务  
systemctl daemon-reload  
  
# 启动node_exporter服务  
systemctl restart node_exporter  
# 检查服务是否成功启动  
if ! systemctl is-active --quiet node_exporter; then  
    echo "Failed to start node_exporter service"  
    exit 1  
fi  

# 设置node_exporter服务开机自启  
systemctl enable node_exporter  
  
echo "node_exporter has been installed and started successfully."

#下载grafana

DOWNlOAD_GRAFANA_URL="wget https://dl.grafana.com/enterprise/release/grafana-enterprise-${GRAFANA_VERSION}.linux-amd64.tar.gz"
wget ${DOWNlOAD_GRAFANA_URL}

# 检查下载是否成功  
if [ $? -ne 0 ]; then  
    echo "Failed to download grafana"  
    exit 1  
fi  
  

tar xf "grafana-enterprise-${GRAFANA_VERSION}.linux-amd64.tar.gz" -C ${PROMETHEUS_DIR} 
  
# 重命名解压后的目录  
mv ${PROMETHEUS_DIR}/granafa-${GRAFANA_VERSION}/ ${PROMETHEUS_DIR}/granafa  
  
# 创建systemd服务文件  
cat > /usr/lib/systemd/system/grafana.service <<EOF  
[Unit]
Description=Grafana
After=network.target

[Service]
ExecStart=/prometheus/grafana/bin/grafana-server -homepath=/prometheus/grafana

[Install]
WantedBy=multi-user.target  

EOF  
  
# 重新加载systemd以识别新服务  
systemctl daemon-reload  
  
# 启动node_exporter服务  
systemctl restart grafana  
# 检查服务是否成功启动  
if ! systemctl is-active --quiet grafana; then  
    echo "Failed to start grafana service"  
    exit 1  
fi  

# 设置node_exporter服务开机自启  
systemctl enable grafana  
  
echo "grafana has been installed and started successfully."

总结:

使用前修改脚本的一些配置,比如说路径、版本号等等 ,更好的去使用该脚本,可能存在修改需要,评论区可以进行讨论,学习。 

  • 9
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是prometheus+node_exporter+grafana的详细部署流程: 1. 下载并安装Prometheus 首先,需要从Prometheus的官方网站 https://prometheus.io/download/ 下载最新版本的Prometheus。下载完成后,解压缩并将其放在合适的位置。然后,可以通过以下命令启动Prometheus: ``` ./prometheus --config.file=prometheus.yml ``` 这里的“prometheus.yml”是Prometheus的配置文件,可以根据需要进行修改。 2. 下载并安装Node Exporter Node Exporter是一个用于收集主机指标的代理程序,可以通过以下命令下载最新版本的Node Exporter: ``` wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz ``` 下载完成后,解压缩并将其放在合适的位置。然后,可以通过以下命令启动Node Exporter: ``` ./node_exporter ``` 3. 配置Prometheus监控Node Exporter监控Node Exporter,需要将其添加到Prometheus的配置文件中。打开“prometheus.yml”文件并添加以下内容: ``` scrape_configs: - job_name: 'node_exporter' scrape_interval: 5s static_configs: - targets: ['localhost:9100'] ``` 这里的“targets”是Node Exporter的地址和端口号。如果要监控多个Node Exporter,则可以添加多个目标。 4. 下载并安装Grafana Grafana是一个用于可视化监控数据的开源平台,可以通过以下命令下载最新版本的Grafana: ``` wget https://dl.grafana.com/oss/release/grafana-7.1.5.linux-amd64.tar.gz ``` 下载完成后,解压缩并将其放在合适的位置。然后,可以通过以下命令启动Grafana: ``` ./bin/grafana-server ``` 5. 配置Grafana 要将PrometheusGrafana集成,需要在Grafana中添加一个数据源。打开Grafana并导航到“Configuration”>“Data Sources”>“Add Data Source”: - 在“Name”字段中输入数据源的名称。 - 在“Type”字段中选择“Prometheus”。 - 在“HTTP”字段中输入Prometheus的地址和端口号。 - 单击“Save & Test”以保存数据源并测试连接。 接下来,可以创建一个仪表盘并添加一个面板以显示Prometheus的数据。导航到“Create”>“Dashboard”>“Add Panel”: - 选择要显示的指标。 - 选择要显示的图表类型。 - 单击“Apply”以保存面板。 6. 查看监控数据 现在,可以通过Grafana查看收集到的监控数据。导航到仪表盘,将其刷新以更新数据,并查看面板中的图表。 以上就是prometheus+node_exporter+grafana的详细部署流程。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值