服务器宕机前预警!Uptime Kuma+cpolar 让监控随时随地

服务器宕机前预警!Uptime Kuma+cpolar 让监控随时随地

文章目录

前言

Uptime Kuma 是一款轻量级的开源监控工具,支持 HTTP、TCP、Ping 等多种协议,能实时监测网站、服务器、API 接口的运行状态,还能通过邮件、钉钉等数十种方式推送告警信息。它适合个人开发者、中小企业运维人员使用,优点是占用资源少(单实例内存低于 100MB)、操作简单、可视化界面直观,无需专业运维知识也能快速搭建监控系统。

使用 Uptime Kuma 时,设置监控项的过程很简单,添加目标地址后就能自动生成状态图表,一目了然。但要注意,它默认需要在本地网络内访问管理界面,若服务器不在身边,很难及时调整监控参数或查看告警详情。

仅在局域网内使用 Uptime Kuma,会面临不少不便:出差时想查看服务器是否正常运行,却无法访问监控面板;半夜收到告警短信,却只能等到第二天回办公室才能处理问题;团队成员需要分工监控时,必须在同一网络环境下操作,灵活性极差。

而 Uptime Kuma 与 cpolar 结合后,这些困扰就能轻松解决。cpolar 可以将本地的监控服务暴露到公网,生成一个可远程访问的地址,无论身在何处,只要有网络就能登录 Uptime Kuma 管理界面,实时查看监控数据、调整告警阈值,甚至在外出时也能及时处理服务器异常,让监控真正做到全天候、无死角。

img

下面介绍在Linux中使用Docker来一键部署Uptime Kuma,并将这个服务映射至公网访问。

一、前期准备

本教程环境为:Centos7,可以跑Docker的系统都可以使用本教程安装。
image-20231219171530642
本教程使用Docker部署服务,如何安装Docker详见:

Install Docker Engine on CentOS | Docker Docs

使用如下命令测试Docker是否正常工作:

docker run hello-world 
image-20231219172107787

二、Docker部署Uptime Kuma

按照顺序执行如下命令,路径位置可自行修改 mkdir -p /root/dockertest/kuma # 新建安装文件夹cd /root/dockertest/kuma # 切换至安装路径touch docker-compose.yml # 创建docker配置文件

执行结果如下:

image-20231220180234239

编辑我们刚才新建的yml配置文件:

vim docker-compose.yml 

写入如下信息:

version: '3.3' services: uptime-kuma: image: louislam/uptime-kuma container_name: uptime-kuma volumes: - /root/dockertest/kuma/data:/app/data ports: - 5702:3001 # 我设置的访问端口号为5702,可以自行修改端口
image-20231220180901400

在此目录:/root/dockertest/kuma 下执行如下命令启动监控服务:

docker-compose up -d 
image-20231220165544383

拉取运行完毕后,docker ps ,即可查看已经启动的容器:

image-20231220165622832

此时我们浏览器打开服务器IP:5702,我的地址是:

http://192.168.1.237:5702/

输入用户名密码后进入登陆界面:

image-20231220170105283

在此界面我们可以添加要监控的网站:

image-20231220170128942

点击左上角添加,配置监控URL,设置下监控名称:

image-20231220170451461

设置网站异常通知:

image-20231220171825780

支持各种通知功能,建议配置使用邮件和飞书通知等报警功能。

image-20231220171851867

配置完毕后显示如下:

image-20231220171938537

三、实现公网查看网站监控

上面我们使用Docker在本地服务器上部署了网站监控服务,在本地可以随意访问,但是一旦离开本地时需要查看网站状态,配置监控报警,就不灵了。

此时我们需要安装使用内网穿透工具将本地服务映射至公网,这样我们无需自己注册域名购买云服务器,即可发布到公网进行远程访问 !

我在服务器上安装了免费不限流量的Cpolar,具体安装方法如下:

cpolar官网地址: https://www.cpolar.com
  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh |sudobash
  • 向系统添加服务
sudo systemctl enable cpolar 
  • 启动cpolar服务
sudo systemctl start cpolar 

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。

image-20230831171159175

打开我的Cpolar Webui地址并登陆进去:

http://192.168.1.237:9200/

点击左侧仪表盘的隧道管理——创建隧道

image-20231219155830455
image-20231220172059029

配置如下:

image-20231220172152263
  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:5702(填入自定义修改的端口号)
  • 域名类型:免费选择随机域名
  • 地区:选择China Top

点击创建

隧道变为active状态,即为创建成功:

image-20231220172426684

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

image-20231220172407611
image-20231220172741417

打开这个https地址,就是映射出的公网地址:

image-20231220173642875
image-20231220173705897

小结

为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定二级子域名,原因是我希望它是一个固定、易记的公网地址,更利于长期监控服务(例如:crm.cpolar.cn),这样更显正式,便于交流协作。

四、使用固定公网地址访问本地部署的监控服务

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

image-20231220173942500

保留成功提示如下:

image-20231220174005682

返回登录http://192.168.1.237:9200 Cpolar Webui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击 编辑

image-20231220173745280

修改隧道配置信息如下:

image-20231220174417628

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

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

点击更新(注意,点击一次更新即可,不需要重复提交)

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

image-20231220174520998

最后,我们使用固定的公网地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了。

image-20231220174602525

到这里我们实现了使用本地服务器部署网站监控服务,并配置了固定公网地址访问,这样我们无需租云服务器,就可以随时随地查看网站监控。

Uptime Kuma 的轻量监控能力,搭配 cpolar 的远程访问支持,共同构成了一套零成本的全栈监控方案。它既能满足中小团队对服务器、网站的实时监测需求,又能打破地域限制,让运维工作不再受限于局域网,实现高效、灵活的远程管理。

cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

Read more

当 IoT 遇上大数据:为什么顶尖架构师都在押注 Apache IoTDB?

当 IoT 遇上大数据:为什么顶尖架构师都在押注 Apache IoTDB?

文章目录 * 一、引言:时序数据时代的数据库选型困境 * 二、时序数据库的核心特性与选型维度 * 2.1 什么是时序数据库 * 2.2 时序数据库选型的关键维度 * 2.2.1 写入性能 * 2.2.2 存储效率 * 2.2.3 查询能力 * 2.2.4 分布式架构 * 2.2.5 生态兼容性 * 三、主流时序数据库技术对比 * 3.1 国际主流产品分析 * 3.2 国产时序数据库的崛起 * 四、Apache IoTDB 深度解析 * 4.1 项目背景与发展历程 * 4.2 核心架构设计

By Ne0inhk
Ubuntu 环境安装 之 RabbitMQ 快速入手

Ubuntu 环境安装 之 RabbitMQ 快速入手

Hi~!这里是奋斗的明志,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 🌱🌱个人主页:奋斗的明志 🌱🌱所属专栏:RabbitMQ 📚本系列文章为个人学习笔记,在这里撰写成文一为巩固知识,二为展示我的学习过程及理解。文笔、排版拙劣,望见谅。 Ubuntu 环境安装 * 前言 * 一、什么是MQ(消息队列) * MQ多用于分布式系统之间进行通信 * 二、MQ的作用 * 1、异步解耦 * 2、流量削峰 * 3、消息分发 * 4、延迟通知 * 三、为什么选择 RabbitMQ * 1、Kafka * 2、RocketMQ * 3、RabbitMQ * 四、RabbitMQ 快速上手 * 1、Ubuntu 环境安装 * 2、安装Erlang * 3、

By Ne0inhk
kali-linux-2025.4 鼠标不显示的问题 --- 已解决

kali-linux-2025.4 鼠标不显示的问题 --- 已解决

kali-linux-2025.4-vmware-amd64鼠标不显示的问题解决办法如下: 1、首先确定kali系统已关机! 2、在vmware 计算机列表找到kali-linux-2025.4。 3、右键kali-linux-2025.4 ,选择【管理】- 选择【更改硬件兼容性】。 4、进入更改硬件兼容性向导,并点击下一步。 5、将硬件兼容性更改为17.x 或17.5 or later ,如下图所示: 6、点击下一步,如下图所示: 7、选择更改此虚拟机,点击下一步,如下图所示: 8、点击完成,如下图所示: 9、点击关闭,如下图所示: 10、开启虚拟机,鼠标已正常显示。

By Ne0inhk
Ubuntu 系统下安装 OpenClaw(原 Clawdbot)的详细指南

Ubuntu 系统下安装 OpenClaw(原 Clawdbot)的详细指南

Ubuntu 系统下安装 OpenClaw(原 Clawdbot)的详细指南 * Ubuntu 系统下安装 OpenClaw(原 Clawdbot)的详细指南 * OpenClaw 的背景与优势 * 先决条件 * 硬件与软件要求 * 必要依赖 * 安装 Node.js 在 Ubuntu 上 * 安装其他依赖 * 安装步骤 * 方法一:CLI 全局安装 * 方法二:从源代码安装 * 配置 OpenClaw * 基本配置 * 集成消息应用 * Telegram 集成 * WhatsApp 集成 * 安全配置 * 测试与使用 * 故障排除 * 高级应用 * 更新与卸载 * 性能优化 Ubuntu 系统下安装 OpenClaw(原 Clawdbot)的详细指南

By Ne0inhk