每个故障都是一次涅槃

2023年12月19日,今天 sealos 的公有云一个小时内被攻击 3 次,每次 几G 到 十几G 的流量,都是 CC 攻击(七层多 IP 地址模拟用户请求),这种比 DDos 还难防,现在凌晨一点,刚处理完所有临时方案,以及咨询一些外部的安全专家,后续会有一系列的加强防控来保障稳定性。有些感想,怕睡一觉忘了,赶紧写下来。

致歉

首先要给所有喜欢 sealos 的同学道歉,这几天的连续攻击让平台出现几次几分钟的不可用,比如今天每次大概会 3~5 min, 流量是瞬间过来把 15 台 nginx 全部打爆的,然后 k8s 会自动拉起恢复,我们停止掉了被攻击应用,并把资源扩大了一倍来硬抗,这是临时方案。

被攻击之后我们的稳定性数据是 99.9%,对于稳定性要求高于这个数字的业务可以考虑缓一缓使用我们的公有云,先可以跑一些开发测试或者周边应用,核心业务可以考虑独立部署方案。

后面平台会按照 SLA 承诺给收到损失的用户相应赔偿,有迁移走的用户可以联系我们对未消费余额全部退款,再次表示深深的歉意。

这一天迟早要来

在大概一个月前还没被攻击的时候,laf 作者老根吃饭时就在讲,为什么 sealos 还没受到攻击,这不合理,没被攻击反而让人感到不安。现在头顶的剑是落下了,这是成为一朵成熟的云的必经之路。没想到来的这么快。

创业一年中遇到前所未有的挑战

创业我们选择了一条极难,极让人兴奋的路,做公有云,这怎么看都不应该是一个小团队能做的了的事,我嫌难度不够再增加一点:做一个多租户的容器公有云。还可以把难度再加一点:先做国内。最终想做成一个优雅的牛逼的公有云,然后任何人都可以直接拥有这个云操作系统,一键装起来一个对标公有云能力的云,磨平公有云私有云的边界。

创业前虽然也做过非常多有挑战的事,比如容器云支撑整个讯飞核心研发平台,深度学习平台的 GPU 批任务 碎片化,当时做了一个亚洲最大的 GPU 集群,后面在 k8s 上完全取代 openstack 的创世系统,在阿里云的时候应用交付平台和开源 sealer 等,但这些大多都是私有云,和公有云不是一个挑战级别。

创业时我们在技术上是激进的,现金流上是保守的,因为我认为前沿的不太成熟的技术别人不敢用,我敢 这就是创业公司的竞争优势,不成熟的技术你让他成熟了这就成为你建立壁垒的砖块。当有长期的积累,这朵云稳定运行超过 2 年时,我们就会达到原子弹爆炸的临界值,没人能拒绝这样优秀的东西了。

第一次大的故障是 2023.3.17号,记的这么清楚是因为公司一周年庆祝,我们买了蛋糕水果,结果 laf 刚上线没几天就挂了,全公司核心人员修复了 15个小时,蛋糕摆在那儿就没时间切了。最终原因是因为用了某平台的轻量服务器,网络包紊乱,后来全部切走,低成本是要付出代价的。

后面几次故障是 laf 的用户迅速暴涨,导致 mongo 的租户迅速突破上限,很少有这种多租户共享一个实例的场景,影响到了我们的用户,其中有一个用户在北京,我就过去给他们道歉了,并承诺无论花多大代价都必须把他们的稳定性做好,后面几乎整个 laf 团队都铺在这个事情上,中间过程故事很多,已经到了我们帮助用户去调优代码的程度了,当然稳定性问题是没有那么好解决的,但是最终还是收敛下来了,现在这个客户今年已经从 0 开始有大几百万用户了,这种背靠背作战让我们很有成就感,就像在爬一座又一座山,中间我们可能被划伤,摔倒,但是没死,变秃了也变强了。

然后就是网关,我们确实几乎市面上所有的网关都尝试用了一遍,测试了一遍,都有不同程度各种各样的问题。 我自己遇到这些问题是兴奋的,这就意味着机会,意味着我们解决了这些问题就会变成竞争力,所以我们不断死磕难点。比如我们正在用的 k8s 刚刚 GA 的 Gateway API,我们会充分的压力测试与解决其中还不太成熟的问题,又比如我们一定要把数据库稳定的跑容器里。

最近遇到的就是被攻击,原因是因为 sealos 上跑了大量的 GPT 相关的应用,某些应用的流量又特别大,而这些应用的竞争对手就会恶意攻击。我们做过充分的性能测试,比如几十万 QPS 都可以轻松扛住,但是攻击者是下血本了,流量打的非常之大,隔三差五就来两下。我们后续会通过 tls 特征分析,http2 以及 ip2local 几个层面来综合解决 cc 攻击的问题。这次之后我们又将一次脱胎换骨,真的我现确切的感受就是这样,一个产品的强大是要经过苛刻的场景千锤百炼的,高手的身上都是伤疤。

这次故障用户里面就会出现两种人,一种是谩骂声,说稳定性差,体验差,服务差,我十分理解,也多少有些失落,确实我们不完美,我们在努力改进,也尽自己所能去做一些弥补,当我们足够强大的时候,欢迎回来。 另外一种是支持和鼓励,让我非常感动,群里很多做网络安全的同学主动联系我,给我们提供非常靠谱的方案,甚至共享一些付费数据来为我们提供更好的防护能力,以前 laf 故障的时候也是,有些客户给我们发红包,说修复故障辛苦了,是个好项目,无论遇到什么困难一定要做下去,这些用户真的是我们的前进动力。

稳定性与成本

很难的一件事就是用户不接受你不稳定这合情合理,同样不接受成本高,而往往有时候就是需要投入更大成本来解决稳定性问题,比如我们这些遇到的,一种解决方式就是把流量抗下来,那就需要耗费大量服务器,这就是成本,或者加 waf ddos 防护这也是成本,这些隐性成本挺多用户要么不认,要么用不起(也有原意用的)。所以成本和稳定性之间就形成了一种矛盾。而且这种 CC 攻击如果攻击者足够专业的话让你没法做特征分析,那么理论上可能真的只有硬抗下来,抗的这个成本算谁的。

所以我现在能理解为什么公有云贵了,就是为了解决那剩下的 10% 问题,需要花 200% 300% 的成本去解决,比如多副本,比如机房灌水,等等。

这次被攻击之后让我更加坚定拥抱公有云,确实云在底层解决掉了很多问题,如果是托管服务器迟早都会遇到这些问题,然后花数倍的成本云解决。 反而通过高效充分的云上调度手段能在公有云上把成本进一步降低。

总之,不稳定 用户骂你,贵 用户亦骂你。 我是觉得骂的对,不骂不进步。技术有意思的点也在这,解决矛盾问题,比如稳定性与成本的矛盾,比如功能强大与复杂度的矛盾,这些新的牛逼的技术就是为了能找到一个优雅的方式能兼顾。

涅槃重生

我们还是一如既往的走技术激进路线,稳定性的问题是一定会被收敛的,sealos 的核心组件就那么多,一块一块硬啃也能啃下来,今天暴露的问题是为了明天的高鲁棒性,要想涅槃重生得把自己架在火上烤,公有云就是我们的试金石,预计半年到一年的时间我们可以解决掉绝大多数核心问题,倒时一个稳如老狗 便宜 简单 开放的云会绽放在大家面前。
sealos 以kubernetes为内核的云操作系统发行版,让云原生简单普及

laf 写代码像写博客一样简单,什么docker kubernetes统统不关心,我只关心写业务!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容