Uptime Kuma运维监控服务本地部署结合内网穿透实现远程在线监控

news2024/12/24 9:14:28

目录

前言

主要功能

一、前期准备

本教程环境为:Centos7,可以跑Docker的系统都可以使用本教程安装。

本教程使用Docker部署服务,如何安装Docker详见:

二、Docker部署Uptime Kuma

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

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

 作者简介: 懒大王敲代码,计算机专业应届生

       今天给大家聊聊Uptime Kuma运维监控服务本地部署结合内网穿透实现远程在线监控,欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖  

个人主页:

懒大王敲代码-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/weixin_58070962?type=blog

其他专栏:

技术分享专栏icon-default.png?t=O83Ahttp://t.csdnimg.cn/LVrbCjava专栏icon-default.png?t=O83Ahttp://t.csdnimg.cn/bw2Thubantu与C语言学习专栏icon-default.png?t=O83Ahttp://t.csdnimg.cn/A8yIivue3项目实战专栏icon-default.png?t=O83Ahttp://t.csdnimg.cn/vP2no内网穿透专栏icon-default.png?t=O83Ahttp://t.csdnimg.cn/GJZJA懒大王闲谈专栏icon-default.png?t=O83Ahttp://t.csdnimg.cn/KxzqY


前言

本文主要介绍如何在Linux系统中一键部署Uptime Kuma运维监控服务,并将这个服务映射至公网实现随时随地远程访问。

如果您像我一样在服务器上托管了多个网站,并且没有足够的时间来手动检查每个网站的在线状态,那么当出现问题时,您可能无法及时收到通知来处理这些问题。因此,搭建一个在线监控服务是很有必要的,它可以在状态异常时提醒您,以便您能够及时处理问题,确保网站的稳定性和可用性。

监控服务有很多,我最终选择了Uptime Kuma,因为Uptime Kuma是开源免费的,在GIthub上目前有43.1k Star! 它搭建非常方便,占用系统资源低。

img

主要功能

  1. 监控 HTTP(s) / TCP / HTTP(s) 关键字 / Ping / DNS 记录 / 推送 / Steam 游戏服务器的正常运行时间

  2. 花哨的、反应式的、快速的 UI/UX

  3. 通过 Telegram、Discord、Gotify、Slack、Pushover、电子邮件 (SMTP) 和 70 多种通知服务发送通知

  4. 提供代理支持

  5. 支持多种语言

  6. Ping 图(Ping Chart)

  7. 证书信息(Certificate Info)

一、前期准备

本教程环境为: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

如因网络问题拉取不到镜像,

可尝试在终端执行 sudo nano /etc/docker/daemon.json

输入:

{
"registry-mirrors": [
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn"
]
}

保存退出

然后执行:

sudo systemctl restart docker

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

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

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

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

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

  • 使用一键脚本安装命令

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2170393.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一文看懂英伟达系列显卡特点及性能参数对比

英伟达介绍 英伟达(NVIDIA)是美国一家专业的计算机图形芯片制造商,作为全球领先的GPU生产商,英伟达显卡产品系列涵盖GeForce、Quadro、Tesla、NVS、GRID等消费级、专业级和企业级市场。并被广泛应用于游戏、深度学习、科学计算和图形处理等领域。 NVID…

建筑智能,推动智慧社区发展

建筑智能已经成为现代城市建设的热门词汇。它不仅是提高城市建筑现代化水平的必由之路,也是未来城市智能化的重要标志。其中,智能社区是建筑智能化的重要环节之一。 智能社区是指以信息技术为基础,通过信息技术实现社区设施设备网络化、监管…

JS设计模式之模板方法模式:打破束缚,解密代码复用的精髓

一. 前言 在前端开发中,模板方法模式是一种常用的设计模式,它能够有效地提高代码的复用性和扩展性。在 JavaScript 中,模板方法模式的应用广泛,常被用于组件的生命周期管理、请求封装和拦截器设计、表单验证等多个场景。 本篇文…

数据结构和算法之树形结构(3)

文章出处:数据结构和算法之树形结构(3) 关注码农爱刷题,看更多技术文章!! 四、平衡二叉树(接前篇) 上一章节讲到为了避免二叉查找树退化成链表后的极度不平衡带来的低效率而衍生出了平衡二叉树,平衡二叉树的严格定义…

CDGA|数据治理:策略与价值的深度融合

在当今这个数据驱动的时代,企业数据治理的重要性日益凸显。数据不仅是企业的核心资产,更是驱动业务决策、优化运营流程、创新产品服务的关键力量。然而,要让数据治理真正发挥价值,企业需要采取一系列策略来确保数据的准确性、完整…

Unity 资源 之 PoseAI 基于肌肉的姿势创作工具

Unity 资源 之 PoseAI 基于肌肉的姿势创作工具 一,前言二,资源包内容三,免费获取资源包 一,前言 Unity 开发者们,今天要为大家介绍一款极具创新性的工具 ——PoseAI。 PoseAI 是一种最先进的基于肌肉的姿势创作工具&…

Flink基本概念和算子使用

基础概念 Flink是一个框架和分布式处理引擎,用于对无界数据流和有界数据流进行有状态计算,它的核心目标是“数据流上的有状态计算”。 有界流和无界流 有界流:具有明确的开始和结束时间,数据量有限。适合使用批处理技术&#xf…

Elasticsearch实战宝典:从日志分析到实时数据监控,全方位解锁搜索与分析的无限可能!

Elasticsearch 是一个开源的分布式搜索和分析引擎,常用于处理大规模数据。它提供了强大的全文搜索、结构化搜索、实时统计分析等功能。以下是一些 Elasticsearch 的实战应用案例。 1. 日志分析系统 Elasticsearch 经常被用于集中式日志管理(Centralized…

使用SSE流式输出(Javaweb前后端实战)

目录 一.什么是SSE? 主要特点: 二.SSE的实现过程: 三.SSE的前端实现: 1.创建 EventSource 对象: 2.处理接收到的信息: 3.处理特定事件: 4.处理连接错误问题: 5.关闭连接&am…

网络安全的方方面面

目录 一、网络安全概述二、数据加密三、消息完整性与数字签名四、身份认证五、密钥分发中心(KDC)与证书认证(CA)六、防火墙与入侵检测系统七、网络安全协议八、网络安全攻防 -- 黑客攻击简要流程九、网络安全常用术语 一、网络安全概述 网络安全的基本特征:相对性、…

ArcGIS Desktop使用入门(三)常用工具条——拓扑(上篇:地图拓扑)

系列文章目录 ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二&#x…

基于Java的学生档案管理系统

基于springbootvue实现的学生档案管理系统 (源码L文ppt)4-065 第4章 系统设计 4.1 总体功能设计 学生档案管理系统的总体功能设计包括学生信息管理、课程管理、教师信息管理、成绩管理和系统配置管理。系统将提供用户友好的界面,支…

【Linux】图解详谈HTTPS的安全传输

文章目录 1.前置知识2.只使用对称加密3.只使用非对称加密 因为私钥加密只能公钥解开,公钥加密只能私钥解开4.双方都是使用非对称加密5.非对称加密 对称加密6.非对称加密对称加密CA认证(一)CA认证(二)https &#xff0…

耳夹式耳机哪个牌子好?主流耳夹式耳机推荐,多维度耳夹式耳机测评

耳夹式耳机哪个牌子好?耳机已经逐渐走进了众多消费者的生活,可以非常便捷地满足人们的对声音的需求,无论是在享受音乐还是接听电话方面都非常方便,极大地提升了生活的便利性。然而,随着耳夹式耳机的热度不断攀升&#…

IDEA插件开发入门

前置条件: Java17、Gradle8 1. 安装插件 Plugin DevKit 2. 新建项目 File → New → Project 3. 项目结构 📢 新建一个XxxAction 4. 插件入口 XxxAction 继承 AnAction ,实现 actionPerformed 方法,这是一个插件的入口 5. 插件配置 …

裸辞后勇闯AI领域:我的AGI产品经理之路

2021 年,我开始接触生成式 AI。2023 年 8 月,我按捺不住内心对 AI 技术浪潮的热情,从外企裸辞投身 AI。2023 年,我们团队先后入围由百度和阿里组织的 AGI 黑客马拉松活动,并在阿里第三季 AI 创客松中获得“从 0 到 1 奖…

远程唤醒局域网主机技术Wake On LAN

WOL用途 如果你在开发一个计算机管理软件(利旧现有主机,实现统一运维管理),例如电脑课开课前老师一键开启电教室的电脑 。 魔法原理 Wake-on-LAN 的原理其实很简单。我们发送一个特殊的网络包(俗称"魔术包&quo…

学生党头戴式蓝牙耳机怎么选?平价学生党头戴式蓝牙耳机排行推荐

在选择适合学生党的头戴式蓝牙耳机时,我们不仅要考虑价格因素,还要兼顾音质、舒适度、降噪效果、续航能力以及是否具备实用的功能等多个方面,那么学生党头戴式蓝牙耳机怎么选?作为学生群体,我们既追求性价比&#xff0…

微软推出GRIN-MoE:开创专家路由新范式

前沿科技速递🚀 在人工智能领域,模型的性能和可扩展性一直是研究的热点。微软最近推出的GRIN-MoE(Gradient-Informed Mixture-of-Experts)模型,以其独特的架构和显著的性能表现,正引领着AI技术的前沿&#…

南沙csp-j/s一对一家教 解一本通题: 1937:【06NOIP普及组】数列

【题目描述】 给定一个正整数k(3≤k≤15),把所有k的方幂及所有有限个互不相等的k的方幂之和构成一个递增的序列,例如,当k3时,这个序列是: 1,3,4,9,10,12,13&a…