但 252 块盘全部 DISK_OK,说明 Pangu 还没把 nvme9n1 标记为故障。Abnormal Chunks 只有 2 个且 副本数并未归零 → 全局数据安全,今晚可以睡个好觉。 5. 检查文件系统是否只读或掉盘lsblk | grep nvme9n1mount | grep nvme9n1如果盘已掉线(lsblk 看不到),或文件系统变只读,说明盘已不可恢复。
此篇博文讲的是Flume的负载均衡和故障转移。 单Source、Channel多Sink(负载均衡)如下图所示。 ? 1. 100 # Bind the source and sink to the channel a3.sources.r1.channels = c2 a3.sinks.k1.channel = c2 5.
1 简介 最近看到了一份收集Kubernetes故障案例的资料,资料由ZalandoTech的高级首席工程师Henning Jacobs加以维护。 k8s.af上的案例由工程师和实施者编写,描述了许多糟糕的经历:比如导致高延迟的CPU限制、阻止自动扩展的IP上限、应用程序日志丢失、pod被终止、502 错误、部署缓慢和生产环境故障等。 PrometheusKube讲述了一个奇怪的故障案例——有一天,某个节点莫名其妙地停止发送日志。工作团队使用fluent-bit来发送日志,注意到Elasticsearch未满足某些请求。 5 负载均衡系统配置错误导致完全中断 生产环境中断、停运、甚至生产环境部分中断都会大大影响用户体验,并抑制业务增长。 原文链接:https://containerjournal.com/editorial-calendar/best-of-2021/how-not-to-use-kubernetes-5-failure-stories
其中故障存在三种类别:Master故障、Segment故障、数据异常。之前我们已经聊过“Master故障”和“数据异常”的处理方式,今天将介绍Segment故障的处理方式。 二、本地模拟故障环境:2.1、第一种情况:段故障。 :master:gpadmin-[WARNING]:-4 mirror segment(s) acting as primaries are not synchronized2.2、第二种情况:表空间故障 gpadmin-[INFO]:- data05 56001 Up Process error -- database process may be down三、故障分析及解决 16 | 5 | m | m | s | u | 56002 | data03 | data03 | /greenplum/gpdata
RabbitMQ会mock一个节点代表A,执行 forget_cluster_node命令将B剔除cluster,然后A就可以正常的启动了,最后将新的Slave节点加入A即可恢复镜像队列 ---- 场景5: A先停、B后停,且A、B均无法恢复,但是能得到A或B的磁盘文件 方案5:这种场景更加难处理,只能通过恢复数据的方式去尝试恢复,将A与B的数据文件模式在$RABBIT_HOME/var/lib/目录中,
故障测试好处 故障测试是预防线上故障的关键手段。线上故障的不可预测性:线上系统在运行过程中可能面临各种不可预见的故障,例如硬件故障、软件缺陷、网络波动或外部攻击。 这些故障往往具有突发性和不可控性,可能对业务造成严重影响。故障测试的预防作用:通过故障测试,可以主动模拟各种可能的故障场景,验证系统在异常情况下的表现。 故障测试为线上故障的应对提供数据支持。故障场景的模拟与分析:通过故障测试,可以积累大量关于系统在故障情况下的行为数据。这些数据可以帮助团队更好地理解系统的弱点,并为制定应急预案提供依据。 实际故障的反馈作用:每一次线上故障的发生都为故障测试提供了真实的案例和反馈。通过分析故障原因,可以进一步完善故障测试的场景和方法。持续改进测试策略:线上故障的多样性和复杂性要求故障测试不断演进。 线上故障与故障测试之间的关系可以概括为“预防与反馈”的循环。故障测试通过模拟故障场景,帮助预防和减少线上故障的发生;而线上故障则为故障测试提供了真实的案例和改进方向。
3、本地模拟客户环境:3.1、本地Greenplum集群环境:1台Master;1台standby Master;5台segment计算节点,每个节点4个段,每个段有镜像,一共是40个段。 auto postgres[gpadmin@standby01 ~]$ cd /greenplum/gpdata/master/[gpadmin@standby01 master]$ ll总用量 04、故障分析及解决 4.2、清除有故障的主机的(备库)配置信息:[gpadmin@master01 ~]$ gpinitstandby -r执行过程省略,但有个选项需要确认:Do you want to continue 00:00:00 postgres: 5432, wal receiver process streaming 0/281E5D60gpadmin 18586 17298 0 19:06 pts 5、额外补充:如果Greenplum集群中master节点故障,处理思路:1)先把standby提升为新master,确保集群第一时间可用,提供对外服务;2)修复旧master,并添加到集群中成为新standby
故障恢复指恢复业务连续性的应急操作,很多故障是在不断尝试验证解决恢复的动作,所以故障恢复环节与故障定位环节有一定的交叠,或在这两个环节之间不断试错的循环,即故障恢复操作可能和故障诊断是同时,也可能是诊断之后或诊断之前 1.已知预案下的恢复三把斧 在故障管理过程中,通常大部分故障有一些明确的故障恢复预案,比如基础设施、服务器、网络设备、网络线路,以及应用系统层中关于服务可用性等故障因素,以及基于历史故障经验积累的方案。 以一个复杂故障应急场景中,很多时候故障处置的决策人员通常一方面协调人员现场分析问题,另一方面指挥启动已知预案的应急。 、数据完整性的故障恢复,这些故障恢复通常需要现场临时决断恢复。 结束 注:“3.4 事中处置”另外3个环节内容链接: 1.故障发现、故障响应 2.故障定位
mysqld] read_only=1 1 2 通过sql命令(配合第一种方式使用) 该命令需要超级管理员才有权限执行,在自动切换主从时有用 set global read_only=1; 1 # 故障恢复
---一、前情提要:我们知道 cassandra 具有分区容错性和强一致性,但是当数据所在主机发生故障时,该主机对应的数据副本该何去何从呢?是否跟宿主机一样变得不可用呢? 测试并查看集群中出现故障节点后的数据分布情况:94机器关闭服务:systemctl stop cassandra[cassandra@data01 ~]$ nodetool statusDatacenter ,因此可以看到,在 dc1 数据中心中,数据随机仍只分布在其中三个节点上,而 dc2 数据中心的数据将分布在了仅有的三个节点上,发生了数据转移;如果此时 dc2 数据中心还有节点继续故障,那么故障节点上的数据不可能再移动到其他节点上了 ,dc1 是不变的,owns 还是300% ,但是 dc2 的 owns都是100% ,没办法故障转移了,只能存在自身的数据了;此时重启所有主机,所有主机 Cassandra 服务都会开启,包括之前故障模拟的节点也会自启 ,那么此时就会达到了另一种效果:故障模拟节点后的状态,再添加到了集群中,那么此时数据又会进行了自动的分发。
检查内存(RAM)内存故障可能导致系统崩溃、蓝屏或性能下降。使用内存测试工具使用内存测试工具(如 memtest86+)进行内存检测。 5. 检查主板主板故障可能导致多种问题,包括无法启动、设备无法识别等。检查主板上的指示灯一些主板上有指示灯,可以帮助您诊断问题。例如,内存错误、CPU错误等。 检查外设外设故障可能导致系统不稳定或无法识别设备。检查USB设备断开所有USB设备,然后逐个重新连接,以排除故障设备。检查显卡如果使用独立显卡,确保显卡驱动程序已正确安装,并且显卡连接牢固。7. 替换故障部件如果确定某个部件故障,可以尝试更换该部件。更换内存条如果内存测试失败,更换内存条。更换硬盘如果硬盘检测到错误,更换硬盘。更换电源供应器如果电源供应器有问题,更换电源供应器。10. 送修将故障设备送至专业的维修中心进行检查和维修。
一、本文概述及主要术语 1.1 概述 本文基于 Pod 、Service 和 Ingress 三大模块进行划分,对于 Kubernetes 日常可能出现的故障问题,提供了较为具体的排查步骤,并附上相关解决方法或参考文献 二、故障诊断流程 2.1 Pods 模块检查 以下流程若成功则继续往下进行,若失败则根据提示进行跳转。 0/1 Pending 0 5m kubectl describe pod <pod-name>:若正确输出指定的一个或多个资源的详细信息,则判断是否集群资源不足 [root@10-186-65-37 ~]# kubectl logs myapp-deploy-55b54d55b8-5msx8 127.0.0.1 - - [30/Sep/2021:06:53:16 2.3.5 检查能否在外网通过 Ingress 进行访问 可从外网成功访问,故障排查结束。
当你解决故障的时候,一定要防止对方对问题提前下结论,如果对方局部的证明是能证明结论是正确的,那从全局来看呢?不要在二手信息上深入讨论,不要用二手信息作为重要依据。 那从整体来看,需要怎么故障改进? 第一,优化故障获知和故障定位的时间。 从故障发生到我们知道的时间是否可以优化得更短? 定位故障的时间是否可以更短? 有哪些地方可以做到自动化? 第二,优化故障的处理方式。 故障处理时的判断和章法是否科学,是否正确? 故障处理时的信息是否全透明? 故障处理时人员是否安排得当? 第三,优化开发过程中的问题。 做个简短的总结:循序渐进的让故障定位时间变短,持续改善,不要出现好像又是人品的问题,莫名的日了狗,不存在的,归根结底是自己的基础理论修养不够。关于严谨程度,是工程师很重要的品质。
由于异常关机,在Kali开机后会显示错误提升BusyBox u1.37.0 (Debian 1:1.37.0-4) built-in shell (ash)Enter help’for a list of built-in commands (initramfs) 等字样。如下图:
前阵子处理这样一个案例,某客户的实例 mysqld 进程内存经常持续增加导致最终被 OOM killer。作为 DBA 肯定想知道有哪些原因可能会导致 OOM(内存溢出)。
三、故障复盘运作机制3.1 故障复盘前准备3.1.1 提交故障报告故障直接原因方(非最终认定的故障责任方)在故障发生后3个工作日内提交故障报告。如故障原因涉及多个部门,需跨部门共同协助撰写故障报告。 复盘会议后,结合故障处理报告形成故障复盘报告定稿,发给所有故障干系人及相关领导。3.1.3 确定故障干系人复盘owner确定故障直接原因方、关联(受影响)方等与故障有关的干系人。 可以基于5why分析法深挖根因,多问几个为什么,层层递进。5why分析法释义详见附录。3.2.5 改进项汇总提升系统可靠性的两个关键手段:降低故障发生概率(MTBF)和缩短故障持续时间(MTTR)。 附录:相关名词解释一、5why分析法:所谓5why分析法,又称“5问法”,也就是对一个问题点连续以5个“为什么”来自问,以追究其根本原因。 虽为5个为什么,但使用时不限定只做“5次为什么的探讨”,主要是必须找到根本原因为止二、MTBF:即平均无故障时间,即平均无故障工作时间,是衡量一个产品(尤其是电器产品)的可靠性指标。单位为“小时”。
擅长数据库故障处理。对数据库技术和 python 有着浓厚的兴趣。本文来源:原创投稿*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 ---前言最近解决了一个比较基础的问题故障,由于排查过程挺有意思,于是就以此为素材写出了本篇文章。故障现场防火墙什么的均正常但是无法被远程访问到。简单的使用客户端登录了一下。 ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)根据以往经验大脑中浮现了几个常见的排查此类故障手法1.排查进程存在 解决方案因为配置 skip-grants-tables 引起无法远程连接 mysql 服务端的故障,解决方法也是非常的简单注释重启。
擅长数据库故障处理。对数据库技术和 python 有着浓厚的兴趣。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 ---- 前言 最近解决了一个比较基础的问题故障,由于排查过程挺有意思,于是就以此为素材写出了本篇文章。 故障现场 防火墙什么的均正常但是无法被远程访问到。简单的使用客户端登录了一下。 ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111) 根据以往经验大脑中浮现了几个常见的排查此类故障手法 1. 解决方案 因为配置 skip-grants-tables 引起无法远程连接 mysql 服务端的故障,解决方法也是非常的简单注释重启。 本文关键字:#故障排查# ---- 文章推荐: 技术分享 | 国产麒麟 arm 上编译安装 xtrabackup8 技术分享 | MySQL 会受到“Unix千年虫“的影响吗 技术分享 | MHA-MasterFailover
故障定位指诊断故障直接原因或根因,故障定位有助于故障恢复动作更加有效。故障定位通常是整个故障过程中耗时最长的环节,定位的目标围绕在快速恢复的基础上,而非寻找问题根因,后者由问题管理负责。 通常大部分可用性故障,要借助运维专家经验的假设判断或已知预案的执行得到解决,但仍有部分故障,尤其是性能、应用逻辑、数据故障需要多方协同与工具支持。 判断应用逻辑层面的异常,比如功能、菜单级别的故障,如何更加主动、从容的找到逻辑上的故障点,并作出应急。 消费&落地关系数据库、内存数据库、日志数据,与关系/链路的配置数据多维关联,形成评价系统是否“健康”的多维度指标 5)知识管理 知识管理是一个大家都知道应该要做,但大部分都没做好的事情。 如果运维知识图谱准确性有保证,可以预见还能够支持数据源/指标/文本异常检测、基于人工故障库/数据挖掘的故障诊断、故障预测、故障自愈、 成本优化、资源优化、容量规划、性能优化等场景。
故障解析丨Clone节点导致主从故障 1.背景概述 在一次主从复制架构中,由于主节点binlog损坏,导致从节点无法正常同步数据,只能重做从节点;因此使用MySQL 8.0.17开始提供的clone技术进行恢复 08-08 16:01:39 | | 3 | 2023-08-08 16:02:39 | +----+---------------------+ 3 rows in set (0.00 sec) 5. binlog.000001, end_log_pos 2606; Could not execute Write_rows event on table test.test; Duplicate entry '5' 9.故障解决 greatsql> alter event event_test DISABLE; Query OK, 0 rows affected (0.01 sec) 关闭从节点的定时任务event 3.总结 1.如果主库有定时任务,通过clone的方式搭建从库,在从库恢复之后需要关闭定时任务,避免主从同时执行定时任务导致主从故障。