在这里插入图片描述

软件名称:Beszel
操作系统支持
  • 服务端:支持所有能运行 Docker 的系统(Linux、极空间、群晖、Windows WSL2);
  • 客户端(agent):支持 Linux(各发行版)、Windows(PowerShell 一键安装)、Docker 环境;
  • cpolar:支持 Linux、Windows、macOS、极空间等主流系统。
软件介绍

Beszel 是一款主打 “极简” 的多服务器监控工具,没有复杂的依赖和配置,靠 Docker 就能一键启动,核心就是帮你盯着服务器的 CPU、内存、磁盘、网络这些核心指标,还能看 Docker 容器的运行状态。它不像 Zabbix 那样需要搭数据库、配告警规则绕半天,注册个账号就能用,不管是单台服务器还是十几台集群,都能集中在一个 Web 界面管理,对非专业运维的人特别友好。

在这里插入图片描述

Beszel 的出色功能
  1. 跨系统统一监控:不管是 Linux 服务器还是 Windows 主机,甚至是极空间这类私有云设备,装个 agent 就能纳入监控,不用为不同系统配不同工具;
  2. Docker 原生适配:能直接读取 Docker 容器的资源占用、运行日志,不用额外装容器监控插件;
  3. 轻量化低开销:整个服务端跑在 Docker 里,占用内存不到 100M,对低配服务器 / 极空间来说,完全不抢资源;
  4. 基础告警与历史数据:能存服务器指标的历史数据,也能配简单告警,不用盯着屏幕也知道服务器是不是出问题了。

在这里插入图片描述

实用场景
场景 1:个人站长管理多台 VPS
  • 痛点:手里有 3 台不同服务商的 VPS,分别跑博客、网盘、爬虫脚本,之前每次服务器卡顿,得挨个 ssh 登录查 CPU / 内存,分不清是哪个服务占资源,排查一次要半小时;
  • 爽点:用 Beszel 把 3 台 VPS 都加入监控,网页上能直观看到每台机器的资源占用曲线,哪个 VPS 内存满了、哪个 CPU 跑满了,一眼就能定位,排查时间从半小时缩到 5 分钟,还能在外网随时看,不用非得连家里的内网。
场景 2:小公司异地运维服务器
  • 痛点:公司办公网里有 2 台 Linux 服务器跑业务,运维人员偶尔居家办公,想查服务器状态只能让同事远程协助,或者临时搭 VPN,又麻烦又不安全;
  • 爽点:给 Beszel 配了 cpolar 内网穿透后,运维在家用手机或电脑,直接访问 cpolar 的固定域名就能打开 Beszel 界面,实时看服务器状态,甚至能查容器日志,不用麻烦同事,也不用暴露公司内网的核心端口。

在这里插入图片描述

cpolar 内网穿透技术带来的便利

说白了,Beszel 再好,要是只能在内网看,那异地办公、出门在外的时候就跟 “摆设” 似的,而 cpolar 刚好解决了这个核心问题,而且全程不用碰复杂的路由器配置,也不用找运营商要公网 IP。

  1. 异地访问无门槛:不管是在咖啡店、高铁站还是客户公司,只要有网,就能通过 cpolar 分配的公网地址打开 Beszel,查服务器状态、看容器日志,就跟坐在公司内网里操作一样;
  2. 固定域名不折腾:一开始用 cpolar 会分配随机域名,怕记不住或者域名变,只要在 cpolar 后台预留一个二级子域名,就能绑定到 Beszel 的隧道上,以后不管重启服务器还是 cpolar 服务,访问地址都不变,不用每次改书签、记新地址;
  3. 不用动路由器设置:很多人想把内网服务放公网,得进路由器配端口映射、改 DMZ 主机,新手容易配错,还可能留安全漏洞。cpolar 不用碰路由器,一条命令装完,在网页端点几下就能建隧道,实测配置下来也就 10 分钟,对新手特别友好;
  4. 跨设备访问适配好:不管是用电脑、手机还是平板,访问 cpolar 映射的 Beszel 地址,界面都会自适应屏幕,手机上看服务器指标也不挤,出差时随手划拉一下就能确认服务器没问题;
  5. 安全不暴露内网:cpolar 的隧道是加密的,而且只会把 Beszel 的 8091 端口映射出去,不会暴露内网的其他服务,比直接把服务器端口对公网开放安全多了,不用担心里程碑被扫、被攻击的风险。

在这里插入图片描述

总结

Beszel 不是那种 “大而全” 的监控工具,它胜在 “够用、好用、不折腾”—— 中小团队或个人要的服务器监控需求,比如看 CPU / 内存 / 磁盘、查容器状态,它都能满足,而且部署成本几乎为零。搭配 cpolar 之后,又补上了 “异地访问” 这个短板,不用再纠结公网 IP、端口映射这些事儿,把内网的监控平台变成随时随地能看的 “口袋监控”。

不过也得说句实在的,Beszel 适合轻量监控场景,如果是大型企业需要复杂的告警规则、多维度数据分析,那还是得用 Prometheus 这类工具;但如果是小团队、个人站长,或者只是想监控几台服务器 / 极空间,Beszel+cpolar 的组合,既能省时间,又能省成本,用下来是真的顺手。

最佳搭档=提高生产力、高效完成人物、自由度升高。

本文将从零开始,详细介绍Beszel的安装步骤、配置要点以及在真实多服务器环境中的部署实践,帮助读者快速构建属于自己的轻量级监控平台,提升系统可观测性的同时,保持架构的简洁与可控。

1.什么是Beszel?

Beszel是一个由开发者henrygd创建的轻量级、Docker原生的服务器与容器监控平台,强调简洁、开箱即用和快速部署。它虽未成为主流工具,但在特定场景下(如个人VPS监控、临时DevOps看板)具有实用价值。其名称蕴含“看见不可见之物”的隐喻,契合监控系统的本质使命。

Docker 镜像存在

  • 镜像地址:henrygd/beszel(可在Docker Hub搜索验证)
  • 启动端口:默认8090
  • 功能描述(根据你之前的描述):
  • 监控主机资源(CPU、内存、磁盘、网络)
  • 收集Docker容器统计信息
  • 存储历史数据
  • 支持告警(Alerting)
  • 提供 Web 界面
  • 支持多用户、OAuth 登录、API 访问、自动备份

部署方式简单

通过docker-compose.yml即可一键启动,依赖本地挂载目录(beszel_data存数据,beszel_socket用于访问Docker Daemon)。

定位明确
面向轻量级、低运维成本场景,适合个人或小团队快速搭建监控看板,避免复杂配置。

2.前提条件

2.1ssh远程连接到极空间

  • 开启【SSH 服务】
  • 使用终端(Windows PowerShell / Mac Terminal)登录:
ssh root@IP

没有ssh的小伙伴可以参考这篇文章:

连接成功:极空间别再吃灰了!开启SSH,秒变全能服务器! - cpolar 极点云官网

957c00e3b3f0ce8aa95df96aa41b8715

2.2验证docker是否开启

使用命令:

docker -v
systemctl status -v

没有docker的小伙伴可以参考这篇文章:极空间开箱实录:从拆箱到远程访问保姆级教程,30分钟上手! - cpolar 极点云官网

image-20251017103712618

3.安装Beszel

首先创建一下安装的目录并进入到该目录:

sudo mkdir -p /docker/beszel
cd /docker/beszel

81aa7f9e7409e2e5b1d2baf1dfab4cd7

创建并编辑 docker-compose.yml文件:

version: "3"
services:
  beszel:
    image: henrygd/beszel
    container_name: beszel
    restart: unless-stopped
    ports:
      - 8091:8090
    volumes:
      - ./beszel_data:/beszel_data
      - ./beszel_socket:/beszel_socket

启动容器:

docker-compose up -d

290150576c397f32f09152c55d9f2ab7

部署完成后,在浏览器中输入 http://极空间IP:8091 就能看到beszel的界面:

44b2eff8966762aebf29a8d6cea189a1

4.使用Beszel

第一次登录,先注册账户密码:

229f96fa53a5ce34c1a160ca5e0b23ab

进来页面就是这样的啦:

image-20260414174623380

跟我开始添加被监控系统吧!

使用docker命令在被监控主机上部署agent服务。等服务启动后,添加的客户端数据会显示在页面中:

docker run -d --name beszel-agent --network host --restart unless-stopped -v /var/run/docker.sock:/var/run/docker.sock:ro -v beszel_agent_data:/var/lib/beszel-agent -e KEY="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEVghS28S9ON4Ppffa2K2JgBiqSiSACPKk6GTYJwnfe/" -e LISTEN=45876 -e TOKEN="1380-d81b442ca4-2275-dfc4219154" -e HUB_URL="http://192.168.50.213:8091" henrygd/beszel-agent

20357ead5e44a64ddbe8d2463ffc2453

a5fc7be5374a21cfe48f7c88acccf076

添加执行命令的主机ip,然后点击"添加系统":

8beb7e5e0244466f2bf4e88866f4040a

回到主页面刷新就可以看到所监控主机啦啦!

80ace1048c580a5e998d524062bac617

没有docker的小伙伴还可以使用二进制方式,有很多形式,我这里演示windows服务:

& iwr -useb https://get.beszel.dev -OutFile "$env:TEMP\install-agent.ps1"; & Powershell -ExecutionPolicy Bypass -File "$env:TEMP\install-agent.ps1" -Key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEVghS28S9ON4Ppffa2K2JgBiqSiSACPKk6GTYJwnfe/" -Port 45876 -Token "1380-d81b442ca4-2275-dfc4219154" -Url "http://192.168.50.213:8091"

322062a7d5ec8be979623549597e434d

900424d32b9c5b8ca19a83fa0fea2c8c

添加windows信息:

6f842fee964050633556ffdb6575c4e6

添加后windows信息就显示成功啦!

420e937fa29e6f1916aafaba50129cbf

点击刚刚填加的客户端,可以查看具体的监控指标:

image-20260414175352808

点击右上角“所以容器”:

image-20260414175435705

可以看见本机所部署的docker容器详细信息:

image-20260414175504947

还可以查看详细日志:

image-20260414175532994

点击右上角如图所示:

image-20260414175601195

可以查看设备更多信息:

image-20260414175616029

切换多种语言:

image-20260414175634114

在上一节中,我们成功在本地服务器上部署了Beszel —— 一个轻量级、开箱即用的多服务器监控平台。通过docker-compose启动后,只需访问http://localhost:8091,即可查看主机与容器的实时状态、历史数据及告警信息。然而,这一便捷的监控能力目前仅限于内网环境:如果你身处办公室、家中或任何非服务器所在网络的位置,将无法直接访问该Web界面。

对于远程运维、异地团队协作或临时调试场景,我们亟需一种安全、稳定的方式,将运行在内网的Beszel服务暴露到公网。此时,传统的方案如配置公网IP、端口映射(NAT)、DDNS或反向代理虽可行,但往往涉及复杂的路由器设置、云服务商限制,甚至安全隐患。

为此,我们可以借助一款现代化的内网穿透工具 ——cpolar。

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

5.1 什么是cpolar?

cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。

5.2 部署cpolar

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

❤️以下是安装cpolar步骤:

使用一键脚本安装命令:

sudo curl https://get.cpolar.sh | sh

image-20250725104019896

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

sudo systemctl status cpolar

22e5adfaf290a17fc3384bb296055259

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

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

8a6698b1bf26d64ba3645827fbfb1c29

6.配置公网地址

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

  • 隧道名称:可自定义,本例使用了:beszel,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8091
  • 域名类型:随机域名
  • 地区:选择China Top

image-20260415104916552

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

image-20260415105011667

访问成功:

image-20260415105053112

7.保留固定公网地址

使用cpolar为其配置二级子域名(cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站),该地址为固定地址,不会随机变化。

image-20250918151358733

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

image-20260415105444740

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

image-20260415105550851

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

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

点击更新

image-20260415105621894

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

image-20260415105637089

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

image-20260415105712165

总结

在《轻量级多服务器监控:Beszel的安装与实战部署》一文中,我们深入介绍了Beszel —— 一款简洁高效、资源占用极低的开源服务器监控工具。它无需复杂的依赖和庞大的数据库,仅凭单文件即可实现对多台Linux服务器CPU、内存、磁盘、网络及系统负载等关键指标的实时监控,并通过直观的Web界面集中展示。文章详细演示了从服务端部署、客户端接入,到告警配置与安全加固的完整流程,帮助用户快速构建属于自己的轻量化监控体系。无论是个人开发者管理VPS集群,还是小型团队维护边缘节点,Beszel都提供了一种低成本、高效率的可观测性解决方案,真正实现了“小而美,简而强”的运维理念。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐