时钟同步
检查NTP时间是否同步,OceanBase能够容忍的集群内部时钟偏差最大为100ms。
执行ntpq -q
,输出的offset应该小于50ms。
查看、启停、修改zone
启停zone实际上是在切换提供leader服务的zone,并不是真的在启停OS中的服务进程。
select * from __all_zone;
alter system {start|stop|force stop} zone [zone_name];
alter system {alter|change|modify} zone [zone_name] set [zone_option_list];
查看、管理observer
停止observer同样也不表示进程退出,仅表示不提供leader服务。
select * from __all_server;
select * from __all_server_event_history;
alter system {start|stop} server 'IP:port'[,'IP:port',...] [zone='zone'];
observer服务进程管理
查看observer进程
ps -ef | grep observer
启动进程(admin用户)
cd /home/admin/oceanbase
./bin/observer [启动参数]
停止进程
kill -15 `pgrep observer`
kill -9 `pgrep observer`
observer服务启动恢复
由于增删改数据在内存中进行,Observer进程启动后,需要:
- 与其他副本同步,将clog或ssd基线数据进行同步(补齐);
- 将上一次合并之后的内存数据恢复出来(clog回放),才能提供服务。
为了加快OceanBase的服务恢复过程,可以在停止observer服务之前,执行一次合并(major freeze)。
服务停止(停机运维)
- 如果停机维护时长大于1小时但小于1天,需要设置永久下线时间:
alter system set server_permanent_offline_time='86400s';
- 将服务从当前Observer迁走:
alter system stop server 'IP_address:2882';
- 检查主副本都已经切走,返回值为0:
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_address';
- 停止进程:
kill -15 <observer_pid>
服务恢复(停机运维结束)
- 机器上电;
- 检查机器ntp同步状态和服务运行情况;
- admin用户启动observer进程;
cd /home/admin/oceanbase
./bin/observer [启动参数]
- 系统租户登录,启动server:
alter system start server 'IP_address:2882';
- 检查
__all_server
表,查看status='active'
且start_service_time
不为Null,则表示observer正常启动并开始提供服务; - 将永久下线时间改回默认值3600s:
alter system set server_permanent_offline_time='3600s';
故障节点替换
为确保集群中有足够的冗余资源,需要及时对故障节点进行替换。
- 系统租户登录故障节点,停止observer,确保主副本都切走;
- 为目标zone添加新的server:
alter system add server 'IP_address:2882' zone 'zone1';
- 将故障server下线:
alter system delete server 'IP_address:2882' zone 'zone1';
OceanBase会自动将被下线observer上的unit迁移到新增的observer上。
- 检查
__all_server
表中的server状态,旧的observer的信息已经消失。
容量不足
内存不足
内存空间不足时,可以有以下两种处理思路:
- 扩容:调大租户内存;
- 释放已用内存:触发转储、合并。
存储不足
日志盘满时,根据日志类型处理:文章来源:https://www.toymoban.com/news/detail-418771.html
- observer运行日志:清理旧日志;
- clog事务日志:查看
__all_virtual_server_clog_stat
,清理旧日志,再合并。
数据盘满时,可以扩容,将旧数据迁走,再合并。文章来源地址https://www.toymoban.com/news/detail-418771.html
到了这里,关于OceanBase集群管理日常运维操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!