【自我介绍】
我叫王家玮。我是一名资深的运维工程师。
2006年从学校毕业后,我先后在三家企业工作过,主要负责管理数据库服务器。
最近两年互联网企业风生水起,我瞄准机会跳到了一家很有潜力的创业公司。
【业务】
新公司做手游。风口上的猪一只,毫无疑问。
老板听说招聘一个运维工程师可以大大提高研发的工作效率,为了确保一个联网的卡牌类游戏项目上线时间,他雇佣了几个猎头公司火速招聘。
于是我进来了。
【误解】
项目三个月后就要发布了,而制作人和研发居然都没有意识到需要提前预估压力和采购服务器!
我机智地提出了这个问题,并表示可以尽全力在一个月内搞定服务器采购和部署。
研发负责人很奇怪地看着我,“为什么需要一个月?买服务器不是只需要在页面上点点就好了吗?”
对于这种无知的人,我当场就醉倒了,不过初来乍到的我没敢问他是不是在淘宝上选的江浙沪包邮次日达。
会后,研发负责人打开阿里云页面,演示了云服务器的购买。
我很羞愧,原来现在买服务器不用再跟硬件厂商和IDC打交道了
【选择】
幸好,我最擅长的是数据库管理。
买服务器这种没技术含量的事不提也罢。
我恶补了阿里云相关的知识,摆在我面前的是“自建数据库”和“云数据库RDS”两个选项。
自建数据库与我习惯的运维方式接近,而RDS这种页面点来点去的方式我很不习惯。毫无疑问,我选择了“自建数据库”。
我提前一周开通了服务器。当天就完成了数据库的部署、参数的优化、高可用的配置。三天内搞定了备份和监控,剩下的时间跑了性能压测,并做了一次紧急恢复。
我感觉很忙,很充实。
【意外】
游戏按时上线了。
老板让市场团队在各个渠道买了推广资源,用户数三天就超过了我们预估的容量。老板和制作人很开心,但是我压力山大。
其他游戏没有运维工程师,研发团队直接采用了RDS,在页面上点击两下就完成了升级。不需要停服务,游戏的收入自然也不受影响。
而我自建的数据库,需要关机升级完配置再启动数据库引擎。虽然我的操作炉火纯青,保守估计仍然要停止服务10分钟。算上后继的影响,用户将有半小时无法上线。
我不敢回想当时跟老板汇报时他的眼神。
我完全理解他。半小时,一百万的收入,换谁都心疼。
【竞争】
自那以后的一个月里我日夜研究RDS。我不甘心。
如我所料,RDS具有使用方法和权限上的限制,没法像自建数据库那么灵活。但是根据我的经验推敲,RDS的这些限制也避免了许多数据库使用上的误区。而且RDS天然支持的监控、高可用和备份功能,并不比我自己搭建的服务差。
我还深入研究了RDS的指定时间点恢复、数据压缩、同城容灾等功能,看得一身冷汗。
原来数据库运维还需要做这些事情。我之前的公司完全没有提出过类似的要求,而我也一直认为自己已经做得八九不离十了。
后来几周我又花时间了解了DDOS防护、访问白名单、SQL审计这些安全措施。
说实话我觉得有点高射炮打蚊子,数据库哪会有这么多安全问题。
直到我们的竞争对手被黑客攻破数据库拖走了所有的用户资料。他们第二个月就倒闭了。
转自——IT之家