Nexus 迁移指南:3.69.0 到 3.76.0(Alauda Build of Nexus Operator 版本 v3.76.z)
Deprecated: Nexus 3.81 (nexus-ce-operator v3.81.1 和 v3.81.2)
由于 Nexus 3.81 Community Edition 的限制性限制,该版本已停止维护。一旦使用达到配额限制(总组件数 100,000 和每日请求数 200,000),实例将无法正常运行。
如果您已经升级到 3.81 版本,请按照回滚到 Nexus 3.76指南进行降级。
有关 Community Edition 限制的更多信息,请参见 Community Edition Limitations。
目录
概述先决条件迁移流程1. 数据备份1.1 服务关闭1.2 备份 Blob 存储1.3 数据库备份2. 数据库迁移2.1 OrientDB 到 H2 转换3. 新实例部署3.1 配置选项3.2 数据导入4. 验证步骤概述
本文档提供了从 Nexus Repository Manager 3.69.0 版本迁移到 3.76.0 版本的详细操作步骤。由于 Nexus 在 3.70 版本后停止支持 OrientDB,迁移过程中需要手动进行数据迁移。
先决条件
- 安装 Alauda Build of Nexus Operator v3.76.z 版本
- 确保系统资源充足以支持升级
- 使用产品功能将 Nexus 升级到 3.69.0 版本
迁移流程
1. 数据备份
创建备份目录(确保本地磁盘空间充足以存储备份):
设置环境变量:
1.1 服务关闭
删除之前,必须先卸载旧版本 operator,否则删除后服务会被自动重建。
1.2 备份 Blob 存储
1.3 数据库备份
- 进入:Admin Dashboard > System > Tasks
- 创建新任务:
- 类型:Admin - Export databases for backup
- 任务名称:[自定义]
- 备份位置:[指定路径] - 目录路径必须在 Nexus 数据卷目录内。
- 频率:手动
- 执行任务并确认完成状态
2. 数据库迁移
2.1 OrientDB 到 H2 转换
设置环境变量:
进入容器并下载迁移工具:
如果无法直接联网下载,可以先在本地下载文件,再复制到容器中:
执行迁移:
备份转换后的数据库:
3. 新实例部署
由于数据和存储均从原实例导入,部署新实例时只需保持与原实例相同的访问方式。
注意: 使用与旧版本相同的 NodePort 和 Ingress 配置会导致冲突,无法创建。请配置新的值,迁移成功后删除旧版本实例,再修改外部暴露配置。
3.1 配置选项
NodePort 访问示例:
HTTP ingress 示例:
HTTPS ingress 示例:
3.2 数据导入
设置新实例变量:
清理已有数据(如果新数据卷为空可跳过此步骤):
导入备份数据:
然后重启 Nexus Pod。
4. 验证步骤
-
检查 Pod 状态:
-
验证清单:
- Web UI 可访问
- 仓库可见
- 构件上传功能正常
- 构件下载功能正常
- 用户认证正常
- 仓库权限正常
-
迁移后清理:
- 验证成功后删除旧实例(需重新安装旧版本 operator 以完成旧实例资源清理)
- 按照保留策略归档备份数据