OBCP第八章 OB运维、监控与异常处理-日常运维操作

这篇具有很好参考价值的文章主要介绍了OBCP第八章 OB运维、监控与异常处理-日常运维操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

白屏: 集群、Zone、Observer 常用运维操作

OBCP第八章 OB运维、监控与异常处理-日常运维操作

 常用运维操作

运维场景 步骤
时钟同步

OceanBase从Partition的多个副本中选出主对外提供服务。为避免Paxos的活锁问题,OceanBase 采用一种基于时钟的选举算法选主

检查 NTP 状态:运行 ntpstat 检查 NTP 服务器状态。如果结果为 synchronised to NTP server,则可以认定 NTP 的配置处于同步状态

检查 NTP 的偏移量:多次执行 ntpq -p|grep -E “\*|\=|remote“ 命令,确保可以看到稳定的 offset。若 offset 值小于 50ms 则为时钟同步正常

内存不足

OB是准内存数据库,任何写操作都需要消耗内存资源,只有合并和转储操作能够释放内存资源,所以当合并和转储速度长时间低于内存消耗速度时,内存最终将被耗尽,服务能力跌零调大租户内存 转储 / 合并

外存(磁盘)不足

运行日志盘满:可清空较老的日志clog盘满:查询表__all_virtual_server_clog_stat,清除较老的日志,再合并数据文件满:扩容,或将较老的数据迁移到历史库,再合并

黑屏:集群运维管理

在集群中启动或停止Zone的操作通常用于允许或禁止Zone内的所有物理服务器对外提供服务的需求场景

启动或停止Zone:

alter system start zone zone1;
alter system stop zone zone1;

修改Zone信息

ALTER SYSTEM {ALTER|CHANGE|MODIFY} ZONE [Zone_Name] SET [Zone_Option_List];
Zone_option_list : region, IDC, Zone_type (READONLY, READWRITE)

查看Zone的状态

Select * from __all_zone;

黑屏:Observer运维管理

查看OBServer的信息:

select * from __all_server; 
select * from __all_server_event_history;

管理OBServer状态: 进程启动后,对OBServer的管理类似对Zone的管理

Start Server操作:

ALTER SYSTEM START SERVER 'ip:port' [,'ip:port'…] [ZONE='zone'];
示例:alter system start server '192.168.100.1:2882';

Start Server操作:

ALTER SYSTEM START SERVER 'ip:port' [,'ip:port'…] [ZONE='zone'];
示例:alter system start server '192.168.100.1:2882';

Stop Server操作:

ALTER SYSTEM STOP SERVER 'ip:port' [,'ip:port'…] [ZONE='zone']; 
示例:alter system stop server '192.168.100.1:2882' zone='z1';

黑屏:Observer服务管理(进程)

查看OBServer进程:登录OceanBase Server所在的宿主机

ps -ef |grep observer

启动OBServer进程:登录 OceanBase Server主机

cd /home/admin/oceanbase/
./bin/observer [启动参数]
./bin/observer --help 查看 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服务前执行转储(alter system minor freeze;),以加快 OBServer 服务恢复过程

黑屏:服务停止(停机运维)

机器需要运维操作时,需要停止OceanBase服务进程:

1. 系统租户登陆,确定运维时长,如果大于1小时但小于1天,为了避免服务恢复后的补副本操作,需要设置永久下线时间 (alter system set server_permanent_offline_time = '86400s’;)

2. 将服务从当前 OBServer 切走,保证停服务的时候,对于业务没有影响(alter system stop server'ip地址:2882';)内含切主动作

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 <observer pid>

黑屏:服务恢复(停机运维结束)

机器需要运维操作结束后,需要恢复OceanBase服务进程:

  1. 机器上电
  2. 检查该机器ntp同步状态和服务运行情况
  3. admin用户启动OBServer进程
  4. 系统租户登陆,启动server(alter system start server ‘ip地址:2882’;)
  5. 检查__all_server表,查看status为‘active’且‘start_service_time’的值>0,则表示OBServer正常启动并开始提供服务
  6. 将永久下线时间改回默认值3600s( alter system set server_permanent_offline_time = '3600s’;)

黑屏:故障节点替换

首先要确保集群中有足够的冗余资源(OBServer),可以代替故障节点进行工作:
1.系统租户登陆,stop server,确保主副本都切走

2. 为目标zone添加新的server(alter system add server 'ip地址:2882' ZONE 'zone1'; )

3. 将故障server下线(alter system delete server 'ip地址:2882' ZONE 'zone1'; ),OB 会自动将被下线OBServer的 Unit 迁移至新添加的 OBServer 上

4. 检查__all_server表检查server状态,旧 OBServer 的信息已经消失文章来源地址https://www.toymoban.com/news/detail-401928.html

到了这里,关于OBCP第八章 OB运维、监控与异常处理-日常运维操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【LeetCode题目详解】第八章 贪心算法 part06 738.单调递增的数字 968.监控二叉树 (day37补)

    当且仅当每个相邻位数上的数字  x  和  y  满足  x = y  时,我们称这个整数是 单调递增 的。 给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 。 示例 1: 示例 2: 示例 3: 提示: 0 = n = 109 # 暴力解法 题意很简单,那么首先想的就是暴力解法了,来我替大家

    2024年02月10日
    浏览(41)
  • OpenGL超级宝典第八章学习笔记:基元处理之曲面细分

    前言 本篇在讲什么 OpenGL蓝宝书第八章学习笔记之曲面细分 本篇适合什么 适合 初学OpenGL 的小白 本篇需要什么 对 C++ 语法有简单认知 对 OpenGL 有简单认知 最好是有 OpenGL超级宝典 蓝宝书 依赖 Visual Studio 编辑器 本篇的特色 具有全流程的 图文教学 重实践,轻理论,快速上手

    2024年02月07日
    浏览(47)
  • (数字图像处理MATLAB+Python)第八章图像复原-第一、二节:图像复原概述和图像退化模型

    图像复原 :在图像生成、记录、传输过程中,由于成像系统、设备或外在的干扰,会导致图像质量下降,称为 图像退化 ,如大气扰动效应、光学系统的像差、物体运动造成的模糊、几何失真等。图像复原是指通过使用图像处理技术来恢复受损图像的原始信息,使其尽可能接

    2024年02月12日
    浏览(72)
  • (数字图像处理MATLAB+Python)第八章图像复原-第五、六节:盲去卷积复原和几何失真校正

    盲去卷积复原 :当我们考虑图像复原中的盲去卷积复原时,我们可以使用以下数学符号和方程来描述该问题 原始图像 :我们用I表示原始图像,其中I是一个二维离散函数。 I ( x , y ) I(x, y) I ( x , y ) 表示在坐标 ( x , y ) (x, y) ( x , y ) 处的图像强度值 模糊核 :我们用 H H H 表示未

    2024年02月04日
    浏览(59)
  • (数字图像处理MATLAB+Python)第八章图像复原-第三、四节:图像复原代数方法和典型图像复原方法

    图像复原代数方法 :根据退化模型,假设具备关于 g g g 、 H H H 、 n n n 的某些先验知识,确定某种最佳准则,寻找原图像 f f f 的最优估计 无约束最小乘方复原 :是一种用于恢复受损图像的方法。它基于最小化平方误差的原则,以尽可能接近原始图像为目标。假设我们有一个

    2024年02月05日
    浏览(103)
  • 运维良药,K8S日常故障处理集锦

    问题1:K8S集群服务访问失败? 原因分析 :证书不能被识别,其原因为:自定义证书,过期等。 解决方法 :更新证书即可。 问题2:K8S集群服务访问失败? curl: (7) Failed connect to 10.103.22.158:3000; Connection refused 原因分析 :端口映射错误,服务正常工作,但不能提供服务。 解决

    2024年01月17日
    浏览(39)
  • 第八章 图像压缩

    数据冗余R为 R = 1 − 1 C R=1-cfrac1C R = 1 − C 1 ​ C为压缩率,定义为 C = b b ′ C=cfrac{b}{b\\\'} C = b ′ b ​ 二维灰度阵列受如下可被识别和利用的三种主要类型的数据冗余的影响: 编码冗余。编码是用于表示信息实体或事件集合的符号系统(字母、数字、比特和类似的符号等)。每个信

    2024年02月10日
    浏览(51)
  • 第八章 常见Linux命令

    1 了解Linux帮助类命令 2 熟悉开关机命令 3 熟练文件目录类命令 4 熟悉时间日期类命令 5 熟悉用户管理命令 6 熟悉组管理命令 7 熟练文件权限命令 8 熟悉搜索查找类命令 9 熟练压缩和解压缩命令 10 熟悉磁盘分区类命令 11 熟练进程线程类命令 12 了解系统定时任务命令 man获取帮

    2024年02月11日
    浏览(40)
  • 第八章:Linux信号

    linux信号是OS的重要功能。 使用kill -l查看所有信号。使用信号时,可使用信号编号或它的宏。 1、Linux中信号共有61个,没有0、32、33号信号。 2、【1,31】号信号称为普通信号,【34,64】号信号称为实时信号。 每个信号都有一个编号和一个宏定义名称,这些宏定义可以在signal.h中

    2024年02月13日
    浏览(51)
  • C国演义 [第八章]

    力扣链接 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润 返回你可以从这笔交易中获取的最大利润。如果你不能获

    2024年02月15日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包