第一部分:什么是 Sunny 512?
Sunny 512 是一个基于 Web 的网络监控平台,它通过 SNMP 协议从网络设备上采集数据,并以图表和仪表盘的形式直观地展示出来。

核心特点:
- 开源免费:完全免费,可以自由使用和修改。
- Web 界面:所有操作和管理都通过浏览器完成,非常方便。
- 自动发现:可以自动扫描指定网段,发现并添加 SNMP 设备。
- 丰富的图表:支持折线图、柱状图、饼图等多种图表类型,直观展示性能数据。
- 高度可定制:支持自定义模板、告警规则、仪表盘布局等。
- 多语言支持:界面支持中文、英文等多种语言。
主要监控内容:
- 网络设备:CPU/内存使用率、端口流量、温度、风扇状态、电源状态、设备可用性等。
- 服务器:操作系统信息、CPU/内存/磁盘使用率、网络流量、进程状态等。
- 打印机:墨盒/硒鼓余量、纸张状态、打印任务数等。
- 其他支持 SNMP 的设备:如 UPS、环境传感器等。
第二部分:系统要求与环境准备
在开始之前,你需要确保服务器满足以下要求。
硬件要求

- CPU:至少 1 核,推荐 2 核或以上。
- 内存:至少 1GB,推荐 2GB 或以上(如果监控大量设备,需要更多内存)。
- 硬盘:至少 10GB 可用空间。
操作系统要求
Sunny 512 主要运行在 Linux 系统上,推荐使用 CentOS 7/8 或 Ubuntu 18.04/20.04。
必需的软件
- Web 服务器:推荐使用 Nginx 或 Apache。
- 数据库:推荐使用 MariaDB (MySQL)。
- PHP:版本 2 或更高。
- SNMP 工具:
net-snmp包(用于命令行测试)。
第三部分:详细安装步骤 (以 CentOS 7 为例)
步骤 1:更新系统并安装基础依赖
登录你的服务器,更新系统软件包。

# 更新系统 sudo yum update -y # 安装 EPEL 源 sudo yum install -y epel-release # 安装编译工具和基础依赖 sudo yum groupinstall "Development Tools" -y sudo yum install -y wget git
步骤 2:安装数据库 (MariaDB)
# 安装 MariaDB 服务器 sudo yum install -y mariadb-server mariadb # 启动 MariaDB 并设置为开机自启 sudo systemctl start mariadb sudo systemctl enable mariadb # 运行安全脚本,设置 root 密码等 sudo mysql_secure_installation
在 mysql_secure_installation 过程中,你可以根据提示设置 root 密码,其他选项(如移除匿名用户、禁止root远程登录等)建议都选择 Y (Yes)。
步骤 3:安装 PHP 及其扩展
# 安装 Yum 源仓库 sudo yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum install -y yum-utils sudo yum-config-manager --enable remi-php74 # 安装 PHP 7.4,你也可以选择其他版本 # 安装 PHP 和必要的扩展 sudo yum install -y php php-cli php-fpm php-mysqlnd php-gd php-xml php-mbstring php-json php-snmp
步骤 4:安装 Nginx
# 安装 Nginx sudo yum install -y nginx # 启动 Nginx 并设置为开机自启 sudo systemctl start nginx sudo systemctl enable nginx
步骤 5:下载并配置 Sunny 512
下载源码
# 创建一个目录用于存放 Sunny 512 sudo mkdir -p /var/www/sunny512 cd /var/www/sunny512 # 从 GitHub 下载最新版本(请替换为最新版本号) # 你可以在 https://github.com/sunny512/sunny512/releases 查找最新版本 sudo wget https://github.com/sunny512/sunny512/archive/refs/tags/v2.1.0.tar.gz sudo tar -zxvf v2.1.0.tar.gz sudo mv sunny512-2.1.0/* . sudo rm -rf v2.1.0.tar.gz sunny512-2.1.0
设置文件权限
# 设置 Nginx 用户对目录有读写权限 sudo chown -R nginx:nginx /var/www/sunny512 sudo chmod -R 755 /var/www/sunny512
配置数据库 登录 MariaDB,创建一个专门用于 Sunny 512 的数据库和用户。
# 登录 MariaDB mysql -u root -p # 在 MariaDB 命令行中执行以下 SQL 语句(替换 'your_password' 为你设置的密码) CREATE DATABASE sunny512_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'sunny512_user'@'localhost' IDENTIFIED BY 'your_strong_password'; GRANT ALL PRIVILEGES ON sunny512_db.* TO 'sunny512_user'@'localhost'; FLUSH PRIVILEGES; EXIT;
修改 Sunny 512 配置文件
# 复制并编辑配置文件 sudo cp config.php.example config.php sudo nano config.php
在 config.php 文件中,找到数据库配置部分,并填入你刚刚创建的信息:
// 找到类似下面的部分并修改 'db_host' => 'localhost', 'db_user' => 'sunny512_user', 'db_pass' => 'your_strong_password', // 这里填入你设置的密码 'db_name' => 'sunny512_db',
保存并退出 (Ctrl+X, Y, Enter)。
步骤 6:配置 Nginx
创建一个新的 Nginx 配置文件来指向 Sunny 512。
sudo nano /etc/nginx/conf.d/sunny512.conf
粘贴进去(将 your_domain.com 替换为你的域名或 IP 地址):
server {
listen 80;
server_name your_domain.com; # 替换为你的域名或服务器IP
root /var/www/sunny512;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; # 或者是 127.0.0.1:9000,取决于你的PHP-FPM配置
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
保存并退出,然后测试并重新加载 Nginx 配置:
sudo nginx -t sudo systemctl reload nginx
步骤 7:完成安装
打开你的浏览器,访问 http://your_domain.com 或 http://your_server_ip。
你应该能看到 Sunny 512 的安装向导界面,按照提示操作,它会自动创建数据表并完成安装,安装成功后,你就可以使用默认的 admin/admin 账号登录了。
⚠️ 重要安全提醒: 登录后,请立即修改默认管理员密码!
第四部分:核心功能使用教程
登录 Sunny 512 后,我们来熟悉一下核心功能。
添加监控设备
这是最核心的一步,Sunny 512 提供了两种主要方式:
自动发现 (推荐)
- 在左侧菜单栏,点击
自动发现。 - 在
发现网段输入框中,输入你要监控的网段,168.1.0/24。 - 点击
开始发现,Sunny 512 会扫描该网段内所有开启了 SNMP 服务的主机。 - 扫描完成后,会列出所有发现的设备,勾选你需要监控的设备,然后点击
添加选中设备。 - 在弹出的窗口中,为每个设备填写
设备名称和SNMP Community String(通常是public,有些设备可能需要修改为自定义字符串,如private),然后点击添加。
手动添加
- 在左侧菜单栏,点击
设备。 - 点击右上角的
添加设备按钮。 - 填写设备信息:
- 设备名称:给设备起一个容易识别的名字。
- IP 地址:设备的 IP 地址。
- SNMP Community String:SNMP 的只读密码。
- SNMP 版本:通常选择
v2c,部分新设备可能需要v3(v3配置更复杂,需要用户名、认证协议、密码等)。
- 点击
添加。
查看监控数据
添加设备后,Sunny 512 会开始采集数据。
- 查看设备状态:在
设备列表中,你可以看到所有设备的状态(在线/离线),以及 CPU、内存等关键指标的概览。 - 查看详细图表:点击某个设备名称,进入该设备的详情页面,在这里你可以看到:
- CPU 使用率
- 内存使用率
- 端口流量 (这是最重要的网络监控指标)
- 磁盘使用率 (如果设备支持)
- 设备信息 (型号、序列号、固件版本等)
创建自定义仪表盘
仪表盘可以将不同设备的监控指标组合在一个页面,方便集中查看。
- 在左侧菜单栏,点击
仪表盘。 - 点击右上角的
创建仪表盘。 - 给仪表盘命名,
核心网络设备监控。 - 进入仪表盘编辑界面,你可以添加各种小部件:
- 点击
添加小部件。 - 选择你想要的图表类型(如折线图、状态图标)。
- 选择要监控的设备和指标。
- 调整布局和大小。
- 点击
- 保存后,你就有了一个个性化的监控大屏。
设置告警
当设备出现故障或性能指标超过阈值时,Sunny 512 可以通过邮件等方式通知你。
- 在左侧菜单栏,点击
告警。 - 点击右上角的
添加告警规则。 - 配置告警规则:
- 规则名称:给规则起个名字。
- 设备:选择要应用此规则的设备(或选择
所有设备)。 - 监控项:选择要监控的指标,如
CPU。 - 条件:设置触发条件,如
大于 90%。 - 持续时间:持续多久触发告警,避免瞬时尖峰误报。
- 告警级别:设置级别(如:警告、严重)。
- 通知方式:配置邮件通知,你需要先在
设置->系统设置->邮件设置中配置 SMTP 服务器信息。
- 保存规则,当规则被触发时,你会在告警列表中看到,并收到邮件通知。
第五部分:常见问题与进阶
Q: 我无法添加设备,提示 "SNMP Timeout" 是什么原因? A: 这通常意味着设备没有响应 SNMP 请求,请检查:
- 设备的 IP 地址是否正确。
- 设备上的 SNMP 服务是否已开启。
- 设备的防火墙是否允许来自你服务器的 UDP 161 端口访问。
- SNMP Community String 是否正确(大小写敏感)。
Q: 如何监控 Linux/Windows 服务器? A: 你需要在服务器上安装 SNMP Agent。
- Linux (如 CentOS): 安装
net-snmp包,并配置/etc/snmp/snmpd.conf文件,将com2sec中的 community string 设置成 Sunny 512 中使用的值。 - Windows: 在 "控制面板" -> "程序" -> "启用或关闭 Windows 功能" 中勾选 "SNMP 服务",然后通过服务管理器配置 SNMP Agent 的 community string。
Q: Sunny 512 的数据存储在哪里?
A: 数据存储在你之前配置的 MariaDB/MySQL 数据库中,你可以通过 config.php 文件中的数据库信息连接到数据库进行查询或备份。
进阶学习:
- 自定义模板:你可以编写自己的模板来监控不支持标准 MIB 的特殊设备。
- API 接口:Sunny 512 提供了 API,可以与其他系统集成,实现自动化运维。
- 性能调优:如果监控成千上万的设备,可能需要优化 PHP 和数据库的配置,甚至使用 Redis 作为缓存。
希望这份详细的教程能帮助你成功部署和使用 Sunny 512!祝你监控愉快!
