跳到内容

大家好,我是 nmTeam CEO agou。

首先,我再次对 nmTeam 用户诚挚道歉,即使当前阶段用户数并不可观,也不能成为我们服务出现问题的借口。

下面,我简要的复盘一下问题出现的过程。

1. nmTeam 官网图片域名故障
13 日下午我配置服务器时为帮助朋友测试防火墙配置,向面板导入了防火墙规则,并尝试通过 Javascript 脚本批量删除,因操作不当,短时间向面板发送了大量请求,导致服务器瘫痪。约 30 分钟后,通过覆盖安装面板文件恢复服务。这个问题主要影响了我的一些个人站点(尚未完全恢复),对 nmTeam 服务而言,影响了 nmTeam 官网产品介绍的一部分图片(nmTeam 网站图片库#1)。由于问题的影响范围不够大,没有单独发公告。

2. nmTeam Telegram SLA bot 误报和漏报
上述事件发生后,由于 SLA bot 系统于上述服务器中,因此也出现故障,没有通报服务器宕机。
上述服务器恢复后,由于未知原因,FreshPing 平台频繁认定在该服务器上的网站出现问题,故 SLA bot 根据这一数据错误报告 nmTeam 网站图片库#1 故障或恢复。我考虑到 SLA bot 在服务器真正故障的时候发挥作用,没有暂停其推送。nmTeam 系统状态页面显示的服务状态也存在错误。

3. nmTeam 官网故障和用户系统故障
2 月 14 日,经过多种考虑,我决定将 nmTeam 官网迁出 Cloudflare Pages(下简称“cfPages”),移动到 nmTeam 新的服务器中。由 nmTeam 成员配置好相关环境后,我将官网解析更改到了服务器,期间出现短时的配置错误。后开始有反馈无法访问 nmTeam 官网,经 nmTeam 成员排查,系服务器遭到 CC 攻击,遂迅速调整防火墙配置。但之后发现有部分正常用户受到影响。经内部分析,未能准确得出问题和解决方案,最后我于次日凌晨决定将解析配置回滚到 cfPages,解决了 nmTeam 官网的访问问题。
nmTeam 用户系统(UserSystem)于上周进行调整后已运行于 nmTeam 的新服务器。受攻击和配置问题影响,攻击发生后,用户系统出现问题,无法使用。经过考虑,我决定暂缓处理此问题。
由于未知原因,nmTeam 官网和用户系统故障时,SLA bot 并未发送通知。

这些问题的出现让我深感痛心,同时也暴露出 nmTeam 在各方面存在的种种问题:

1. 缺乏对 nmTeam 服务的维护和更新
我到 nmTeam Newsroom 发送公告时,意外发现关于页面提供的仍然是 https://nmteam.ml。如之前的公告所示,这个域名已经被弃用半年左右,nmTeam Newsroom 竟然还未更改,这是无法解释的。

这次的服务故障发生之后,我才发现 announceapi 等多个 API 和登录 API 域名都还未添加和更改到 FreshPing 中,那 SLA 如何准确?由于 nmFun 开发任务紧张,现在也没有完全完成更改,我深感自责。

2. 问题应对能力较差
nmTeam 团队中许多成员都是学生,由于资金和体量问题,不可能采用多么豪华的方式来解决问题。但是,当 nmTeam 网站图片库#1 出现问题后的半个小时内,我个人没有拿出任何办法。更糟糕的是,nmTeam 官网打不开之后,我干瞪了半天眼,甚至盯着不断变化的封锁 IP 数,却漠视了 nmTeam 官网需要可以访问的问题,直到一个多小时后才修改解析,期间官网一直处于故障状态,我甚至没有想到给网站做全国测速确定问题,包括用户系统无法访问的问题,这显然不是一个希望做大做强的团队应该采取的行动。

3. 团队沟通能力弱,协作效率低,管理混乱
nmTeam 服务器防火墙配置修改后,我在内部群中数次提问,也没有搞清楚导致无法访问的问题究竟是什么。在 nmFun 和 nmChat 开发过程中,也存在由于需求理解错误导致开发目标不明确的尴尬情况。nmTeam 目前为止的几个主要产品都是我在做策划,所以我对自己的想法非常清楚,却忽略了其他成员并不知道我的想法这样一个事实。所以我在交代这些自认为牛叉的点子时,总是没有能够清晰的表明产品的目的,导致了他们的曲解和迷惑,这是我的问题,我要向他们道歉。当然由于这样,他们在开发过程中也会给我抛出一些不解的地方,也就是说,双方的沟通都需要强化。
nmTeam 也没有形成任何一个专用的工作群,这让我感到无地自容。

4. nmTeam 缺乏管理人员,我太独裁了
一直以来,nmTeam 的新闻稿和公告,都是本人亲自操劳的,因为我对自己的文笔还是有自信的。但是我也是要忙的,也不可能一直这样写下去,包括 nmTeam 的其他工作,像这样全部由我做主要操办,确实是非常累的。我非常感谢 Cody、Ravi 等成员帮助我开发一些 nmServices 的后端,但是,我总暗暗的觉得,这样的 nmTeam 少了一些 Team 的感觉。这也有沟通障碍的问题,但也有很大一部分原因,是因为我在这个项目中管的太多了。但是我确实担心,如果我放松一些对 nmTeam 的管理,nmTeam 会不会“变质”。总的来说,我还是要想办法,适当的让更多人参与到 nmTeam 的管理中。

5. 目标过于不切实际,导致实际工作不到位
前面提到,我是希望把 nmTeam 做好的。但是,我在策划 nmServices 的时候,往往太过于乐观而忽略了 nmTeam 的发展阶段和实际情况。这导致我们很多东西都只是嘴上说说,并没有实现,也难以实现,也就是大家批评的“画饼”。这也是我的责任,目标定的太高了,没有从实际出发。

6. 面向用户消息来源零散,用户难以接受通知
nmTeam 现在已经开通了 Newsroom、Twitter、Telegram 和 Discord 等多个官方账号,其中 Telegram 和 Discord 的主频道保持互通。
近期 nmTeam 产品的一些更新和系统维护,都是通过 Telegram 频道发送的。但是 Telegram 在中国大陆并不是一个能够直接连接的服务,而且这样的公告不在官方网站,而是在第三方,让人感到十分不解。
由于 Newsroom 的定位,Newsroom 不能发送一些日常的产品更新。我需要找到一个合适的方式,让用户都可以查询和查收 nmTeam 的维护和服务动态。

nmTeam 自成立以来已经走过半年有余,由于能力有限,还没有能收获比较大的成功。但创建 nmTeam 的时候,我便有决心,不论有多少浏览量,有多少用户,我都要把这个团队维持下去。面对当下的一些问题,我将以此文警醒自己,解决这些问题。也希望 nmTeam 能走向更好的道路,更希望各位 nm 人和我的成员们能够陪着我走下去。

agou
2022 年 2 月 14 日夜

标签: nmTeam