Beszel搭建和使用
官网
https://beszel.dev/zh/
简介
Beszel 是一个轻量级的服务器监控平台,包含 Docker 统计信息、历史数据和警报功能。
它拥有友好的 Web 界面、简单的配置,并且开箱即用。它支持自动备份、多用户、OAuth 身份验证和 API 访问。
- 环境查看
系统环境
# cat /etc/redhat-release
Rocky Linux release 9.3 (Blue Onyx)
# uname -a
Linux Rocky9StoneCrm003080 5.14.0-362.18.1.el9_3.0.1.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Feb 11 13:49:23 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
软件环境
# docker version
Client: Docker Engine - Community
Version: 25.0.3
API version: 1.44
Go version: go1.21.6
Git commit: 4debf41
Built: Tue Feb 6 21:14:42 2024
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 25.0.3
API version: 1.44 (minimum version 1.24)
Go version: go1.21.6
Git commit: f417435
Built: Tue Feb 6 21:13:06 2024
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.28
GitCommit: ae07eda36dd25f8a1b98dfbf587313b99c0190bb
runc:
Version: 1.1.12
GitCommit: v1.1.12-0-g51d5e94
docker-init:
Version: 0.19.0
GitCommit: de40ad0
- 安装服务端
# 创建文件夹
# mkdir beszel
下载docker-compose.yml
# cat docker-compose.yml
services:
beszel:
image: henrygd/beszel:latest
container_name: beszel
restart: unless-stopped
extra_hosts:
- host.docker.internal:host-gateway
ports:
- 8090:8090
volumes:
- ./beszel_data:/beszel_data
启动服务器端
# docker-compose up -d
登录
# http://ip:8090
第一次登陆设置用户名和密码
截图有误 需要使用邮箱作为用户名
- 安装客户端
客户端有两种安装方式一种是docker-compose.yml
一种是二进制安装方式
- docker安装
获取docker-compose.yml文件
创建目录
# mkdir beszel-agent/
docker-compose.yml文件
# cat docker-compose.yml
services:
beszel-agent:
image: "henrygd/beszel-agent"
container_name: "beszel-agent"
restart: unless-stopped
network_mode: host
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
# monitor other disks / partitions by mounting a folder in /extra-filesystems
# - /mnt/disk/.beszel:/extra-filesystems/sda1:ro
environment:
PORT: 45876
KEY: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK1hqCLr3nVwaqwBi3Vr/8MM14JJlM8wGjyGkykHMvD6"
启动
# docker-compose up -d
- 二进制
如果需要监控GPU等信息则需要使用二进制方式安装agent
获取安装命令
完整安装命令如下
# curl -sL https://raw.githubusercontent.com/henrygd/beszel/main/supplemental/scripts/install-agent.sh -o install-agent.sh && chmod +x install-agent.sh && ./install-agent.sh -p 45876 -k "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK1hqCLr3nVwaqwBi3Vr/8MM14JJlM8wGjyGkykHMvD6" --china-mirrors
如果主机网络不好下载不了脚本则使用网络好的主机下载好脚本然后一步步执行操作
安装后查看页面
查看单机的监控
4. 设置邮件告警
设置
设置SMTP
需要登录一次
测试使用腾讯企业邮箱无法发信,使用126邮箱使用25端口正常
设置接收邮箱
设置告警规则
- 设置Windows
不支持Windows编译了一个Widows版本的agent
CMD启动命令,加key参数启动
c:\beszel-agent.exe -key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK1hqCLr3nVwaqwBi3Vr/8MM14JJlM8wGjyGkykHMvD6"
做成一个bat放到开机自启动里面即可
6. Linux系统无法显示GPU监控排错
使用以上步骤可以监控Windows的GPU使用但是无法监控Linux系统GPU
修复方法
修改systemctl配置文件增加两行配置
# cat /etc/systemd/system/beszel-agent.service
[Unit]
Description=Beszel Agent Service
Wants=network-online.target
After=network-online.target
[Service]
Environment="PORT=45876"
Environment="KEY=ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK1hqCLr3nVwaqwBi3Vr/8MM14JJlM8wGjyGkykHMvD6"
# Environment="EXTRA_FILESYSTEMS=sdb"
ExecStart=/opt/beszel-agent/beszel-agent
User=beszel
Restart=on-failure
RestartSec=5
StateDirectory=beszel-agent
# Security/sandboxing settings
KeyringMode=private
LockPersonality=yes
NoNewPrivileges=yes
PrivateTmp=yes
ProtectClock=yes
ProtectHome=read-only
ProtectHostname=yes
ProtectKernelLogs=yes
ProtectKernelTunables=yes
ProtectSystem=strict
RemoveIPC=yes
RestrictSUIDSGID=true
SystemCallArchitectures=native
DeviceAllow=/dev/nvidiactl rw
DeviceAllow=/dev/nvidia0 rw
[Install]
WantedBy=multi-user.target
增加的配置如下
重启agent
# systemctl daemon-reload
# systemctl restart beszel-agent
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2024-02-21 第六天: K8S监控