首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhujinliang
V2EX  ›  程序员

记录一下刚刚发生的内部业务系统故障

  •  1
     
  •   zhujinliang · 340 天前 · 5542 次点击
    这是一个创建于 340 天前的主题,其中的信息可能已经有所发展或是发生改变。
    公司有一内部业务应用,运行在公司机房里的一台服务器上,同机房里还有宽带接入、核心交换等设备。
    公司有两处办公地点,A 处为老办公室,设备有些老旧,服务器也放在这边; B 处为新办公室,我们技术部在这边办公。两办公室各自有独立的局域网以及公网 IP,使用 IPSEC VPN 连通。

    上午 9:40 左右,有同事反映业务系统打不开或加载超时。毕竟系统跨着公网,这种故障偶有发生,我们像往常一样检查 VPN 是否通畅、两个路由器负载是否过高、是否有某 IP 流量异常。
    检查一圈下来没有发现异常,我们这边打开正常,A 处路由器负载有点高,但不像是故障原因。于是跟同事们说可能 A 处网络有卡顿,大家稍后再试一下。
    这个事就暂时这样了。

    上午 11:00 左右,越来越多的同事反映系统无法使用,我们尝试打开系统,发现故障升级了,报 502 错误,此时肯定大家都无法使用了。
    通过 SSH 登录业务服务器,ps 查看发现业务应用没有运行,查看日志发现数据库表有错误。
    我们部门领导已打车奔赴前线调查故障原因以及安抚用户情绪。
    尝试使用 SQL 命令修复表,失败,提示无法创建临时文件,没有权限。担心硬盘故障,df 查看剩余空间足够,dmesg 没有报告硬盘写入错误,SMART 报告健康,松了口气。
    中间看了下 uptime,服务器刚刚被重启过。
    继续尝试修复表,通过万能的 StackOverflow 得知可以使用 myisamchk 修复表,于是停掉数据库,进入数据目录,尝试修复表文件。
    修复进行顺利,在修复了若干表后,11:30 左右通知同事们业务系统可用了。

    与此同时,前线的领导说故障原因找到了。
    系某领导所在楼层的交换机故障引发。
    某品牌某些比较老的交换机在长时间使用后会出现一种故障,以前见到过,交换机会在工作中突然进入一种异常状态,表现为超高的丢包率。
    该领导发现自己上网卡顿,系统打不开,于是他拿起了机房的钥匙,把整个机柜断电,再重新上电来重启设备。服务器意外掉电又导致数据表损坏。

    整个故障过程先是网络卡顿导致几个同事偶尔出现加载失败的情况,然后交换机故障使得该领导以为故障迟迟未得到解决,于是他试图重启机房里的设备解决故障。可能他之前也这样做过,幸运的是没有造成服务器上的文件损坏,而且解决了故障。

    总结:
    网线千万条,稳定第一条。
    重启不规范,运维两行泪。
    49 回复  |  直到 2019-02-15 13:07:28 +08:00
    hellovx
        1
    hellovx   340 天前   ♥ 7
    重启这领导太硬核了……
    TomatoYuyuko
        2
    TomatoYuyuko   340 天前
    非物质文化遗产:电视机雪花拍两下就好了(滑稽
    padapen
        3
    padapen   340 天前   ♥ 10
    于是他拿起了机房的钥匙,把整个机柜断电,再重新上电来重启设备.....看见这种,真想一板砖拍过去
    Hancock
        4
    Hancock   340 天前
    领导给力
    mscststs
        5
    mscststs   340 天前
    要么换个机房,要么换个领导吧
    yulgang
        6
    yulgang   340 天前
    本以为重启治百病
    moonsola
        7
    moonsola   340 天前
    "与此同时,前线的领导说故障原因找到了。系某领导所在楼层的交换机故障引发"
    交换机:这锅我一个人背不动。
    logicr
        8
    logicr   340 天前 via Android
    @TomatoYuyuko 肯能本来领导拿着钥匙进去拍了机柜的,没用然后再用了断电重启打法。
    misaka19000
        9
    misaka19000   340 天前
    你们领导牛逼
    seven777
        10
    seven777   340 天前 via Android
    让孩子拿玻璃碗,就准备好被摔!运维的责任,谁都不要怪!
    另外,只要是生产项目,不论项目大小,稳定第一!!!
    jjianwen68
        11
    jjianwen68   340 天前
    这么朴实刚健的领导
    donyee
        12
    donyee   340 天前
    领导:这点小问题,我重启下试试;欧耶,解决了...
    hasbug
        13
    hasbug   340 天前
    哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
    Eytoyes
        14
    Eytoyes   340 天前
    北京市第三运维中心提醒您,算了。。。直接两行泪吧
    ziding
        15
    ziding   340 天前
    MySQL 太不靠谱,这种情况下居然表会坏~
    fange01
        16
    fange01   340 天前
    哎呀这个 ID 很熟悉、、领导操作方式也很熟悉。
    4357
        17
    4357   340 天前
    牛逼
    dko
        18
    dko   340 天前
    重启也就算了。。。直接断电,这谁扛得住啊
    guan123
        19
    guan123   340 天前   ♥ 1
    最后的总结是亮点 ,不过话说回来,整体都被重启了,也都没感知到,监控做的有点那啥啊
    zarte
        20
    zarte   340 天前
    领导可以不背锅
    jasonyang9
        21
    jasonyang9   340 天前
    事务机制应该能保证这种情况下的数据库完整性啊,物理存储坏了?
    jandan
        22
    jandan   340 天前
    也就是领导啊
    openbsd
        23
    openbsd   340 天前
    领导这一波操作很骚气啊! 照顾领导情绪 运维可以把非核心 易故障的交换机单独接一个插座,甚至可以配置一个智能插座(提供 APP 远程),方便领导没事就断一波电,反正非智能交换机启动也就几秒的事 [手动滑稽...]

    @TomatoYuyuko #2
    这个真心是遗产,小时候家里有台 NEC 的黑白 洋垃圾?就这样拍了 10 多年,偶尔里面还冒点烟,淘汰后拆开看了下,供电部分 ?三个 MOS ?管 烧焦两个 且 PCB 严重碳化,竟然一直都能正常?观看
    cedoo22
        24
    cedoo22   340 天前
    怎么有股 央视解密节目 的味道????最后发现被断电了,监控哪儿去了?
    liprais
        25
    liprais   340 天前
    2019 年还在用 myisam,不是等着倒霉么
    bbsanimal
        26
    bbsanimal   340 天前   ♥ 5
    某医院的加护病房的病人总是在星期天十一点左右死掉,这让医生们困惑不解, 甚至认为是灵异事件,于是成立专家组调查事情的原因。到了星期天,时钟刚刚敲响十一点,通过监视器发现, 在星期天打扫的清洁工走进加护病房,拔掉重病号的生命维持系统电线插头,然后插上了吸尘器插头,开始打扫卫生。。。
    jaryur
        27
    jaryur   340 天前
    某领导修炼重启大法误入歧途
    AsunaQAQ
        28
    AsunaQAQ   340 天前
    NB
    dany813
        29
    dany813   340 天前
    领导牛逼
    freezex
        30
    freezex   340 天前 via Android
    是不是应该配个 ups,电源故障时自动关机
    banmuyutian
        31
    banmuyutian   340 天前
    领导问:我怎么上不了网了?
    答:重启试试。
    领导:好。
    pexcn
        32
    pexcn   340 天前 via iPhone
    黑客攻击 (物理)
    9hills
        33
    9hills   340 天前 via iPhone
    难道不是赶快做数据库主从么?
    johnnie502
        34
    johnnie502   340 天前
    @freezex 领导会直接拔 ups 上的插头的
    JerryCha
        35
    JerryCha   340 天前
    过于硬核
    还好没使用另一招:出故障时踢两脚
    Alpha486
        36
    Alpha486   340 天前 via iPhone
    领导:先断机房电源,重启问题就好,我有经验!!接着就是一点操作!!
    julyclyde
        37
    julyclyde   340 天前
    尽早逃离 myisam 吧
    一旦故障,可修复率较低
    nbin2008
        38
    nbin2008   340 天前
    领导一出手,就知有木有
    Biexl
        39
    Biexl   340 天前
    万能重启 !
    lcatt
        40
    lcatt   340 天前
    服务器和网络设备共用一个机柜?另外交换机重启要断整个机柜的电是什么鬼。非标机柜才能这么做吧,听你的描述我觉得你们机房设计很很乱啊,需要参考 GB50174 好好梳理下,不然以后还会发生。
    @openbsd 机柜专用插排不带开关的,就是防止误操作。
    mritd
        41
    mritd   340 天前 via iPhone
    @padapen #3 学会了
    ttgo
        42
    ttgo   340 天前
    咳咳,我干过类似的事儿,捅了特别特别大的娄子。
    但万幸,当时没人发现。。
    过了好多年,我才告诉别人当年是我干的。。
    openbsd
        43
    openbsd   340 天前
    @lcatt #40
    照顾领导情绪及习惯,额外配置一个插座 只接非智能的交换机 ,嘿嘿......
    换领导不易,换智能插座还是可以的,顺便告诉领导,以后不用拿钥匙去机房这么麻烦,APP 上点一下就好
    notreami
        44
    notreami   340 天前
    为啥这么多人跪舔呢?
    realpg
        45
    realpg   340 天前
    @lcatt #40
    好的机柜集成 PDU 每路没一个都带独立空开,上面带总的空开+漏保
    xi2008wang
        46
    xi2008wang   340 天前   ♥ 1
    自己检讨一下吧,因为出了问题,折腾的是自己。

    自己负责的服务器,自己要监控起来:
    连通性监控、重启监控、磁盘用量监控、进程监控、业务数据(用户数、注册数)监控;

    还有硬件部署隔离及整改:
    机柜隔离、电源隔离、UPS 保护、硬件标签及警告标示
    winglight2016
        47
    winglight2016   340 天前
    断电重启的骚操作。。。
    xi_lin
        48
    xi_lin   340 天前
    领导牛逼
    BUPTGuo
        49
    BUPTGuo   339 天前
    于是他拿起了机房的钥匙,把整个机柜断电,再重新上电来重启设备……牛逼大法了
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2846 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 04:50 · PVG 12:50 · LAX 20:50 · JFK 23:50
    ♥ Do have faith in what you're doing.