2014年3月

近期SCE两次严重事故的总结

近2周,SCE就发生了2次严重事故

一次是上周,SCE1.0的前端Nginx,因为一个下载的应用将vm的内存吃满,直接造成所有nginx全部挂掉,影响了1.0线上所有的app,故障时间25分钟。

一次是今天,SCE2.0的前端Router,由于一个并发更新upstream的bug,造成所有router全部挂掉,而刚好master也出现了问题,循环调用router,导致router不断挂掉,故障断断续续持续了近1个半小时,影响2.0线上的所有App。

接连出现这样的2次严重事故,肯定会使其它部门的同学对SCE平台的稳定性持有异议,也可能也会间接影响未来其它应用的接入。

整个SCE团队都应该思考并反思一下,为什么会出现这样的事故?

我想从以下几个方面做一些总结:

  • SCE平台的主要模块没有进行完整深入细致的测试,导致线上在某个时刻由于某个原因触发某个bug,直接导致模块挂掉
  • SCE平台的核心模块(Router/Master)提前没有预案,没有备用方案,一旦出问题后,只能根据线上的情况去修复,无法快速切换到另外一种方案上
  • 整个SCE2.0平台太过追求技术完美,太过自动化了,一旦核心模块出问题,无法及时手动介入干预,只能通过其他辅助办法去绕开相应的逻辑
  • 目前SCE平台的模块耦合性太高,master在其中担任了重要角色,一旦master出现故障,整个平台都会有问题,Router都没法重启,目前3.0版本已经在改进这个问题了
  • SCE团队的服务意识和故障紧急处理能力有待提高,当整个平台都挂掉后,所有人首要考虑的问题是,尽快找到故障点,并及时恢复,先不要纠结于找问题的具体原因,使应用恢复正常才是最紧急最重要的事情!
  • 开发、运维同学平常对处理故障的准备不足,平时不带工作笔记本回家,出问题时,使用家里笔记本拨号vpn,没有权限下载代码或者没有权限访问某个url,在最紧急的时候,在这上面白白浪费了很多时间。

今年SCE计划开放公有云服务,目前看来,我们的平台在很多方面还有不少的问题,需要整个团队在近期尽快整改,解决掉以上问题。

私有云都搞不好,都会出这么严重的事故,未来公有云上的应用会更杂更乱,就更难把控了。

出现问题不可怕,可怕的是出问题后,只是简单的把问题解决掉,不反思,不总结经验,不整改!如果是这样的话,那么以前的坑就白踩了,以后还会出类似的问题的!

总之,希望SCE团队能从最近的两次事故中总结教训,大家共同努力,保证平台的稳定性,逐步增强其它产品线使用SCE平台的信心。
 

 

一个月掉了5斤

2014年是我的本命年

为了消灾并能有个好运,春节前,老婆特意买了2套红色的内衣

春节期间就穿着这身内衣

然而,看来这身红色的内衣,并没有完全让我的本命年开局顺利...

可能是春节前吃东西不注意,把胃给吃伤了

春节期间食欲就不好,看到荤的东西就恶心,只想吃素菜

这种状况持续了好多天,后来发展到消化不好,吃东西不消化

平常完全没有食欲,每顿吃东西很少

到医院看了后,开了一些消化的、健胃的药

终于,这两天有点好转了,肚子开始轱辘轱辘叫了

看来是肠胃开始干活了,但估计还得一段时间才能完全恢复正常

好家伙,敢情是肠胃前段时间也休假过春节了?

 

今天晚上,SCE2.0又出问题了,晚饭还没吃完,就赶紧打开电脑开始处理问题

刚上秤秤了一下,过去一个月,掉了5斤啊...

我得吃多少天才能补回来

 

排查Container网络启动慢的原因

近日,在给其它部门部署SCE集群后,发现container启动后,网络在一段时间内无法使用

造成SCE的agent在启动后通过yum安装其它包时出错,用户的app无法启动

自己使用脚本进行测试,container自身启动很快,耗时不到1s

启动后,立即lxc-attach执行一个wget命令,发现堵塞在connect上很长时间,如下:

1

堵塞大概20s左右后,该wget请求才开始执行,这时,container的网络才正常

算上这个时间,一个容器从启动到交付使用,差不多需要30s时间,这个是不能容忍的...

目前container的网络是使用桥接模式,网卡需要开启混杂模式

查看/var/log/messages日志,如下:

2

发现,该容器的veth从learning状态到forwarding状态耗费了15s时间

上网搜了一下,这个是网桥的forward delay参数决定的

执行brctl showstp br0可以看到

3

这个值默认就是15s,尝试通过brctl setfd br0 1设置成1s后

再进行测试,发现容器的网络很快就可以正常使用了

整个容器从启动到安装完包,启动用户进程,总共在6s左右的时间

恩,这个时间基本还是可以接受的

 

新收shunzhi.me的域名

从Godaddy上注册的,首年才$9.99,挺便宜的

无论如何,先把这个域名给占了再说,呵呵

本来想试试360网站卫士的效果,结果因为没有备案,不给服务

不过,可以使用他们的DNS服务,先解析上去试试效果了

最新文章

最近回复

  • feifei435:这两个URI实际是不一样的
  • zsy: git push origin 分支 -f 给力!
  • 冼敏兵:简单易懂,good fit
  • Jack:无需改配置文件,看着累! # gluster volume se...
  • Mr.j:按照你的方法凑效了,折腾死了。。。。
  • zheyemaster:补充一句:我的网站路径:D:\wamp\www ~~菜鸟站长, ...
  • zheyemaster:wamp2.5(apache2.4.9)下局域网访问403错误的...
  • Git中pull对比fetch和merge | 炼似春秋:[…] 首先,我搜索了git pull和git fe...
  • higkoo:总结一下吧, 性能调优示例: gluster volume s...
  • knowaeap:请问一下博主,你维护的openyoudao支持opensuse吗

分类

归档

其它