阿里云资深DBA专家罗龙九:云数据库的安全和稳定是一个全链路的事情

  1. 云栖社区>
  2. 博客>
  3. 正文

阿里云资深DBA专家罗龙九:云数据库的安全和稳定是一个全链路的事情

云栖小秘书 2016-07-04 17:40:57 浏览7683
展开阅读全文

首届阿里巴巴在线技术峰会(Alibaba Online Technology Summit),将于7月19日-21日 20:00-21:30 在线举办。本次峰会邀请到阿里集团9位技术大V,分享电商架构、安全、数据处理、数据库、多应用部署、互动技术、Docker持续交付与微服务等一线实战经验,解读最新技术在阿里集团的应用实践。

本次峰会全部开放,免费注册,3天夜间技术交流、每场1.5小时深度分享、长时间互动答疑、素材第一时间公开、用户组同步搭建, 我们希望搭建起业内开发者与阿里技术专家在线交流分享的平台,构建更加开放和共享的技术生态!

阿里巴巴在线技术峰会专题:https://yq.aliyun.com/activity/97
峰会统一报名链接:https://yq.aliyun.com/webinar/join/23


高峰期间集群总QPS达到近300W每秒;
单个商家最高处理订单的能力超过400万单;
百万商家在AliCloudDB上稳定运行,全网实现了0故障,0丢单。

……

这是去年双十一期间,表现坚如磐石的AliCloudDB交出的成绩单。靓丽成绩单的背后是AliCloudDB团队众多技术专家努力的成果,这其中,就有我们今天的主人公——AliCloudDB团队核心专家玄惭(罗龙九)的身影。

有人说“入对行,‘学’对人”很重要,即将在首届阿里巴巴在线技术峰会进行分享的玄惭,究竟是怎样的一个人?他对DBA这个岗位有着怎样的理解?对过去的技术经历都有什么样的认识或感悟?下面的内容,或许能让你多角度认识这位阿里专家。

跨界的MySQL“大神”

在阿里云数据库团队,玄惭被大家称为“MySQL专业大神”。然而盛誉的标签下,他的本科却是教育技术专业,“可能很多人都没听说过这个专业。” 他说。

虽然并非计算机科班出身,但玄惭对数据库非常感兴趣,早在大学就立志成为一名优秀的DBA,所以他在大二开始自学Oracle的数据库。Oracle数据库是一个非常成功的商业数据库,有着非常完善的体系结构,玄惭在Oracle数据库体系结构上的三年沉淀,也给他快速学习MySQL埋下了深厚的基础。

2010年,玄惭进入淘宝DBA团队,负责淘宝开放平台的数据库支持工作。“这是一个高并发,高压力以及丰富的应用场景的环境,会逼着你去想,去突破,不然就会阻碍业务的发展。”

一年后,新业务开始使用MySQL做底层数据库,他开始学习MySQL,接着就被调派到淘江湖做MySQL。“那段时间淘宝线上数据库不是很稳定,我很主动地参与线上故障的排查,并进行总结和分享。”这段经历,让这位跨界的人技术又迈上了一个新台阶。

2012年,云计算开始慢慢发展起来,玄惭到了阿里云DBA团队,负责RDS的基础运维工作、历年双11的护航保障和RDS的专家服务。

在这里,玄惭把在淘宝工作中学习到的运维经验和最佳实践运用于RDS。从日常工作做起,一点点帮助RDS变得更加稳定、安全和易用,让更多的人能够低成本地享受到阿里在数据库积累的技术产品和服务,普惠更多的人。与此同时,玄惭也开始深度关注自动化运维、云数据库生态、企业云服务等领域。

“云数据库的安全和稳定是一个全链路的事情”

2015年天猫双11高峰期间订单创建每秒达到14万笔,总订单量达4.78亿,所有天猫商家的订单、物流、商品和库存等数据都会通过数据推送最终存储到ApsaraDB中。为了承受这样的业务,阿里云数据库做了很多优化,玄惭就此分享了安全和稳定性上的优化看法。

他认为,安全和稳定是一个全链路的事情,从客户的应用端访问,到中间链路层,最后到底层的数据存取,要构建一个安全和稳定体系十分复杂。“以ApsaraDB MySQL安全能力的构建思路与方法,安全的问题需要从事前、事中、事后三个时间轴,以及存储层、网络层、访问层、应用层四个层面,立体化地构建解决方案。于企业而言,不同的数据需要不同安全策略。”

他建议,对于一些安全程度要求较低的数据,对应的安全策略是:配置了HA高可用;每月一次验证备份的可靠性,备份保留30天;同时关闭公网访问或者采用VPC、IP白名单;涉及到用户隐私的高级数据,云数据库的安全策略进一步升级:首先云数据数据库密码是1-3月更换一次;同时打开TDE加密;数据备份全部存储在OSS中,可保留90天之久;此外数据库还应该支持同城容灾。对于核心数据而言,云数据库首先在应用层加密,支持SSL加密传输,备份可保留720天,同时支持跨地域容灾和两地三中心的部署方式(详细可参考“你的数据在云上,安全吗”https://yq.aliyun.com/articles/57159)。

在稳定性上,玄惭补充到:“复杂的系统的稳定运行离不开两个必不可少的系统,即全链路的监控系统和巡检系统。”巡检系统帮助你把系统各个组件日常运行过程中出现的问题暴露处理,把问题消灭在萌芽阶段,防范于蔚然,巡检规则需要你不断地去完善,这需要一个过程;全链路监控系统帮助管理者能够清晰地判断问题出现在那里,系统的各个部件清晰地展示在你的面前,当问题发生时候能够快速定位问题,降低故障出现的时间。他认为,特别是在复杂的系统中,有十几二十多个部件,没有全链路的监控系统,根本就无法掌控。

这位阿里技术专家也很实诚,他坦言ApsaraDB能够承受住这么大洪峰压力也不是一蹴而就,回顾整个历程,系统一开始不是那么的完善和稳定,有一个慢慢发展的过程,系统有一个逐步标准化的过程,随着规模化越来越大后,需要系统自动化的去做一些事情,降低管理运维成本,当前两步成熟后,又开始对现有系统中积累的数据开始进行分析,产生出价值,为用户和平台提供更好的价值和利润。所以沿着上面的演进,我们诞生出来很多系统出来,比如云数据库运维平台杜康,自动修复告警和异常的robot系统,自动迁移离散的移山系统,巡检系统吹沙,全链路监控系统,天象智能运维系统,CloudDBA专家服务系统等等,有了这些系统的帮助大大降低了管理成本同时为客户带来增值服务。

如果要总结一下的话,玄惭称,从肩挑背扛到99%聚石塔订单,ApsaraDB经历了四年的技术沉淀和突破:2012年,肩挑背扛和逐个优化;2013年,指数增长的数据链路改造;2014年,注入拦截保证数据安全;2015年,资源自动离散与收容和自动化诊断。通过这些年的沉淀、打磨,ApsaraDB在稳定,安全,性能上大大提升,这中间的辛苦也可想而知,具体可以阅读“【复盘】从肩挑背扛到99%聚石塔订单,AliCloudDB四年双11技术突破”( https://yq.aliyun.com/articles/225)。

“优秀的DBA应具备责任和敬畏心”

聘请专职DBA比较昂贵,大多数公司都没有DBA岗位,很多都是运维、开发或者技术负责人来担任DBA角色。但随着云计算的发展,DBA的角色也在慢慢发生改变。DBA可以把一些日常重复的运维工作交给云,包括机器采购、实例安装、基础备份和监控,而DBA的工作重心则转移到业务和数据架构中,从数据的流动、数据的生命周期、数据分析、数据安全等多个角度去帮助业务发展,从整个系统数据的全链路出发,从应用→缓存→分布式→NoSQL→SQL,根据其公司的业务特点选择合适的数据存储架构,所以有一些公司也有了DA这个角色。

尤其是在阿里,公司对DBA非常重视,“因为他们保护着公司最宝贵的财产,同时给业务部门提供端到端的数据库服务。”玄惭说。

那一名优秀的DBA应该具备哪些要素?玄惭称,首先应该具备责任心和敬畏心,他认为这是基础,“一个企业最宝贵的资产在你手上,必须要具备这些要素。”其次,处理线上的故障时,需要有大心脏去扛住外界的压力,同时还需要细心,让你在复杂多乱的环境下抓住问题的本质,快速解决问题;“最后,还需要有一个乐于总结分享的心态,我见到很多业界Top专家都具备这个特点。”

成功之道:“兴趣、实践、总结和利他”

每个人都有自己的成功之道,玄惭的成功之道或许就是因为有一个爱总结的习惯。玄惭说,他经常把遇到的技术架构、典型问题、故障分析记录到博客中。

他说这有四个好处:“第一个是对知识的重新梳理,帮助我加深对问题的理解,以便问题在下次遇到的时候能够快速反应过来;第二个就是帮助别人,写到博客上可以让更多的人看到,这样他们如果出现同样的问题,他们也能够快速找到解决方案,有时候我也会变懒,但是就是这个原因督促我去写博客和总结,因为心里总是认为上天给我了这门技能,就是要你去分享帮助别人的;第三个好处就是会在准备各种各样的大会PPT时,能够很快的拿到素材,不会去翻邮件,到处找资料,很方便;第四个就是这些经验的积累沉淀为我们后续的专家服务产品打下了基础,把诊断经验产品化,让更多的人受益。”玄惭最后点题称,总结下来一要有兴趣,二要去实践,三要善于总结,四还要有一种利他的精神。

对于第四点,他还特别分享了两个案例。

“第一个案例是在2013年双11筹备期间,我们的一个大客户数据库没有放在RDS中,在本地自建的机房中,研发人员在测试环境和生产环境之间的来回操作,误把生产环境的几张核心表数据删除了。当时本地没有备份,没有开启binlog,最后实在没有办法求助到我们,一开始我们也准备放弃了,认为这种数据恢复是完全没有可能的,在放弃的那一时刻,我想到了如果今天数据删除的是我,我会是什么样焦急如焚的心情,所以当时就到处寻求办法,最后找到一篇技术文章,抱着一定要解决用户问题的心情,最后通过percona recovery tool这个工具,帮助用户把数据恢复出来,他们的技术负责人专程从山东过来杭州来感谢我们。”

“还有一个值得分享的案例是2013年底快春节了,团队同事都在一起吃年夜饭,一个用户自己的错误操作删除了数据库。当时RDS产品策略是不支持那种场景下的数据恢复,我们完全也有理由拒绝他。但是一个公司的人都在等待着恢复业务,数据恢复不出来可能他们这个2014年的春节都过不好了,所以最后马上回到家中,联系开发,经过一夜鏖战,用通特殊手段,最终把用户的数据恢复了出来,那种心里得到用户感谢的滋味是无法用语言进行描述的。”

这种利他精神,在玄惭看来,不仅仅能提高自己问题处理能力,提升运维自动化水平,提升产品成熟和易用度的时候,也会有另外一种心情。

分享 《云数据库十大经典案例》是希望快速解决问题 触类旁通

玄惭在首届阿里技术峰会上分享的《云数据库十大经典案例》议题,是以MySQL数据库为例,收集整理了自RDS成立至今,用户在使用RDS过程中最常见的问题,包括:索引,sql优化,锁,延迟,参数优化,连接数,cpu,iops,磁盘,内存等问题。他称,一个个案例的背后都是一个个活生生的生产故障,希望通过这些案例的总结,还原问题原貌,给出分析问题的思路。他认为,也许有一天,当你遇到类似问题的时候能够触类旁通,举一反三,帮助你快速解决问题。最佳实践收集了阿里多年在数据库上的开发经验和内核团队在MySQL上的优化实践,以及众多专家在处理各类问题后积累下来的最佳实践,希望能够帮助你在使用RDS的路上少一些弯路,多一些从容。

这位经过四年双十一沉淀的阿里技术专家还表示,这个议题对开发、运维、DBA、架构师都具有非常好的参考指导意义,“当然如果你是一个公司的技术负责人,我也希望你能够学习,这个议题在深圳和成都云栖大会上都非常受欢迎,我想只要对数据库感兴趣的人,都可以来听一听。”


7月20日晚8点,将由阿里云资深DBA专家罗龙九《云数据库十大经典案例总结和反思》,下面是本次演讲议题详情。

议题:《云数据库十大经典案例总结和反思》

议题简介:《云数据库十大经典案例》以MySQL数据库为例,收集整理了自RDS成立至今,用户在使用RDS过程中最常见的问题,包括:索引、sql优化、锁、延迟、参数优化、连接数、cpu、iops、磁盘、内存等问题;一个个案例的背后都是一个个活生生的生产故障,希望通过这些案例的总结,还原问题原貌,给出分析问题的思路,也许有一天,当你遇到类似问题的时候能够触类旁通,举一反三,帮助你快速解决问题。

最佳实践收集了阿里多年在数据库上的开发经验和内核团队在MySQL上的优化实践,以及众多专家在处理各类问题后积累下来的最佳实践,希望能够帮助你在使用RDS的路上少一些弯路,多一些从容。

TB1CRZkKFXXXXarXXXXXXXXXXXX-392-221.jpg

分享嘉宾:罗龙九

嘉宾简介:阿里云资深DBA专家,有着丰厚的DBA经验,经历阿里历年双11考验,负责阿里云RDS线上稳定以及专家服务团队,积累了6年对阿里云数据库用户的运维、调优、诊断等丰富的经验。


附图:阿里巴巴在线技术峰会整体议程

8ca125440fcce3b5bdad1d15f41b2263565b3f89

峰会统一报名链接:https://yq.aliyun.com/webinar/join/23

网友评论

登录后评论
0/500
评论
云栖小秘书
+ 关注