beszel:一个美观易用的探针安装教程

1 前言

以前我都是用哪吒探针的.不过哪吒探针虽然很好用,也带有监控网站和ssl监控等丰富的功能,不过对于我来说还是太笨重了.而且agent端权限太高,直接获取root权限对于我来说也是个缺点.

今天我们介绍的探针是beszel,一个轻量级的服务器监控插件.可以监控服务器的CPU/内存/磁盘io/docker容器占用/流量,并且还有历史记录,还有简单的告警功能.

项目地址:https://github.com/henrygd/beszel

项目没有中文文档,目前和国内其余探针比起来缺点也有一些,更不用说和哪吒相比了.不过哪吒新版本难用而且安装麻烦并且传出了有漏洞的说法.不过优点也是有的,占用小而且好看!

下面贴几个beszel的界面图片:

1.1 优点

  1. 轻量级:比领先的解决方案更小且资源密集程度更低。
  2. 中文:新版本已经支持中文!
  3. Docker 统计:跟踪每个容器的 CPU、内存和网络使用历史记录。
  4. 警报:可配置 CPU、内存、磁盘、带宽、温度和系统状态的警报。
  5. 多用户:每个用户管理自己的系统。管理员可以跨用户共享系统。
  6. OAuth / OIDC:支持多个 OAuth2 提供商。可以禁用密码验证。
  7. 自动备份:从磁盘或 S3 兼容存储保存和恢复数据
  8. Docker安装:目前主控可以docker安装,被控原本是docker安装,现在是docker和二进制都可以选择
  9. 支持arm
  10. 国外人做的,其实我一直觉得一个开源项目是国外做的话,那这个项目会有更长的更新周期和更少的B事.

安全!

主控和代理通过 SSH 进行通信,因此它们不需要暴露在互联网上。即使您在集线器前面放置外部身份验证网关(例如 Authelia),它也不会中断或破坏集线器和代理之间的连接。当集线器首次启动时,它会生成一个ED25519密钥对。代理的 SSH 服务器配置为仅接受使用此密钥的连接。它不提供伪终端或接受输入,因此即使您的私钥被泄露,也无法在代理上执行命令。

当然,ssh通信也是有点小缺点的.需要在被控服务器上开通通信端口,这点和哪吒等不需要开通端口的不同.如果你使用了防火墙,那么会导致无法通信,需要在防火墙放行端口.

1.2 缺点

  1. 被控无法修改,当你在主控界面天街被控以后,无法修改.可能是由于ssh密钥通信的原因.但是连被控的名字都无法修改就有点过分了.
  2. IPV6支持不好,目前github里面有不少人提了这个问题.作者说会在下个版本修复这个问题.
  3. 多磁盘支持不好,目前作者介绍的比较少,可以通过手动办法解决:https://github.com/henrygd/beszel?tab=readme-ov-file#monitoring-additional-disks-partitions-or-remote-mounts
  4. 自定义功能少,目前来说在设置页里面无法修改皮肤/站点名字/图标等,有需要的可以进程序自己修改,不过后续升级就会改回来的.
  5. 不支持游客访问,可以设置一个只读的账号.
  6. 少了个流量总共使用了多少监控功能

当然,由于这些缺点也导致了beszel有着超高的易用性,反正就是安装和使用都很简单的意思.

2安装

2.1 主控安装

主控还是建议docker安装,不管是管理还是删除都方便,被控就不建议用docker了,很多小机再额外安装一个docker很麻烦.

部署Beszel Hub(也就是主控/后端)

2.1.1 SSH界面手动安装

通过Docker Compose部署,docker-compose.yaml内容如下:

services:
  beszel:
    image: 'henrygd/beszel'
    container_name: 'beszel'
    restart: unless-stopped
    ports:
      - '8090:8090'
    volumes:
      - ./beszel_data:/beszel_data

然后使用docker-compose up -d启动,启动成功后通过http://IP:8090访问WEB页面,并设置一个管理员邮箱和密码,以便后续使用。

2.1.2 docker界面安装

这里用带有docker面板的宝塔面板演示,群晖等面板也是一样的流程.如果是宝塔用户,那么就在宝塔侧边栏的Docker里面,找到线上镜像,然后搜索beszel,将第一个henrygd/beszel的镜像下载到本地.

然后找到容器,然后选择创建容器,容器名称随便写,镜像选择刚下载好的镜像,端口将容器的8090暴露出来,本地端口随便写,不起冲突就可以,但是你要记得你输入的这个端口.

2.1.3 docker-compose面板安装

在宝塔侧边栏的Docker里面,找到容器,然后选择创建容器-容器编排-创建,名字随便起一个,然后讲上述docker-compose.yaml内容填写到里面.演示看下图:

然后会自动回到容器编排界面,模板选择刚刚创建的模板,用户名随便起一个,建议叫做beszel方便区分,然后创建容器即可.记得放行8090端口

2.2 使用

接下来使用你服务器的IP后面加英文冒号:然后加上你刚刚设置的端口,如果和我设置的一样那就是IP:8090

设置一个用户名/邮箱/密码.然后进入面板

如果不是中文,那么点击右上角的齿轮图标设置,在Language那里找到中文设置就好.

2.3 添加被控

在主界面的右上角找到添加客户端,这里我建议使用二进制安装,而不是docker.如果让你的小鸡再额外安装一个docker管理器就有点麻烦了,对于有docker环境的小机可以使用docker安装

然后填写被控的名称和IP,端口可以自己设置,建议使用默认的端口.然后记得去你的小鸡防火墙那里放开端口,最后点击复制linux命令按钮,去你的小鸡ssh上面安装即可,记得小鸡安装的时候需要你输入一下y确认安装.

然后就可以在你的主控里面看到你的被控了.使用就是这么简单.

其他功能

在主界面选择服务器右边的铃铛可以选择告警,在线/cpu/内存/磁盘/流量/温度等都可以设置触发器,目前通知方式支持Webhook和邮件(需要自己设置发邮件服务器)

点击主界面右上角的那个小人可以选择其余的功能,比如日志和备份等功能,那样子会跳转到另一个面板界面,和主界面是一样的邮箱账号和密码,可以自己进行设置.备份/存储到S3和OAuth2 登录

Related Post

发表回复