大家好,我们是做 ERP、SCRM、会员商城的SaaS服务商 (电商宝 ),平时对SAAS产品的同行都比较熟络,这几天被微盟宕机的消息给刷屏了,事情大概脉络是这样子的:
根据微盟公告,2月23日19:00左右,微盟收到系统监控警报,SaaS 业务服务出现故障,随后召集相关技术人员进行排查,并与腾讯云技术团队一起研究制定修复方案。经调查,故障原因为 SaaS 业务生产环境和数据遭到集团研发中心运维部一位核心运维员工人为破坏。24 日,微盟向上海市宝山区公安局报案,目前该员工已经被刑事拘留。
看到这样的消息,第一感觉有些不可思议,来看下微盟是家怎么样的公司
8月28日,智慧商业服务提供商微盟集团公布了2019年上半年财报。财报显示,集团营收达到了6.57亿元人民币,同比增长97.8%;经调整EBITDA(税息折旧及摊销前利润)6830万元人民币,同比增长79.2%;经调整后净利润为2950万元人民币。财报指出,上半年营收改善得以于核心业务SaaS产品和精准营销的强劲增长,同比增长3.7%。
市值达到 100 多亿的公司,怎么会被一位员工,轻松瘫痪那?
仔细屡屡也很正常,我是做技术的,线上环境也了解许多,随着年龄的增长,越发有种感觉,那就是就是对代码、对系统一定要有敬畏之心,越是细枝末节,越是细小的东西,越有可能致命;
下面说下我们公司做的几个防御措施,我们公司比较小,年营收规模大概千万数量级,和微盟相比我们小很多,可遇到的挑战也非常多;我们用了以下几个措施,来尽量保证业务稳定;
- 选用了阿里云的服务器,开启自动备份功能(很重要);每天自动备份一次,保证数据可以快速回滚;备份就像买保险,平时用不上,还花大量成本,但关键时候可以救命;
- 线上部署透明化,用系统来自动发布代码,尽量避免运维人工参与,我们用的是 jenkins
Jenkins只是一个平台,真正运作的都是插件。这就是jenkins流行的原因,因为jenkins什么插件都有 Hudson是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控程序重复的工作,Hudson后来被收购,成为商业版。后来创始人又写了一个jenkins,jenkins在功能上远远超过hudsonJenkins官网:https://jenkins.io/Jenkins下载:http://updates.jenkins-ci.org/jenkins的全部镜像:http://mirrors.jenkins-ci.org/status.html
- 代码部署采用git ,使用git私有库(这个应该大部分公司都在用)
Git 是用于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。Git 最为出色的是它的合并跟踪(merge tracing)能力。
- 主从机备份,每个业务至少 2台机器同时运行,通过nginx 分配权重;一台挂掉,不会影响业务。
upstream five_star { server 10.0.17.249:30000 weight=9; server 127.0.0.1:5008 weight=1;}
- 业务模块化拆分,每个业务块分布在不同的业务机器中;比如我们的 ERP系统(http://www.ecbao.cn) 被拆分成 用户中心、财务模块、订单同步模块、打单模块、进销存模块、统计报表模块、后台任务模块等;每个模块都是独立的系统,部署在不同的容器里面,互不影响;
- 定期更换证书和服务器的登录密码
- 制度上控制,我们大部分线上权限只分配给几个经验丰富的创始人身上,高危操作,需要运维邮件申请,并交由创始人来执行;
以上是我们公司针对稳定性做的一些主要的事情,这些事情可能大部分公司都在做,也有的友商可能忽略了,假如微盟做到了上面几条,相信一定不会产生如此“惨痛”的后果;我们也在继续努力,希望让系统越来越健壮!
0 条评论