BigBlueButton Greenlight v3 迁移指南:从v2平稳升级到v3
2025-07-06 08:19:52作者:庞队千Virginia
前言
BigBlueButton作为一款优秀的开源视频会议系统,其前端管理界面Greenlight在v3版本进行了全面重构。本文将详细介绍如何将现有Greenlight v2实例中的数据完整迁移至v3版本,帮助管理员顺利完成升级过渡。
迁移概述
Greenlight v3是一个全新设计的应用程序,架构和界面都有重大更新。官方提供了完整的迁移方案,可以转移以下核心数据:
- 用户账户资料
- 角色及权限设置
- 会议室及其配置
- 共享访问权限
- 全局站点设置
迁移原理
迁移系统采用双端协作模式:
- v2端:通过Rake任务提取数据
- v3端:通过RESTful API接收并验证数据
迁移过程必须按特定顺序执行四个Rake任务:roles → users → rooms → settings
准备工作
环境要求
- 确保v2和v3实例都已部署且网络互通
- 建议在业务低峰期执行迁移
- 提前备份关键数据
v2版本升级
cd ~/greenlight
docker-compose pull
docker-compose down
docker-compose up -d
环境变量配置
在v2的.env文件中添加:
V3_ENDPOINT=https://your-v3-instance.com
V3_SECRET_KEY_BASE=your_v3_secret_key
详细迁移步骤
1. 角色迁移
执行命令:
sudo docker exec -it greenlight-v2 bundle exec rake migrations:roles
注意事项:
- 默认角色(user/moderator/guest)不会迁移
- 角色颜色设置不迁移
2. 用户迁移
关键配置: 必须确保v2和v3的SECRET_KEY_BASE相同,否则本地用户密码将无法同步。
执行命令:
sudo docker exec -it greenlight-v2 bundle exec rake migrations:users
3. 会议室迁移
执行命令:
sudo docker exec -it greenlight-v2 bundle exec rake migrations:rooms
特殊说明:
- 仅迁移活跃用户的会议室
- 大文件传输可能需要调整nginx配置
4. 设置迁移
执行命令:
sudo docker exec -it greenlight-v2 bundle exec rake migrations:settings
迁移限制:
- 品牌图片需重新上传
- 会议室限制需重新配置为角色权限
迁移后操作
完成上述步骤后,执行录制同步:
sudo docker exec -it greenlight-v3 bundle exec rake server_recordings_sync
常见问题处理
- 迁移失败:检查网络连接和API端点
- 部分资源未迁移:可单独重新运行对应任务
- 密码不匹配:确认SECRET_KEY_BASE一致
- 文件过大错误:调整nginx的client_max_body_size
最佳实践建议
- 先在测试环境验证迁移流程
- 记录迁移过程中的控制台输出
- 迁移完成后进行全面功能测试
- 保留v2实例一段时间作为回退方案
通过本文的详细指导,管理员可以顺利完成Greenlight从v2到v3的平稳过渡,确保会议系统的持续稳定运行。