news 2026/4/23 9:54:04

运维效率翻倍!服务器监控告警 + 内网穿透,异地管理超省心

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
运维效率翻倍!服务器监控告警 + 内网穿透,异地管理超省心

Prometheus、node_exporter、Alertmanager 是一套互补的服务器监控告警工具:Prometheus 作为核心可实时抓取 CPU、内存、磁盘等服务器指标,支持自定义告警规则;node_exporter 轻量部署在服务器上,负责采集硬件状态数据并提供给 Prometheus;Alertmanager 接收 Prometheus 的异常信号,可按优先级通过邮件等方式推送告警,还能管理告警频率。

从使用者角度来说,这套工具的优点特别贴合实际需求:完全开源免费,不用承担商业监控工具的费用;配置门槛不高,哪怕是非专业运维人员,跟着教程也能快速搭建;告警规则可灵活调整,比如设置 CPU 使用率超 80% 持续 1 分钟触发告警,能精准捕捉服务器异常,避免无效告警干扰,也不会漏掉关键问题。

原本这套监控系统只能在局域网内使用,比如个人管理家用服务器,出门后根本没法查看状态,小团队运维时,异地成员也没法参与服务器异常处理;而用 cpolar 解决局域网限制后,使用体验完全不同:出门在外用手机打开 cpolar 分配的公网地址,就能实时查看服务器数据,服务器出异常收到邮件告警后,不用赶回公司 / 家,在外面就能远程排查;小团队里,哪怕成员在家休假,也能通过公网地址及时处理硬盘快满、内存泄漏等问题,还能共享监控面板给团队所有人,谁看到谁处理,运维响应速度和协作效率都大幅提升。

1+1+1+1>4,这就是软件之间组合的魅力。方法如下,请笑纳😊

1.在Centos7上安装Alertmanager

在安装alertmanager前需要安装node_exporter和prometheus,没有安装的小伙伴可以参考这篇文章!

prometheus:监控不再局域网!Cpolar 让 Prometheus 走出内网限制! - cpolar 极点云官网

node_exporter:无需公网IP:利用node_exporter和cpolar实现服务器状态的远程监控

接下来跟我进入监控告警的世界吧!

去官网下载安装文件:https://prometheus.io/download/

找到linux版,下载:

下载完成后记住下载路径。

创建alertmanager的目录:

mkdir-p /app/alertmanager

进入到这个目录:

cd/app/alertmanager

手动上传下载好的alertmanager文件。

上传成功后解压:

tar-vxzf alertmanager-0.28.1.linux-amd64.tar.gz

改名方便记忆:

mvalertmanager-0.28.1.linux-amd64 alertmanager

将Altermanager配置为系统服务:

cd/usr/lib/systemd/system
vimalertmanager.service
[Unit]Description=https://prometheus.io[Service]Restart=on-failureExecStart=/app/alertmanager/alertmanager --config.file=/app/alertmanager/alertmanager.yml[Install]WantedBy=multi-user.target

加载system文件,启动alertmanager这个服务,并设置开机启动:

systemctl daemon-reload systemctl start alertmanager.service systemctlenablealertmanager.service

也可以后台手动启动:

nohup./alertmanager --config.file=alertmanager.yml>>/app/alertmanager/alertmanager/alertmanager.out2>&1&catalertmanager.out

启动成功后,访问Altermanager,ip+9093,默认端口为 9093。

假如,我们想用手机或者平板,随时随地可以查看告警消息,我们应该怎么做呢?接下来cpolar就派上用场啦!

2.安装cpolar实现随时随地开发

cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。

❤️以下是安装cpolar步骤:

官网在此:https://www.cpolar.com

使用一键脚本安装命令:

sudocurlhttps://get.cpolar.sh|sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudosystemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://192.168.42.101:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

3.配置公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:alertmanager,注意不要与已有的隧道名称重复

  • 协议:http

  • 本地地址:9093

  • 域名类型:随机域名

  • 地区:选择China Top

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。

访问成功。

4.在prometheus上配置alertmanager

进入prometheus的配置文件,加入alertmanager告警规则:

vi/app/prometheus/prometheus.yml

加入以下内容后:Prometheus可以通过这个公网地址4246d47e.r2.cpolar.top(刚才用cpolar打通的公网地址,也可以用localhost:9093)访问到运行在本地9093端口的Alertmanager服务,从而抓取系统指标。

- targets:["4246d47e.r2.cpolar.top"]labels: app:"alertmanager"

这一步配置的作用是:告诉 Prometheus,当监控规则触发告警时,应该把告警信息发送到哪个 Alertmanager 服务进行处理(便于一会监控node_exporter,也可以监控mysqld_exporter等等)。

alerting: alertmanagers: - static_configs: - targets:["4246d47e.r2.cpolar.top"]

重新启动prometheus:

systemctl restart prometheus

抓取成功!

5.利用alertmanager来配置node_exporter告警

在第四章节,我们已经成功配置告警信息发送到alertmanager,接下来我们来验证一下,是否可以成功发送!

我们这里举例,倘若node_exporter关闭则发送告警。

node_exporter还可以监控主机的 CPU 使用率,内存使用量,文件系统用量等等。

我们先改写prometheus的配置文件,改以下内容:

vi/app/prometheus/promethues.yml

进入到prometheus配置目录下,写一个配置文件1.yml:

vi/app/prometheus/1.yml
groups: - name: node-alerts rules:# 实例宕机- alert: node_exporter实例宕机 expr: up{job="node_exporter",instance="localhost:9100"}==0for: 15s labels: severity: critical annotations: summary:"实例 {{$labels.instance }} 已停止运行超过 15 秒!"description:"作业 {{$labels.job }} 的实例 {{$labels.instance }} 无法抓取。"- name: prometheus rules:# 实例宕机- alert: 实例宕机 expr: up{job="prometheus"}==0for: 15s labels: severity: critical annotations: summary:"实例 {{$labels.instance }} 已停止运行超过 15 秒!"description:"作业 {{$labels.job }} 的实例 {{$labels.instance }} 无法抓取。"

重启prometheus:

systemctl restart prometheus

打开prometheus网页,发现加入成功。

接下来,我们验证一下,关闭node_exporter,会不会告警:

systemctl stop node_exporter

再次打开prometheus网页,告警成功:

打开alertmanager网页,我们发现那两条告警也显示成功。

这样我们就成功配置prometheus告警啦!

6.使用Alertmanager发送服务器告警至QQ邮箱

QQ 邮箱默认不允许外部应用直接使用密码登录SMTP服务器,因此你需要获取一个授权码

  • 登录QQ 邮箱,进入设置->账户
  • 找到SMTP/IMAP/POP3/Exchange 服务,开启SMTP 服务
  • 开启后,会提示你获取一个授权码

接下来,我们进入alertmanager安装目录,修改alertmanager配置文件alertmanager.yml:

vi/app/alertmanager/alertmanager/alertmanager.yml

添加以下内容来配置告警规则:

global: resolve_timeout: 5m smtp_from:'你的QQ邮箱'smtp_smarthost:'smtp.qq.com:465'smtp_auth_username:'你的QQ邮箱'smtp_auth_password:'你的QQ邮箱授权码'smtp_require_tls:falsesmtp_hello:'qq.com'route: group_by:['alertname']group_wait: 5s group_interval: 5s repeat_interval: 5m receiver:'email'receivers: - name:'email'email_configs: - to:'你的QQ邮箱'send_resolved:true

这样有告警消息就可以发送到QQ邮箱啦!

我们来验证一下,配置有没有问题:

./alertmanager --config.file=alertmanager.yml --log.level=debug

手动运行测试,没报错即正确!

重启alertmanager:

systemctl restart alertmanager systemctl status alertmanager

登录邮箱查看,node_exporter挂机是否发邮件:

接收到邮件,说明我们配置正确!

这样我们就可以随时随地查看告警信息了!

7.保留固定公网地址

使用cpolar为其配置二级子域名,该地址为固定地址,不会随机变化。

点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我这里演示使用的是alertmanager,大家可以自定义。填写备注信息,点击保留。

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道alertmanager,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问本地部署的alertmanager页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

有了cpolar我们可以在任意一台服务器,使用此alertmanager监控,你的同事=也可以一键监控!是不是特别方便呢~

结尾

一套免费的监控告警工具,搭配内网穿透打破地域限制,让服务器管理从 “被动应对” 变成 “主动掌控”,无论是个人还是小团队,都能以低成本实现高效的服务器运维。

感谢您对本篇文章的喜爱,有任何问题欢迎留言交流。cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 13:16:35

一文看懂伦敦金震荡缘由:美元地缘与获利盘三重影响

2026 年 2 月以来,伦敦金市场始终深陷震荡格局,截至 2 月 9 日,伦敦金现最新报价 5010.52 美元 / 盎司,日内微跌 0.49%,近期价格在 4968-5044 美元 / 盎司的区间内反复拉锯,既无单边上涨的动力,…

作者头像 李华
网站建设 2026/4/21 17:09:17

【收藏】SpringAI+Qwen3-8B+BGE构建本地知识库,代码已开源,可直接复用

本文详细介绍了使用SpringAIQwen3-8Bbge-large-zh-v1.5Milvus构建本地知识库系统的完整流程,包括环境准备、模型配置、依赖设置、数据加载和聊天接口实现。作者提供了完整的配置文件和Java代码,基于三国演义数据集实现了一个向量检索增强的知识问答系统&…

作者头像 李华
网站建设 2026/4/15 23:16:11

代购一个域名需要多少钱?

不少用户在购买心仪域名时,发现域名已被注册,或者挂在国外平台上,这时就会产生一个常见问题:代购一个域名需要多少钱?实际上,域名代购的费用并不是一个固定数字,而是由域名价格、代购服务费、交…

作者头像 李华
网站建设 2026/4/20 3:35:10

【Git】全面认识Git lfs

【Git】全面认识Git lfs 文章目录 【Git】全面认识Git lfs01 什么是git lfs?02 Git vs Git lfs2.1 git 场景2.2 git lfs 场景 03 Git lfs实操3.1 下载和安装Git lfs3.1.1 下载3.1.2 安装3.1.3 验证安装是否成功 3.2 配置Git Lfs 04 总结 我们经常在使用 hugging face上模型和…

作者头像 李华
网站建设 2026/4/18 4:45:55

【AAAI2026】阿里云人工智能平台PAI视频编辑算法论文入选

近期,阿里云人工智能平台 PAI 的视频编辑算法论文在 AAAI2026 上正式亮相发表(Zero-to-Hero: Empowering Video Appearance Transfer with Zero-Shot Initialization and Holistic Restoration)。AAAI 是人工智能领域最具影响力的国际顶级会议…

作者头像 李华