海纳云 1.2.0 → 1.3.0 版本升级文档
海纳云 1.2.0 → 1.3.0 版本升级文档
本文档说明 海纳云从 1.2.0 版本升级至 1.3.0 版本 的完整步骤及注意事项。
⚠️ 注意事项:
- 升级过程需要 停机维护,期间海纳云将 无法对外提供服务。
- 升级时长约为 30 分钟至 1 小时,请提前通知相关业务部门。
一、执行 Cloudeon 中海纳云镜像升级 SQL
1. 登录 MySQL 容器
在部署海纳云的集群主节点上执行:
kubectl get pod -n mysql
查看 MySQL 容器运行情况:

进入 MySQL 容器后连接数据库(默认账号密码为 root / Root@123):

切换至 cloudeon 数据库用户,并执行以下 SQL:
UPDATE ce_stack_service
SET `version`='1.0.46'
WHERE `NAME`='HINA-CLOUD';
UPDATE ce_stack_service
SET `docker_image`='dockerhub.baofu.com/app/2023102400000017/hina-haishuu:1.0.46'
WHERE `NAME`='HINA-CLOUD';
2. 回滚(如遇异常)
UPDATE ce_stack_service
SET `version`='1.0.37'
WHERE `NAME`='HINA-CLOUD';
UPDATE ce_stack_service
SET `docker_image`='dockerhub.baofu.com/app/2023102400000017/hina-haishuu:1.0.37'
WHERE `NAME`='HINA-CLOUD';
二、升级 Cloudeon 服务
1. 导入新版 Cloudeon,海纳云 镜像
下载 海纳云 和 cloudeon 新版镜像到主节点特定目录,比如下载到 /home/cloudeon/hina-cloud/1.3.0/
Cloudeon1.0.55镜像包
海纳云1.3.0版本镜像
在主节点执行以下命令导入镜像:
sudo ctr -n k8s.io images import /home/cloudeon/hina-cloud/1.3.0/cloudeon-software_1.0.55.tar
由于海纳云需要在各个节点导入,手动执行命令较为繁琐,因此编辑如下脚本放入保存为 distrbute_load_hina_cloud_1.3.0.sh 之前安装的 脚本目录 (script)
sh_dir=$(cd "$(dirname "${BASH_SOURCE[0]}")" &> /dev/null && pwd)
cd $sh_dir
source ./base.sh
retrieve_node_ssh_info_in_background rsync_file_to_remote /home/cloudeon/hina-cloud
retrieve_node_ssh_info_in_background eval 'ssh -p "$node_port" "$node_user@$node_ip" "sudo ctr -n k8s.io images import /home/cloudeon/hina-cloud/1.3.0/hina-haishuu_1.0.46.tar"'
执行
chmod +x script/distrbute_load_hina_cloud_1.3.0.sh && ./script/distrbute_load_hina_cloud_1.3.0.sh
2. 修改 Cloudeon 部署镜像版本
退出 MySQL 容器后,在主机上执行:
kubectl edit deploy cloudeon -n cloudeon
将 image: 行修改为新版本镜像,例如:
image: dockerhub.baofu.com/app/cloudeon:1.0.55
等待 Cloudeon 服务启动完成并状态恢复为 Ready。
3. 回滚(如遇异常)
同样执行:
kubectl edit deploy cloudeon -n cloudeon
将镜像版本改回旧版本即可。
三、执行海纳云数据库升级 SQL
1. 进入 MySQL 容器并切换数据库
进入 MySQL 容器后,切换至 HINA_CLOUD 数据库:

2. 执行升级脚本
升级前请务必 备份以下两张表:
T_DATA_PROJECT_ROLE_MENUT_BASE_MENU
执行升级脚本:
3. 回滚(如遇异常)
将备份的 T_DATA_PROJECT_ROLE_MENU、T_BASE_MENU 表数据恢复即可。
四、升级海纳云服务
1. 删除旧版本服务
在 Cloudeon 界面中 删除海纳云服务,等待删除完成:

2. 部署新版本海纳云
删除完成后,通过 Cloudeon 重新部署海纳云服务:

3. 回滚步骤
如升级失败,请按以下顺序回滚:
- 执行 步骤三 回滚数据库;
- 执行 步骤一 回滚镜像版本;
- 重新通过 Cloudeon 部署海纳云服务。
✅ 升级完成验证
- 登录 Cloudeon 管理界面确认海纳云服务运行正常;
- 检查数据库版本字段是否已更新;
- 核实前端及后端功能均可正常访问。
另外,升级提供了 虚拟事件批量导入 程序
说明:
- resources/virtual-import.properties 供用户修改数据库信息和项目信息,支持热改,无需重新打包。
- resources/template/虚拟事件定义模板.xlsx 为模板文件,供用户录入虚拟事件数据。
- resources/说明.txt 为导入准备工作说明。
使用方法
解压 虚拟事件导入zip 包得到
如图
修改 resources 下文件夹配置 virtual-import.properties,放入需要导入的虚拟事件数据到 template 文件夹中。
执行
java -jar hina-cloud-virtual-import.jar
关于京东 SSO 免登,在 Nacos 中有对应配置,在升级完成后需要调整 ,调整配置文件 hina-cloud-base.yam
如图
其中配置项含义
jd:
sso:
enable: true #是否开启京东SSO登录开关
url: https://ssa.jdtest.net #京东SSO登录授权地址
appKey: test-hina-cloud #SSO登录 APP Key
appToken: 4e976249c97e4f5da50426f46318a4c7 #SSO登录所需的 APP Token
autoCreateUser: true #SSO登录是否自动创建用户
1. 由于海纳这边开发测试在测试环境下 https://ssa.jdtest.net 调试测试没有问题,所以需要升级后调整成为京东生产环境地址。
2. 京东根据自己的需求是否开启 SSO登录是否自动创建用户,如果设置为 false,则需要提前建立与 erp 对应的用户名的用户才可正常 SSO 登录
