Oceanbase日常运维

发布时间:2024年01月19日

集群运维管理

Zone运维管理

  • 启动或停止Zone

    alter system {start/stop/froce stop} zone [zone_name];
    
  • 修改Zone信息

    alter system {alter|change|modify} zone [Zone_Name] SET [Zone_Option_List];
    
  • 查看Zone状态

    Select * from __all_zone;
    

Observer运维管理

  • 查看OBServer信息

    select * from __all_server;
    select * from __all_server_event_history;
    
  • 管理OBServer状态

    ALTER SYSTEM START/STOP SERVER 'ip:port' [,'ip:port'…] [ZONE='zone'];
    
    stopped并非进程退出,仅仅是集群认为该节点为stopped状态;
    
  • 查看OBServer进程

    ps -ef | grep observer
    
  • 启动OBServer进程

    cd /home/admin/oceanbase/
    ./bin/observer [启动参数]
    
  • 停止OBServer进程

    kill -15 `pgrep observer`
    kill -9 `pgrep observer`
    

OBServer服务启动恢复

  • 由于增删改数据在内存中,进程启动后

    • 需要与其他副本同步,将clog或者ssd基线数据进行同步(补齐)
    • 需要将上一次合并之后 的内存数据恢复出来(clog回放),才能提供服务
  • 注意事项

    • 停机时间短,一般只追齐clog
    • 停机时间长,clog落后太多,会直接追齐ssd基线数据,然后补齐合并版本后的clog
    • 这一过程结束后,该OBServer才能对外提供服务,可以查询__all_server表的start service time字段来判断OBServer是否对外提供服务
    • 可以在停止OBServer服务前执行转储,以加快OBServer服务恢复过程;

停机运维步骤(服务停止)

1、评估维护时长。避免服务恢复后的补副本操作。需要设置永久下线时间

alter system set server_permanent_offline_time = '86400s‘;

2、将服务从当前OBServer切走,保证停服务的时候,对业务没有影响;

alter system stop server 'ip地址:2882' ;

stop server后会切主

3、检查主副本都切走

select count(*) from __all_virtual_table t, __all_virtual_meta_table m where
t.table_id=m.table_id and role=1 and m.svr_ip='ip地址';
返回0

4、停止进程

kill -15 `pgrep observer`

运维结束启动步骤(服务恢复)

1、启动OS

2、检查机器NTP同步状态和服务运维情况

3、admin用户启动OBServer

4、启动server

alter system start server 'ip地址:2882'; 

5、检查__all_server表

select * from __all_server
开始提供服务:
status为'active' 且'start_service_time '的值>0

6、将永久下线时间改回默认值3600s

alter system set server_permanent_offline_time = '3600s’;

合并与转储

  • 转储:minor freeze

  • 合并:major freeze

OB释放内存主要就是通过转储或合并的方式;转储是直接将内存中的增量数据以SSTable格式写到磁盘数据文件中。

转储与合并相比,对资源占用更少,性能影响更小;

触发转储与合并

手动触发:

转储:
alter system minor freeze;
合并:
alter system major freeze;

自动触发:

  • 转储

当增量内存使用率达到70%,由参数freeze_trigger_percentage控制;

  • 合并

当转储次数达到N次,由参数minor_freeze_times控制;

每天定时合并,由参数major_freeze_duty_time控制;默认凌晨2点;

查看合并进度及状态;
select zone,svr_ip,major_version,ss_store_count,merged_ss_store_count,modified_ss_store_count,merge_start_time,merge_finish_time,merge_process from __all_virtual_partition_sstable_image_info order by major_version desc;
文章来源:https://blog.csdn.net/toudy_wxw/article/details/135646566
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。