Skip to main content
Version: v3&v6

ONES 升级注意事项

1.升级前检查

1.1 磁盘空间检查

检查服务器磁盘空间是否足够,如果系统盘/数据盘磁盘空间超过80%,建议暂缓升级,先清理临时文件、再请客户扩容,低于80%后再继续升级。

1.2 磁盘IO检查

考虑到磁盘性能损耗等情况,请执行如下命令分别检查正式环境的系统盘/数据盘/索引盘的磁盘IO是否满足读60MB/s、写20MB/s的性能要求,如果不满足,建议暂缓升级,请客户提供满足要求的新服务器、或者提供单独的索引盘/备份机等。

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=random_read_write.fio --bs=4k --iodepth=64 --size=8GB --readwrite=randrw --rwmixread=75 

1.3 CPU/内存检查

根据ONES 私有部署环境要求中的服务器准备情况,核对授权人数与CPU/内存是否匹配,如果低于标准,建议暂缓升级,先请客户扩容。

1.4 数据盘/备份盘检查

(1)如果生产环境的备份盘和数据盘没有分开,建议暂缓升级、先告知客户存在的性能冲突和稳定性隐患,再请客户提供新的备份机或者外置存储专用于数据备份,避免备份带来的磁盘IO消耗影响业务正常运行、减少单点隐患。

(2)如果K3S集群环境没有采用标准的本地存储+NAS或者本地存储+NAS+OSS的应用+存储分离方案,请暂缓升级,待客户提供满足要求的外置存储再来操作。

1.5 数据备份检查

参考数据备份&恢复详细说明,检查mysql数据备份/mc附件备份是否正常。

2 升级中操作

2.1 卸载ONES-OP

6.1以上版本,执行 make delete-ones-op 卸载当前不再使用的ones-op模块。

2.2 升级K3S版本

升级之前执行kubectl get node检查k3s版本是否为v1.29.1+k3s2, 如果不是请参考执行Linux单机单独重装k3s

2.3 检查K3S证书有效期

默认K3S内置的普通SSL证书有效期为1年,需及时检查更新,参考K3S更新SSL证书; 同时请参考执行Linux单机单独重装k3s,调整证书有效期为100年。

2.4 修改默认pod数限制

默认K3S只支持运行110个pod,新版本开启了插件运行时改造,在插件较多等场景下,需修改k3s pod实例限制

3 升级后操作

3.1 升级中间件

跨版本升级,请手工执行make setup-ones-built-in-redis、make setup-ones-built-in-kafka、make setup-ones-built-in-tikv 升级中间件。

3.2 切换nginx为tengine

升级到6.38.3以上版本,默认已将nginx切换为tengine、但其中部分中间件需手工处理,升级之后可手工执行 make setup-ones-built-in-nginx 切换自定义网关、 执行make setup-installer-web切换安装页面、执行make setup-ones-telemetry切换监控。

3.3 调整https方式

从V3升级到V6版本的https客户,由于ingress配置https的方式不再维护,请参考开启/关闭 HTTPS关闭原ingress方式、参考配置 HTTPS://域名 访问配置内置的自定义网关。

3.4 优化clickhouse配置

从低版本升级到6.1版本后,原clickhouseMemoryLimit: 2Gi或4Gi不足,可能导致Clickhouse无法启动或运行后报错,需调大。在config/private.yaml中添加 clickhouseMemoryLimit: 6Gi 再make setup-ones生效。

3.5 调整clickhouse备份

从6.1.94以下版本升级到6.1.94以上版本,请参考数据备份&恢复详细说明, 关闭kafka备份、删除历史备份文件,打开clickhouse备份、验证备份成功。

3.6 调整附件备份

从6.33.0以下版本升级到6.33.0以上版本,请参考快速开启数据备份,相关配置已在升级时自动变更,需在确认当前业务附件数据正常后,删除历史附件备份mc-backup目录,否则磁盘空间可能不足;同时附件备份时间可能会很长,大客户建议周五晚上再升级、预留周末用来备份!

3.7 开启可观测

从6.1.94以下版本升级到更新版本,请手动开启可观测性系统,并删除历史logging数据和监控数据。

3.8 重建索引

如果本次升级,执行了数据migration迁移操作,请重建索引

3.9 重建效能

如果本次升级,执行了数据migration迁移操作,请重建 Performance 数据

3.10 前后台重启插件

执行 kubectl get pod -n ones |grep -iE 'platform|plugin' | awk '{print $1}' |xargs kubectl delete pod -n ones 重启插件相关进程,同时告知客户在前台页面停用、再启用相关插件。 如果出现OOM等无法启动插件的情况,参考调整插件运行资源

3.11 加载证书

因V6版本的授权机制发生变化,当从V3版本升级到V6及以上版本时、请指导客户重新加载新的V6证书,否则无法使用ONES业务。

上述操作执行完成之后系统会升级到新版本,执行 kubectl get pod -A|grep -vE 'Running|Completed' 返回为空后,可通知CSM和客户验证业务是否正常!