在Windows上部署开源的轻量级自动化运维监控工具Uptime Kuma

[重要通告]如您遇疑难杂症,本站支持知识付费业务,扫右边二维码加博主微信,可节省您宝贵时间哦!

现在大家玩NAS的朋友们越来越多,是否对NAS的稳定性感到焦虑?你是否在需要用的时候,发现你的服务已经停摆许久?要是有个可以随时随地为你提供线上服务的健康状况的工具就好了,这不就有了Uptime Kuma,Uptime Kuma 是一个类似 "Uptime Robot" 的自托管监控工具。

在Windows上部署开源的轻量级自动化运维监控工具Uptime Kuma

一、什么是Uptime Kuma 

Uptime Kuma 是一款开源自托管的轻量级监控工具,拥有简洁美观的界面和丰富的告警方式。
但在实际部署中,发现几乎所有教程都是在写使用Docker部署。本次是记录一下作者提供的第二种部署方式在Windows平台的踩坑历程。
项目地址:https://github.com/louislam/uptime-kuma
体验地址:https://demo.kuma.pet/start-demo (自动生成一个十分钟的临时项目)
特点:Uptime Kuma可以添加的监控项包括HTTP(s)、TCP、HTTP(s)关键词、HTTP(s) JSON查询、Ping、DNS记录、推送、Docker容器运行时间、Steam游戏服务等常见网站运行参数。
支持70多种通知服务,例如阿里云短信,钉钉,企业微信,电子邮件等

二、Uptime Kuma 环境要求

① Windows 10 (x64)、Windows Server 2012 R2 (x64) 或更高版本(作者表示主流Linux也可以)
② Node.js 18 或 20.4及以上
③ NPM 9 (Nodejs自带)
④ GIT (用于git项目到本地,没有也可以,但是影响部署环节)
⑤ PM2 (用于在后台运行)

三、Uptime Kuma 项目部署

① 下载项目到本地
git clone https://github.com/louislam/uptime-kuma.git

② 进入项目目录
cd uptime-kuma

③ 设置npm镜像源 //用于npm加速
npm config set registry https://registry.npmmirror.com/

④ 初始化前端资源 (踩坑点)
npm run setup
等同于 -如果以上命令报错,可以尝试手动执行以下
git checkout 1.23.15 // 切换版本。如果网络不好或者没有git,此条有可能报错,可以暂时忽略
npm ci --production //安装依赖
npm run download-dist //下载前端资源

如果以上步骤无法完成,可以尝试以下命令
//安装依赖 (踩坑点 node版本最好使用推荐的18或者20.4,国内最好设置镜像加速,否则依赖有可能安装失败)
npm install

//重构前端资源 // 似乎可以替代npm run download-dist
npm run build

⑤ 启动项目 -到此项目已经可以尝试启动了
node server/server.js
等同于
npm run start 或 npm run start-server

成功启动以后,访问地址为 http://127.0.0.1:3001

⑥ 后台运行与自启动

// 安装PM2管理器与PM2日志管理器
[mw_shl_code=asm,true]npm install pm2 -g && pm2 install pm2-logrotate

//使用pm2启动项目
pm2 start server/server.js --name uptime-kuma

//停止项目
pm2 stop uptime-kuma

至于自启动,木有搞,直接使用的bat执行pm2 start也可;想实现的,市面上有很多基于pm2的自启动项目,可以自行研究

四、常见的设置项

① 端口 :在server/config.js改 搜3001
② 数据位置:data/kuma.db (使用sqline的情况下)

五、UptimeKuma 的特点包括:

  1. 花哨、反应式的、快速的 UI/UX:Uptime Kuma 提供了一个美观且直观的用户界面,使用户能够轻松配置和管理监控项。
  2. 多种通知方式:支持通过 Telegram、Discord、Gotify、Slack、Pushover、电子邮件 (SMTP) 等多种通知服务发送警报。
  3. 多语言支持:支持超过 50 种语言,方便不同语言的用户使用。
  4. 监控图表信息:提供实时的监控图表,帮助用户更好地理解服务状态。
  5. 证书信息:提供证书信息,帮助用户了解 SSL/TLS 证书的状态。
  6. 代理支持:支持通过代理进行监控,增加监控的灵活性。
  7. 2FA 支持:提供双因素认证,增加账户的安全性。

延伸阅读:Nagios、Zabbix、Prometheus 这三款开源的监控平台大致分析

运维人(很多时候我们也会被大伙亲切的称为背锅侠),基本都了解或者使用过 Nagios、Zabbix、Prometheus 这三款开源的监控平台,三款监控工具都各有各的优缺点,如下表:

监控平台 优点 缺点
Nagios 功能丰富:Nagios支持对网络设备、服务器、应用程序等进行全面监控,并提供丰富的监控指标和报警机制。可扩展性强:Nagios支持自定义监控插件,用户可以根据需要添加或修改监控项,以满足特定的监控需求 配置复杂:Nagios的配置相对复杂,需要一定的技术水平和经验,对于初学者来说可能存在一定的学习成本。界面不友好:Nagios的界面设计相对简单,且界面较为陈旧,可能不够直观和用户友好,对于非技术人员来说可能不太容易上手。
Zabbix 界面友好:Zabbix提供了一个基于Web的图形化界面,易于使用和管理,适合不同技术水平的用户。功能全面:Zabbix支持对网络设备、服务器、应用程序等进行全面的监控,包括性能监控、故障排查、安全审计等功能。自动化配置:Zabbix支持自动发现和自动配置,可以自动添加和删除监控对象,减少了手动配置的工作量。 资源消耗较大:Zabbix在监控过程中可能会消耗较多的系统资源,对于资源有限的环境来说可能存在一定的压力。学习成本:虽然Zabbix提供了友好的界面,但对于初学者来说,仍然需要一定的时间来熟悉和掌握其使用方法和功能。
Prometheus 强大的查询语言:Prometheus提供了PromQL查询语言,支持复杂的查询和聚合操作,方便用户进行灵活的数据分析和可视化。易于集成:Prometheus支持多种导出器(exporter),可以与各种主流的服务和系统进行集成,实现统一的监控和管理。云原生环境支持:Prometheus本身就是作为云原生监控出现的,所以对云原生服务发现支持具有天然优势。 学习曲线陡峭:Prometheus的查询语言和概念对于初学者来说可能较为陌生,需要一定的时间来学习和掌握。报警功能相对简单:虽然Prometheus支持基本的报警功能,但相对于一些其他监控工具来说,其报警机制可能不够灵活和全面。

估计有不少朋友都在玩各种各样的监控软件,大致都差不多,只要不太花里胡哨,又稳定的,就是好玩的!

问题未解决?付费解决问题加Q或微信 2589053300 (即Q号又微信号)右上方扫一扫可加博主微信

所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!

支付宝赞助
微信赞助

免责声明,若由于商用引起版权纠纷,一切责任均由使用者承担。

您必须遵守我们的协议,如您下载该资源,行为将被视为对《免责声明》全部内容的认可->联系老梁投诉资源
LaoLiang.Net部分资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。 敬请谅解! 侵权删帖/违法举报/投稿等事物联系邮箱:service@laoliang.net
意在交流学习,欢迎赞赏评论,如有谬误,请联系指正;转载请注明出处: » 在Windows上部署开源的轻量级自动化运维监控工具Uptime Kuma

发表回复

本站承接,网站推广(SEM,SEO);软件安装与调试;服务器或网络推荐及配置;APP开发与维护;网站开发修改及维护; 各财务软件安装调试及注册服务(金蝶,用友,管家婆,速达,星宇等);同时也有客户管理系统,人力资源,超市POS,医药管理等;

立即查看 了解详情