惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Y
Y Combinator Blog
月光博客
月光博客
Blog — PlanetScale
Blog — PlanetScale
GbyAI
GbyAI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 三生石上(FineUI控件)
S
SegmentFault 最新的问题
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
美团技术团队
雷峰网
雷峰网
酷 壳 – CoolShell
酷 壳 – CoolShell
Last Week in AI
Last Week in AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
有赞技术团队
有赞技术团队
博客园 - 司徒正美
V
Visual Studio Blog
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
Tailwind CSS Blog
Apple Machine Learning Research
Apple Machine Learning Research
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
A
About on SuperTechFans
The Cloudflare Blog

codeqihan的博客

现代化的开源终端-Tabby 基于Rust开发的编辑器-Edit ChatGPT Atlas使用体验 联通宽带改桥接 Chrony安装以及配置 电信跨网QoS ungoogled-chromium浏览器简介 npm的高性能替代品pnpm 使用markdownlint-cli格式化Markdown文件 Nginx的安装以及配置 使用unattended-upgrades自动更新软件包 Debian使用Backports源 压缩网页体积 Debian切换至Testing/Sid版本 2024年度总结 ai.robots.txt阻止AI爬虫 甲骨文圣何塞ARM测评 公共DOH收集 com又涨价了
轻量级的探针-Beszel
codeqihan · 2024-12-28 · via codeqihan的博客

简介

Beszel 是一个轻量级的服务器监控平台,包含 Docker 统计信息、历史数据和警报功能。

它拥有友好的 Web 界面、简单的配置,并且开箱即用。它支持自动备份、多用户、OAuth 身份验证和 API 访问。

——Beszel官方文档

Beszel的Agent,一般情况下运行只占用8MB内存,服务端也只占用50MB内存(8个客户端),非常轻量。

Beszel和哪吒等探针不同,Beszel是服务端主动采集被控端数据的,这意味着被控端需要开放采集端口,服务端才能连接到被控端。

GitHub仓库:https://github.com/henrygd/beszel

官方文档:https://beszel.dev/zh/

ps:从发布到现在,Beszel已经变化很多了,以下安装相关内容可能已经不适用于现在,因此建议直接访问官方文档

服务端Docker Compose部署

docker-compose.yml可以新建一个文件夹存储,方便管理

1
2
mkdir beszel-hub
cd beszel-hub

docker-compose.yml

1
2
3
4
5
6
7
8
9
services:
beszel:
image: henrygd/beszel
container_name: beszel
restart: unless-stopped
ports:
- 8090:8090
volumes:
- ./beszel_data:/beszel_data

启动服务

1
docker compose up -d

之后就可以通过8090端口访问(docker-compose.yml上设置的端口)面板

被控端Docker Compose部署

点击面板右上角的添加客户端,填写客户端名称以及IP地址、端口(端口需要开放),复制docker-compose.yml并在被控端上启动Docker Compose

被控端也建议新建一个文件夹,方便管理

1
2
mkdir beszel-agent
cd beszel-agent

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
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
environment:
PORT: 45876
KEY: '<公钥>'

启动服务

1
docker compose up -d

之后在面板上点击添加客户端以添加被控端,不出1分钟,在面板上就可以看到被控端实时状态了

二进制文件部署

二进制服务端我没有部署过,只部署过二进制客户端,因此对于服务端的二进制部署基本上是参照官方文档编写的

服务端

下载服务端

1
curl -sL "https://github.com/henrygd/beszel/releases/latest/download/beszel_$(uname -s)_$(uname -m | sed 's/x86_64/amd64/' | sed 's/armv7l/arm/' | sed 's/aarch64/arm64/').tar.gz" | tar -xz -O beszel | tee ./beszel >/dev/null && chmod +x beszel

启动服务端

1
./beszel serve --http "0.0.0.0:8090"

之后就可以通过8090端口访问服务端面板

创建systemd服务

在/etc/systemd/system/beszel.service创建一个systemd服务文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[Unit]
Description=Beszel Hub
After=network.target

[Service]
Type=simple
Restart=always
RestartSec=3
User=root
WorkingDirectory={/path/to/working/directory}
ExecStart={/path/to/working/directory}/beszel serve --http "0.0.0.0:8090"

[Install]
WantedBy=multi-user.target

启用并启动服务

1
2
3
sudo systemctl daemon-reload
sudo systemctl enable beszel.service
sudo systemctl start beszel.service

被控端

在服务端上复制命令即可

1
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 "<密钥>" --china-mirrors

期间会询问是否需要启用自动更新,选y启用自动更新,选n禁用自动更新

安装完成后管理面板点击添加即可

评论