专栏首页葫芦teg 一次云故障引起的思考

teg 一次云故障引起的思考

很多朋友经历了昨晚阿里云3小时左右的故障,我司的业务也受到了一定影响,技术的同事一起熬夜奋战,最终观察服务稳定运行了两个多小时,直到凌晨五六点多才逐渐登出V**。

一次事故如一场战役,不管是在故障过程中的处理,还是故障后的总结,除了骂阿里云,我们自己有没有可以改进的空间呢?结合我司昨夜的处理过程,说一下自己的一点想法。

画外音:技术人,还是聊技术,决定不了别人,我们做好自己。

凌晨,收到运维负责人的电话,阿里云部分机房故障,并从阿里云同事收到反馈,问题仍在定位,恢复时间不确认。

画外音:关键时刻,手机欠费了,运维负责人还帮我充了200话费,才打通,真曲折。

整个过程中,我们能做什么呢?

1. 第一时间反馈业务方:例如客服,运营等,如果收到用户反馈,能够及时说明情况;

2. 确定影响范围:因为不是所有服务器都受影响,确定范围后好针对性检查;

这里面,潜在的技术问题是:

1. 运维在第一时间收到服务器告警了么,研发与测试在第一时间收到站点与服务告警了么?为什么没有收到,是没有告警,还是告警覆盖缺失?

画外音:如果让业务方先发现问题,反问技术部,服务怎么出问题了,是何等尴尬?

2. 能够快速确定受影响的服务器IP么?以及受影响的业务范围么?

我们的运维同学立刻通过脚本,确定了大概有50来台服务器受影响。

DBA同学也立刻确认了,RDS数据库服务没有受到影响。

画外音:

(1)未来要自动化,可视化;

(2)除了能从前端发现A、B、C功能不可用,能从后端精准确定哪些服务,多大比例的流量受影响么?

潜在的非技术问题

1. 技术团队和业务方建立了反馈渠道么,沟通是否顺畅?

2. 有没有“线上服务第一”的意识,有没有“系统值班”的制度,还是说,关着手机睡觉?

画外音:

(1)昨晚绝大多数二级,三级部门负责人都第一时间投入战斗,很赞;

(2)技术人,关着手机睡觉,是不可接受的。

过了一个多小时了,阿里云仍未反馈修复时间,这个时间大家都有点着急了,那除了干等着,我们自己能做些什么呢?

因为只有部分区域的服务器异常,能不能申请一些新的服务器,将受影响服务器上的站点与服务重新部署,通过服务治理将流量切到新的服务上,是不是能恢复(至少部分恢复)呢?

整个过程中,我们能做的是:

1. 申请新服务器;

2. 确认受影响的站点与服务、重新部署;

3. 服务治理,将流量迁移;

这里面,潜在的技术问题是:

1. 能不能快速进行服务器扩容;

画外音:昨晚我们迅猛购买了50台ECS,这是云的好处。

2. 知道了受影响的服务器IP,如何能够快速确定这些IP上部署了哪些站点与服务?这些站点与服务的上下游是什么,连带影响范围是什么?

画外音:这是有待提高的地方,每个负责人都知道自己的IP上部署了什么,但并不可视化。

3. 如何快速站点与服务扩容与缩容,如何服务发现,如何迁移流量?

画外音:服务治理,任重道远。

又过了大概半个小时,我们购买完服务器,梳理站点与服务的过程中,阿里云专家反馈,“问题定位有了关键进展,不出意外的话30分钟恢复”。此时我们内部评估,30分钟50台ECS的初始化,服务部署,流量迁移恐怕完不成,还是等阿里云好了。

果真大概半个小时,阿里云专家反馈恢复了,这时我们要做的:

1. 确定站点与服务是否运行;

2. 确定日志是否异常;

3. 确定业务在线业务是否异常;

4. 一些容易遗漏的点的再三检查:例如MQ的消费,定时任务的执行。

画外音:有些定时任务可能需要手动再次执行。

这里面的很多工作,是通过手工,还是脚本自动化,还是平台可视化来判断与执行?技术平台的迭代,仍重而道远。

服务观察稳定后一段时机,大部分技术同学陆陆续续登出V**下线了。朋友圈、微博上开始对阿里云进行声讨,都在提自己的优化方案:

1. 是时候换一个云了;

换一个云能解决问题么?用其他云的朋友,可以评论反馈下故障频率。

我相信,各家有各家的问题,我甚至愿意相信,阿里云的故障率是相对较低的。

2. 是时候自建机房了;

自建机房能解决问题么?自建机房的朋友,可以评论反馈下故障频率。

说实话,让我自建机房,我目前真没有信心做得比阿里云更好。

3. 是时候多机房多活了;

“多机房多活”不是四个字这么简单,需要多大的成本,需要多少技术基础服务支撑,需要多大的架构改造,有考虑过么?

画外音:58同城15年做机房迁移时做过多机房多活,我还算有一定发言权。

我相信,目前99.9%的公司,目前的业务阶段,目前的投入产出比,不适合做多机房多活。

骂阿里云不解决问题,这次事故过程中发现的自身的问题,我们要继续去改进。

特别是服务治理体系,可视化监控与运维体系,任重而道远。

引用自:沈剑

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • sql mysql统计表记录数

    葫芦
  • teg 计算机试题

    1.20端口是_________    TCP的20 = ftp数据传输 2.PING是使用TCP/IP协议中的______协议          ...

    葫芦
  • linux 常用查看命令

    葫芦
  • 教你快速搭建自己的个人专属微信公众号机器人

    前些天闲来无事想弄个微信公众号机器人,因为可以用机器人做好多事情,比如可以让它变成一个智能聊天机器人,也可以让它爬取并推送arxiv上自己想要的论文,还可以让它...

    DeePR
  • Zookeeper 介绍与内部原理

    Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目。

    木野归郎
  • 物联网通信协议介绍

    为了方便,将物联网通信协议分为两大类,一类是接入协议,一类是通讯协议。接入协议一般负责子网内设备间的组网及通信;通讯协议主要是运行在传统互联网TCP/IP协议之...

    刘盼
  • GCAC91 21.1 Identification and AKE

    假设Alice和Bob希望通过不安全的网络进行安全通信。他们想以某种方式使用安全通道。在第9章中,我们了解了如果Alice和Bob已经拥有共享密钥,他们将如何做...

    安包
  • 9种高性能可用高并发的技术架构,让你成为架构师迈进一大步

    分层架构是逻辑上的,在物理部署上,三层架构可以部署在同一个物理机器上,但是随着网站业务的发展,必然需要对已经分层的模块分离部署,即三层结构分别部署在不同的服务器...

    企鹅号小编
  • 史上最全的网络端口号大全

    L宝宝聊IT
  • 【计网复习1】七层模型主要协议

    物理层协议:RJ45,CLOCK,IEEE802.3(中继,集线器,网关) 数据链路层协议:PPP,FR,HDLC,VLAN,MAC(网桥,交换机) 网络层...

    韩旭051

扫码关注云+社区

领取腾讯云代金券