暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

OceanBase 集群搭建过程中问题分享

IT那活儿 2021-07-03
1089
次主要分享下OceanBase 升级过程中遇到过的一些问题,后续如果大家也遇到类似问题可以参考。

一.事件背景
客户有一套测试OceanBase 集群采用ocp+oms+1-1-1的部署架构,observer版本为2.2.73,obproxy版本为1.8.3,因为测试需要要升级为与生产一致版本,observer需要升级为2.2.76版本,obproxy需要升级到1.8.6版本。这里把如何升级以及遇到的小问题分享给大家。

二.升级描述
OceanBase 升级前需要检查环境,如检查节点状态、分区个数、历史合并情况等,然后升级前还需要执行一次手工合并。在早期需要手工黑屏去轮流升级并重启zone,但是现在都可以通过ocp白屏方式升级。

Ocp升级observer方式如下:找到要升级的集群,进去之后右上角就有升级选项

在升级版本中可以选择上传需要升级的版本包(一般高版本会有低版本依赖,可以直接升级,也有特殊情况)

Obproxy升级的话在新版本的ocp中左侧菜单栏直接点开obproxy,就可以选择集群升级。

下方图片是老点的ocp版本需要先点击ocp平台右上角的回到旧版才可以找到,需要手工选择所有节点升级。

三.问题描述及解决方案
问题一:

因为observer需要从2.2.73升级到2.2.76,所以一开始我只找了2.2.76的软件包,前面也说了一般会自动解决依赖的,但是升级时ocp报错。

发生一个未知的错误,错误原因:upgrade path not found,错误信息:cannot find upgrade path from 2.2.73-20201206214840 to 2.2.76-20210517204338,请联系管理员

其实这个问题应该先排查另个问题,当时忽略了,一会下面会介绍。我当时以为是没有自动找依赖,所以把2.2.74和2.2.75版本包都传上去了,想手动迭代升级。在执行2.2.74版本升级时子任务报错,查看日志发现

rpm2cpio home/……/OceanBase -2.2.74-xxx.rpm |cpio -id解压报错

解决方法:

手工验证了下2.2.75的包是可以手工解压的,与ob沟通发现这个包大小有问题,可能是打包的时候有文件丢失了。

Ob重新打了个新的版本包发给我,重试升级操作执行成功

问题二:

在升级2.2.75时再次出现upgrade path not found,意识到可能是ocp升级配置参数的问题,在ocp主机进入ocp的docker,检查下图文件发现果然最后的版本只配置到2.2.74。

解决办法:

手动添加2.2.75和2.2.76升级版本信息(注意格式,空格、换行)

然后再次执行升级操作,可以正常升级

四.经验总结
OceanBase  云平台(OceanBase  Cloud Platform,OCP)伴随 OceanBase  数据库而生,是一款以 OceanBase  为核心的企业级数据库管理平台。随着发展ocp也不断在完善,现在所有的集群安装、管理、备份、升级等操作都可以白屏操作,大大减少了维护的工作量。相比传统的黑屏方式减少了很多风险,提高了效率。虽然还需要人工干预一些检查及问题排查,但仍然改变不了他解放了维护人员大量的工作的现实。
行之所向,莫问远方。

END


更多精彩干货分享

点击下方名片关注

IT那活儿

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论