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

OB集群升级方法

IT那活儿 2024-04-23
359
点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!  

 概 述

1.1 升级目标

Observer直接升级至目标版本oceanbase-3.2.3.3-110020022023092816(3.2.3 BP10 hotfix2)。

1.2 升级方式

采用OCP白屏界面升级,升级前请备份业务系统数据。

升级步骤

2.1 升级前检查

1)检查OB节点状态

预期start_service_time有时间,stop_time为空,status为active。

select svr_ip, with_rootserver, zone, 
usec_to_time(start_service_time), usec_to_time(stop_time),
usec_to_time(last_offline_time), status,
SUBSTR(build_version, 1, INSTR(build_version, '-') - 1) build_version from __all_server order by zone,svr_ip;

2)检查副本个数

预期返回空。

select member_list, table_id, partition_id, count(1) as cx 
from __all_virtual_meta_table group by table_id, partition_id, member_list having cx!=3;

3)查看日志同步是否完成

预期返回空。

select svr_ip, svr_port, table_id, partition_idx from 
__all_virtual_clog_stat where is_in_sync=0 and is_offline=0 and replica_type!=16;

4)确保节点分区数量小于5W

select zone, svr_ip, count(1) partition_cnt from __all_virtual_meta_table group by zone, svr_ip order by partition_cnt desc;

5)检查集群最近的合并情况

检查最近两天合并情况,确保合并每天进行且没有报错:

select /*’+ READ_CONSISTENCY(WEAK),query_timeout(100000000) */ value1 version,value2 zone,

date_format(min(gmt_create),'%Y-%m-%d %H:%i:%s.%f') start_time,

date_format(max(gmt_create),'%Y-%m-%d %H:%i:%s.%f') finish_time,

timestampdiff(MINUTE,min(gmt_create),max(gmt_create)) merge_time_minute,module,event

from __all_rootservice_event_history

where gmt_create < now() and gmt_create > usec_to_time(time_to_usec(now())-172800000000)

and module in ('major_freeze','daily_merge')

and event in ('start_merge','all_partition_merged') group by value1,value2 order by start_time;

6)检查是否有正在进行的任务

select * from __all_rootservice_job where job_status='INPROGRESS';

7)检查是否有DDL操作

select * from __all_virtual_ddl_operation order by gmt_create desc limit 5;

2.2 升级操作

1)发起一次手工合并

等待正常结束。

白屏发起合并或者黑屏登录sys租户下执行以下命令发起合并。

alter system major freeze;

2)在OCP界面上发起一次手工全备

等待正常结束。

3)上传OB安装包

将oceanbase-3.2.3.3-110020022023092816上传至生产环境OCP。

4)通过OCP升级OB版本

进入集群详情页,点击右上角“…”选择“升级版本”,在弹出的版本下拉框中选择oceanbase-3.2.3.3-110020022023092816,点击升级,等待升级任务完成。

如果存在主备集群,升级过程会自动升级备集群


升级后检查

3.1 升级完成后自检任务均为success

select * from __all_virtual_upgrade_inspection;

3.2 检查节点状态及版本号

select svr_ip, with_rootserver, zone, 
usec_to_time(start_service_time), usec_to_time(stop_time),
usec_to_time(last_offline_time), status,
SUBSTR(build_version, 1, INSTR(build_version, '-') - 1) build_version from __all_server order by zone,svr_ip;

3.3 检查系统参数

show parameters where name in ('enable_upgrade_mode','enable_sys_table_ddl','enable_ddl');

其中:

enable_upgrade_mode=false

enable_sys_table_ddl=false

enable_ddl=true


END


本文作者:张 健(上海新炬中北团队)

本文来源:“IT那活儿”公众号

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

评论