Prometheus 主机监控管理模板
systemd 管理node_exporter
https://prometheus.io/download/#node_exporter
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
~]# tar -xf node_exporter-1.7.0.linux-amd64.tar.gz
node_exporter-1.7.0.linux-amd64 node_exporter-1.7.0.linux-amd64.tar.gz
~]# cd node_exporter-1.7.0.linux-amd64
node_exporter-1.7.0.linux-amd64]# mv node_exporter /usr/bin/
cat > /usr/lib/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node_exporter
After=syslog.target
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/node_exporter
Restart=always
RestartSec=10
StartLimitInterval=100
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable node_exporter
systemctl start node_exporter
ss -lntup | grep 9100
tcp LISTEN 0 1024 [::]:9100 [::]:* users:(("node_exporter",pid=22493,fd=3))
tidb的监控启动参数,收集了oom的指标
node_exporter --web.listen-address=:9100 --collector.tcpstat --collector.mountstats --collector.meminfo_numa --collector.buddyinfo --collector.vmstat.fields=^.* --log.level=info
docker 启动systemd
docker run -d --name node_exporter --restart=always --net="host" --pid="host" -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" prom/node-exporter --path.procfs=/host/proc --path.rootfs=/rootfs --path.sysfs=/host/sys --collector.filesystem.ignored-mount-points='^/(sys|proc|dev|host|etc)($$|/)'
mysql 监控
docker run -d --name mysqld_exporter -p 9104:9104 --restart always --network host -e DATA_SOURCE_NAME='exporter:2Pn284jV@(127.0.0.1:3306)/' prom/mysqld-exporter:v0.14.0 --collect.info_schema.processlist
systemd mysqld_expoter
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz
cat /etc/mysqld_exporter.conf
[client]
user = exporter
password = 2Pn284jV
cat /usr/lib/systemd/system/mysqld_exporter.service
[Unit]
Description=node_exporter
After=syslog.target
After=network.target
[Service]
Type=simple
Environment="DATA_SOURCE_NAME=exporter:2Pn284jV@(127.0.0.1:3306)/"
ExecStart=/usr/bin/mysqld_exporter --collect.info_schema.processlist --config.my-cnf=/etc/mysqld_exporter.conf
Restart=always
RestartSec=10
StartLimitInterval=100
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start mysqld_exporter
systemctl enable mysqld_exporter
自动安装的脚本
#!/bin/bash
wget "https://operator-file.obs.cn-south-1.myhuaweicloud.com/applications/node_exporter-1.8.2.linux-amd64.tar.gz" -O /opt/node_exporter-1.8.2.linux-amd64.tar.gz
tar -xf /opt/node_exporter-1.8.2.linux-amd64.tar.gz -C /opt/
mv /opt/node_exporter-1.8.2.linux-amd64/node_exporter /usr/bin/
cat > /usr/lib/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node_exporter
After=syslog.target
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/node_exporter --web.listen-address=:9100 --collector.tcpstat --collector.mountstats --collector.meminfo_numa --collector.buddyinfo --collector.vmstat.fields=^.* --log.level=info
Restart=always
RestartSec=10
StartLimitInterval=100
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start node_exporter
systemctl enable node_exporter
bash -x install-node_exporter-with-systemd.sh
systemctl status node_exporter
标签:
工作实践分享
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通