SRE稳定性建设(故障自愈, 灾备建设), 排查思路示例:服务器故障

news/2024/12/25 23:04:20/文章来源:https://www.cnblogs.com/ludingchao/p/18631618

排查思路示例:服务器故障

口网站服务器崩溃的可能性原因■服务器硬件故障或者系统内核Bug■并发的多线程出现了死锁,或者后端数据库崩溃■存放业务数据变动的磁盘空间耗尽■流量过高,系统超载◆服务器硬件配置过低,正常流量增长下的系统超载◆正常的短暂性流量突增◆遭受攻击,出现异常流量尖峰■触发了应用程序未曾测试出的潜在Bug,例如死循环或内存泄露等导致系统资源耗尽■系统参数设置不合理,例如fd数量过低,,或者是并发连接数上限过低■人为误操作等口处理思路■若处于“假死”状态,可以kill并restart业务进程;■分析监控数据,尤其是注意排查宕机前的异常指标数据,比如CPU或内存尖峰等■查看系统日志,获取详细信息◆查看/var/log/messagcs文件,分析宕机前后的系统日志,注意排查错误信息◆若启用了kdump,还要分析宕机生成的crash文件 #需要系统级工程师◆硬件故障相关的日志通常位于/var/log/dmcsg

 

稳定性建设

故障自愈

口基于“主备”的冗余设计存在切换不成功、切换后状态不一致等通病要主节点故障导致主备切换后,一般需要尽早跟进问题并修复节点
口基于“负载均衡”的设计
口基于平台的设计云平台,包括k8s系统上的自动恢复和扩缩容功能本身就是故障自愈的实现
口基于业务架构的设计许多分布式自身就能支持自愈机制,且大部分都涉及到了CAP原则例如Zookeeper、Etcd等

 灾备建设

口同机房灾备通常在同一机房跨机架基于两个以上的服务做主备集群运维工程师需要了解服务器的真实物理连接和部署拓扑容灾能力:同一机房内涉及到的单机或单机柜口同城双活将业务部署至同一城市的两个机房中距离要足够远(不会被同一故障影响),又不太远(方便管理及建立起高速专用线路),50公里以内能确保网络延迟低于3ms两个机房间的通信链路需要高可用和高容量,需要双线,且应该基于不同的ISP链路口异地数据灾备数据成为业务的关键资源时,进行异地灾备,能给影响到全市范围的灾害事件后储备恢复业务的基础口两地三中心两个城市,三个数据中心的灾备方式,可以在城市级的灾害中,快速恢复上线业务,甚至是确保线上业务不离线需要从数据底层开始设计,通常的设计是数据库多写,然后互相进行数据同步需要对业务模块有清晰的认识,尽量降低应用请求的跨机房操作需要定制专门的数据同步工具,要支持数据路由和多路复制等功能口分布式多活理论上出现故障,系统均能通过切换流量和数据的方式,确保业务继续运行系统自带数据同步和数据一致性逻辑,通常会基于Raf、Paxos等协议实现,支持全自动的灾备切换

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/858896.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于EO平衡优化器算法的目标函数最优值求解matlab仿真

1.程序功能描述 基于EO平衡优化器算法的目标函数最优值求解matlab仿真。提供九个测试函数,分别对九个测试函数仿真输出最优解以及对应的优化收敛曲线。 2.测试软件版本以及运行结果展示MATLAB2022A版本运行3.核心程序while j2<Niters% 主循环进行迭代% 时间衰减参数计…

蓝桥杯 第 24 场 强者挑战赛 题解上(1-3题)

原题链接 https://www.lanqiao.cn/oj-contest/senior-24/ 标记名字【算法赛】一条横幅,在1/N,2/N, 3/N(N-1)/N的地方标记一次,若之前标记过这则不用再标记,求f(N)=此时新标记的个数。上思路读懂题后,重点在于确定该题的思考方向,也就是,新标记的点分子和分母有什么特点…

python通过内存映射在父子进程间共享数据

代码:import mmap import osmm = mmap.mmap(-1, 13) mm.write(b"pid:") mm.write(str(os.getpid()).encode(utf-8))pid = os.fork()if pid == 0: #子进程,这个fork和php的很像mm.seek(0)print(mm.readline().decode(utf-8))print(id:%s % os.getpid())mm.close() …

wordpress如何使用SMTP发送邮件?

安装之后进行简单的设置,即可实现使用第三方邮箱账户发送邮件的目的。 SMTP邮件发送设置 文章来自 www.koheng.com如何使用SMTP发送邮件?

jenkins集成自定义shell脚本

在jenkins工作空间中动态生成shell脚本shell语法cat > h5build.sh <<EOFcurrent=\`date "+%Y-%m-%d %H:%M:%S"\`timeStamp=\`date -d "\$current" +%s\` currentTimeStamp=\$((timeStamp*1000+\`date "+%N"\`/1000000))echo \`cat ve…

python多进程,使用pipe进行进程间的通讯

import multiprocessing import time python多进程 pipe在多进程中,进程间的通信是一个常见的需求。管道(Pipe)提供了一种简单有效的进程间通信方式, 允许数据在进程间传递。通过使用管道,我们可以让一个进程发送数据,另一个进程接收。以下是一个使用管道在两个进程之间传…

Jenkins 无法搜索插件, 错误信息ERROR: Signature verification failed in update site

Jenkins 无法搜索插件, 错误信息ERROR: Signature verification failed in update site 参考文档 https://blog.csdn.net/weixin_43537484/article/details/120370719 /etc/sysconfig/jenkins

CentOS 7.9升级内核到4.18.0

参考:https://docs.shanhe.com/v6.1/compute/vm/best-practices/linux/kernel_upgrade/ 需求:内核版本3.10.0 ==> 4.18.0 操作步骤 1、查看当前内核版本 uname -runame -acat /etc/redhat-releaserpm -qa | grep kernel # 查看系统中全部的内核2、升级内核 a、更新yu…

wordpress固定链接设置

通过上面的测试发现,切换不同链接结构,同一张网页但是网址却发生了改变。 为什么要改变网址的结构? 主要原因,是为了搜索引擎优化。搜索引擎不喜欢带有问号的网址,也不喜欢层级特别深的网址。所以,WordPress允许你去设置网址的结构,让网址更符合搜索引擎的要求(官方说法…

【安全工具】蚁剑二开:添加自定义编码/解码器

以下文章来源于Spade sec ,作者0xsdeo 前言 我大概已经写了两三个月关于JS逆向的文章,正好前两天抽空研究了一下关于蚁剑如何添加编码/解码器,所以年底这几天就分享一些关于安全的内容,应该也是我放假前的最后两篇文章。 注:本人目前没有看过任何关于蚁剑二开文章,以下内…

【项目推荐】搭建自己的个人主页

你是否想过将自己的简历做成一个单页面的网站?在这个网站上可以自定义你想展示的内容,不只求职信息,求偶信息也可以!试试下面的代码吧。 本文首发于微信公众号 呼哧好大枫,原作者与本文作者系同一人。项目地址:http://hlt.cab/ 代码开源地址:中文:https://gitee.com/kk…

vue3 vite使用postcss-px-to-viewport 实现页面自适应

三、如何在 Vue3 中使用 postcss-px-to-viewport? 首先,我们需要安装相关的插件: npm install postcss-px-to-viewport -D 在vite.config.js文件中进行配置 import vue from @vitejs/plugin-vue // vite.config.ts import { defineConfig } from vite import AutoImport fro…