阿里云,又瘫了!

news2024/11/26 0:44:28

大家好,我是老杨。

不知道你对前段时间,阿里云瘫痪的事情有印象不?

12月18号,阿里云发生了大规模服务中断的事情——主要是阿里云香港Region可用区C发生大规模服务中断事件。

中断也不是第一次了,但引起我注意的是,12月29号的时候,阿里集团的CEO张勇发的全员邮件,宣布组织变化,并将新年关键字定为“进”。

据一位阿里云员工证实,上述全员信发出之后,阿里云员工也收到了一封来自张勇约 800 字的内部信。

信中超过 20 次强调了客户的重要性,且措辞严厉,显然是对这一次阿里云的故障处理以及工作作风非常不满。

足以见得这次事故的严重程度。

其实阿里云瘫痪不止这一次,但是为什么这次我想分享给你?

因为,阿里云官方发了一篇关于此次设备故障的全面复盘,个人觉得对我的网工同行们,多少都有学习和借鉴的意义。

除了工作能接触到技术提升,关注行业动态,一样可以。

今日文章阅读福利:《 图解网络系列全套书籍(电子版) 》

私信老杨,发送“图解”,即可获得网工行业经典读物《图解HTTP》《图解TCP/IP》《图解网络硬件》三件套。

以下为阿里云官方复盘,进一步说明了故障情况、问题分析和改进措施,希望看完能对你有所启发。

01 处理过程

12月18日08:56:阿里云监控到香港Region可用区C机房包间通道温控告警,阿里云工程师介入应急处理,通知机房服务商进行现场排查。

09:01:阿里云监控到该机房多个包间温升告警,此时工程师排查到冷机异常。

09:09:机房服务商按应急预案对异常冷机进行4+4主备切换以及重启,但操作失败,冷水机组无法恢复正常。

09:17:依照故障处理流程,启动制冷异常应急预案,进行辅助散热和应急通风。尝试对冷机控制系统逐个进行隔离和手工恢复操作,但发现无法稳定运行,联系冷机设备供应商到现场排查。此时,由于高温原因,部分服务器开始受到影响。

自10:30开始:为避免可能出现的高温消防问题,阿里云工程师陆续对整个机房计算、存储、网络、数据库、大数据集群进行降载处理。期间,继续多次对冷机设备进行操作,但均不能保持稳定运行。

12:30:冷机设备供应商到场,在多方工程师诊断下,对冷塔、冷却水管路及冷机冷凝器进行手工补水排气操作,但系统仍然无法保持稳定运行。阿里云工程师对部分高温包间启动服务器关机操作。

14:47:冷机设备供应商对设备问题排查遇到困难,其中一个包间因高温触发了强制消防喷淋。

15:20:经冷机设备商工程师现场手工调整配置,冷机群控解锁完成并独立运行,第1台冷机恢复正常,温度开始下降。工程师随后继续通过相同方法对其他冷机进行操作。

18:55:4台冷机恢复到正常制冷量。

19:02:分批启动服务器,并持续观察温升情况。

19:47:机房温度趋于稳定。同时,阿里云工程师开始进行服务启动恢复,并进行必要的数据完整性检查。

21:36:大部分机房包间服务器陆续启动并完成检查,机房温度稳定。其中一个包间因消防喷淋启动,未进行服务器上电。因为保持数据的完整性至关重要,工程师对这个包间的服务器进行了仔细的数据安全检查,这里花费了一些必要的时间。

22:50:数据检查以及风险评估完成,最后一个包间依据安全性逐步进行供电恢复和服务器启动。

02 服务影响

12月18日09:23,香港Region可用区C部分ECS服务器开始出现停机,触发同可用区内宕机迁移。随着温度继续升高,受影响的服务器停机数量持续增加,客户业务开始受到影响,影响面扩大到香港可用区C的EBS、OSS、RDS等更多云服务。

阿里云香港可用区C的故障,没有直接影响客户在香港其他可用区运行的业务,但影响了香港Region ECS管控服务(Control Plane)的正常使用。

因大量可用区C的客户在香港其他可用区新购ECS实例,从12月18日14:49开始,ECS管控服务触发限流,可用性最低跌至20%。

客户在使用RunInstances/CreateInstance API购买新ECS实例时,如果指定了自定义镜像,部分实例在购买成功之后会出现启动失败的现象,由于自定义镜像数据服务依赖可用区C的单AZ冗余版本的OSS服务,无法通过重试解决。

此时,部分Dataworks、k8s用户控制台操作也受到了故障影响。API完全恢复可用为当日23:11

12月18日10:37,阿里云香港可用区C的部分存储服务OSS开始受到停机影响,此时客户暂不会感知,但持续高温会导致磁盘坏道,影响数据安全,工程师对服务器进行停机操作,从11:07至18:26中断了服务。

阿里云在香港Region可用区C提供了2种类型的OSS服务,一种是OSS本地冗余LRS服务(通常叫单AZ冗余服务),仅部署在可用区C;

另一种是OSS同城冗余ZRS服务(通常叫3AZ冗余服务),部署在可用区B、C和D。

在此次故障中,OSS同城冗余ZRS服务基本没有受到影响。可用区C的OSS本地冗余服务中断时间较长,因不支持跨可用区切换,需要依赖故障机房的恢复。

18:26开始,存储服务器重新分批启动。其中,单AZ本地冗余LRS服务有部分服务器因消防问题需要做隔离处理。恢复服务前,我们必须要确保数据可靠性,花费了较多的时间进行完整性检验工作。

直至12月19日00:30,这部分OSS服务(单AZ冗余服务)才恢复了对外服务能力。

阿里云网络少量单可用区产品(如:VPN、Privatelink以及少量GA实例)在此次故障中受到影响。

12月18日11:21,工程师启动网络产品可用区容灾逃逸,12:45完成SLB等大部分网络产品可用区容灾逃逸,13:47NAT产品完成收尾逃逸。除上述少量单可用区产品以外,各网络产品在故障期间保持了业务连续性,NAT有分钟级业务受损。

12月18日10:17开始,阿里云香港Region可用区C部分RDS实例出现不可用的报警。

随着该可用区受故障影响的主机范围扩大,出现服务异常的实例数量随之增加,工程师启动数据库应急切换预案流程。

截至12:30,RDS MySQL与Redis、MongoDB、DTS等跨可用区实例完成跨可用区切换。

部分单可用区实例以及单可用区高可用实例,由于依赖单可用区的数据备份,仅少量实例实现有效迁移。少量支持跨可用区切换的RDS实例没有及时完成切换。

经排查是由于这部分RDS实例依赖了部署在香港Region可用区C的代理服务,由于代理服务不可用,无法通过代理地址访问RDS实例。

我们协助相关客户通过临时切换到使用RDS主实例的地址访问来进行恢复。随着机房制冷设备恢复,21:30左右绝大部分数据库实例恢复正常。

对于受故障影响的单机版实例及主备均在香港Region可用区C的高可用版实例,我们提供了克隆实例、实例迁移等临时性恢复方案,但由于底层服务资源的限制,部分实例的迁移恢复过程遇到一些异常情况,需要花费较长的时间来处理解决。

我们注意到,同时在多个可用区运行业务的客户,在这次事件中依然可以维持业务运行。对于业务需要绝对高可用的客户,我们持续建议您采用全链路多可用区的业务架构设计,以应对各种可能的意外事件。

03 问题分析与改进措施

1. 冷机系统故障恢复时间过长

原因分析:机房冷却系统缺水进气形成气阻,影响水路循环导致4台主冷机服务异常,启动4台备冷机时因主备共用的水路循环系统气阻导致启动失败。

水盘补水后,因机房冷却系统的群控逻辑,无法单台独立启动冷机,手工修改冷机配置,将冷机从群控调整为独立运行后,陆续启动冷机,影响了冷却系统的恢复时长。

整个过程中,原因定位耗时3小时34分钟,补水排气耗时2小时57分钟,解锁群控逻辑启动4台冷机耗时3小时32分钟。

改进措施:全面检查机房基础设施管控系统,在监控数据采集层面,扩大覆盖度,提升精细度,提高对故障的排查和定位速度;在设施管控逻辑层面,确保系统自动切换逻辑符合预期,同时保证手工切换的准确性,防止内部状态死锁从而影响故障的恢复。

2. 现场处置不及时导致触发消防喷淋

原因分析:随着机房冷却系统失效,包间温度逐渐升高,导致一机房包间温度达到临界值触发消防系统喷淋,电源柜和多列机柜进水,部分机器硬件损坏,增加了后续恢复难度和时长。

改进措施:加强机房服务商管理,梳理机房温升预案及标准化执行动作,明确温升场景下的业务侧关机和机房强制关电的预案,力求更简单有效,并通过常态化演练强化执行。

3.客户在香港地域新购ECS等管控操作失败

原因分析:ECS管控系统为B、C可用区双机房容灾,C可用区故障后由B可用区对外提供服务,由于大量可用区C的客户在香港其他可用区新购实例,同时可用区C的ECS实例拉起恢复动作引入的流量,导致可用区 B 管控服务资源不足。

新扩容的ECS管控系统启动时依赖的中间件服务部署在可用区C机房,导致较长时间内无法扩容。ECS管控依赖的自定义镜像数据服务,依赖可用区C的单AZ冗余版本的OSS服务,导致客户新购实例后出现启动失败的现象。

改进措施:全网巡检,整体优化多AZ产品高可用设计,避免出现依赖OSS单AZ和中间件单AZ的问题。加强阿里云管控平面的容灾演练,进一步提升云产品高可用容灾逃逸能力。

4. 故障信息发布不够及时透明

原因分析:故障发生后阿里云启动对客钉群、公告等通知手段,由于现场冷机处理进展缓慢,有效信息不够。Status Page页面信息更新不及时引发客户困惑。

改进措施:提升故障影响和客户影响的快速评估和识别拉取能力。尽快上线新版的阿里云服务健康状态页面(Status Page),提高信息发布的速度,让客户可以更便捷地了解故障事件对各类产品服务的影响。

04 总结

最后,我们要向所有受到故障影响的客户公开致歉,并尽快处理赔偿事宜。

此次香港Region可用区C服务中断事件,对很多客户的业务产生重大影响,也是阿里云运营十多年来持续时间最长的一次大规模故障。

稳定性是云服务的生命线,对我们的客户至关重要。我们将尽一切努力从此次事件中吸取经验教训,持续提升云服务的稳定性,不辜负客户所托!

阿里云

2022年12月25日


整理:老杨丨10年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

面向对象技术

面向对象技术 面向对象基础 面向对象基本概念 面向对象分析 面向对线设计 面向对象测试 UML 事务 关系 图 设计模式 创建型设计模式 结构型设计模式 行为型设计模式 面向对象基本概念 面向对象基本概念 达成目标具体需要做哪些事情。 对象 : 基本的运行实体,为类的实…

Vector - CAPL - CANoe硬件配置函数 - 05

目录 resetCan -- 重置CAN控制器 代码示例 ResetCanEx -- 重置CAN控制器的特定CAN通道 代码示例 ScanBaudrateActive -- 特定通道设置波特率 ScanBaudratePassive -- 开始扫描并检测给定通道上的波特率 resetCan -- 重置CAN控制器 功能:重置CAN控制器&#xf…

(2020)End-to-end Neural Coreference Resolution论文笔记

2020End-to-end Neural Coreference Resolution论文笔记 Abstract1 Introduction2 Related Work3 Task4 Model4.1 Scoring Architecture4.2 Span Representations5 Inference6 Learning7 Experiments7.1 HyperparametersWord representationsHidden dimensionsFeature encoding…

学习HCIP的day.06

十一、OSFP扩展知识点 1、关于OSPF状态机的问题 (1)在MA网络中(要进行DR/BDR选举)存在7种状态机,init是路由器A收到邻居B的hello包,但该hello包中没有A的RID; (2)在点到…

汽车EEA架构演进以及域控制器发展介绍

1、重要名词解析 (1)SDV:软件定义汽车; (2)SOA :一种 C/S 架构的软件设计方法; (3)OTA:空中下载技术(Over-the-Air Technology&#x…

【MySql】数据库事务

事务 事务事务的操作事务并发处理可能出现的问题隔离级别MVCC:多版本并发控制 事务 事物本质上指一条 sql 语句或一组 sql 组合 事务的特性:ACID 1、原子性:一个事务,要么一次性完成,要么就不做 2、一致性&#xff1…

STM32驱动超声波+OLED显示,并上传数据到云端(ONENET)

本文将介绍如何使用STM32F103C8T6单片机和HC-SR04超声波测距模块来实现测距功能,并通过0.96寸OLED屏幕显示测距结果。 首先,我们需要了解一下HC-SR04超声波测距模块的工作原理。该模块通过发送超声波脉冲并接收回波信号的时间来计算物体与模块之间的距离…

C++ STL 标准模板库介绍与入门

目录 1、概述 1.1、C 标准库 1.2、Boost库 2、STL 版本 2.1、HP 原始版本 2.2、P. J. 实现版本 2.3、RW 实现版本 2.4、SGI 实现版本 2.5、STLport 实现版本 3、STL 的六大组件 3.1、STL 六大组件构成 3.2、六大组件的交互关系 4、STL 的重要性 5、总结 VC常用功…

java spring MVC之RESTful快速开发

我这里有个一springboot项目 我在启动类同目录下创建了一个目录 目录名叫 controller 里面有一个UserController diam结构是这样的 package com.example.threshold.controller;import com.example.threshold.user; import org.springframework.stereotype.Controller; import…

平衡二叉树理论详解

文章目录 基本概念平衡二叉树插入结点LL(左单旋)RR(右单旋)LR(左右旋)RL(右左旋) 示例插入推导过程 基本概念 平衡二叉树是一棵空树或它的左右两个子树的高度差的绝对值不超过1&…

Maven ( 二 ) 项目应用

4.资源管理 4.0.pom.xml Maven的pom.xml是一个项目对象模型(Project Object Model)&#xff0c;它是Maven项目的构建文件。它描述了一个项目的基本信息&#xff0c;包括项目依赖、插件、仓库等信息。 下面是一个简单的pom.xml示例&#xff1a; <project xmlns"http…

深度学习用于医学预后-第二课第三周4-7节-关于事件的时间数据,认识处理删失数据

在本课中&#xff0c;我们将讨论生存数据。为了能够对生存进行建模&#xff0c;我们需要能够以我们可以处理的形式表示数据。 主要的挑战是删失数据&#xff0c;这是一种特殊形式的缺失数据。我们接下来将要研究这一点。 在这节课中&#xff0c;我们将谈论生存数据和删失。 …

LeetCode 96 不同的二叉搜索树

题目&#xff1a; 给你一个整数 n &#xff0c;求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种&#xff1f;返回满足题意的二叉搜索树的种数。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff1a;5 示例 2&#xff1a; 输入&#xff1a;n 1 …

第七章:C语言的操作符

说起操作符大家都不陌生&#xff0c;从我们最初的 - c * / 加减乘除&#xff0c;到更加深奥的操作符&#xff0c;而今天我要有完整的系统来理清楚C语言的操作符到底有什么&#xff0c;和它们相关的用法&#xff0c;话不多说&#xff0c;直接走进今天的主题----C语言的操…

保护个人隐私和数据安全的方法与策略

引言 随着信息技术的普及和发展&#xff0c;我们享受到了便捷的互联网服务&#xff0c;但与此同时&#xff0c;个人隐私和数据安全问题也日益受到威胁。在这个所谓的"裸奔"时代&#xff0c;网络攻击、数据泄露和隐私侵犯已经成为常态。然而&#xff0c;我们并不无助…

sysfs文件系统

sysfs系统介绍 sysfs系统sysfs系统是什么&#xff1f;koject的内核对象模型基础kobject结构体定义kest bus如何管理driver和devicebus_type 结构体 小知识什么是挂载mount命令 &#x1f4cc;————本章重点————&#x1f4cc; &#x1f517;了解sysfs系统概念; &#x1f5…

布谷鸟hash算法的并行化实现(一)

由于本人最近在写一个项目&#xff0c;为了实现数据查找以及数据修改部分的快速操作&#xff0c;所以采用hash对数据进行存储&#xff0c;而在此过程中接触到了布谷鸟hash&#xff0c;觉得这个hash算法还是很有意思并且高效&#xff0c;所以想着进行一些记录&#xff0c;本系列…

一文带你快速掌握如何读懂 YonBuilder移动开发 的项目源码

本文将通过四大步的简单讲述&#xff0c;让新手开发者朋友们快速掌握阅读YonBuilder移动开发项目源码的技巧方法。 1.读懂代码的第一步&#xff0c;了解项目的整体文件结构 CSS: 存放css样式的文件&#xff1b; feature&#xff1a;猜测是用来存放特征文件的&#xff0c;实际…

了解投影坐标系统,并在精美的地图上探索

投影坐标系简介 地球椭球体表面也是个曲面&#xff0c;而我们日常生活中的地图及量测空间通常是二维平面&#xff0c;因此在地图制图和线性量测时首先要考虑把曲面转化成平面。由于球面上任何一点的位置是用地理坐标&#xff08;λ&#xff0c;φ&#xff09;表示的&#xff0…

计算机三级网络技术总结(更新中)

&#x1f37f;*★,*:.☆(&#xffe3;▽&#xffe3;)/$:*.★* &#x1f37f; &#x1f35f;欢迎来到前端初见的博文&#xff0c;本文主要讲解我计算机三级网络技术&#x1f35f; &#x1f468;‍&#x1f527; 个人主页 : 前端初见 &#x1f95e;喜欢的朋友可以关注一下&#…