个人简介 邵海杨,网名海洋之心-悟空,系统架构师,业余撰稿人,十多年来一直致力于开源软件及前沿科技的研究和探索,目前在又拍云存储任运维总监。杭州LUG组织者之一。 周秋野,网名秋天的野菜,超过8年的互联网技术工作经验,先后在金融界、卓望信息、世纪佳缘等国内互联网公司工作。目前工作于乐蜂网技术团队,带领运维团队开拓技术思路,明确技术运维产品化的理念,将技术运维逐渐转为技术运营。 刘宇,网名守住每一天,本次采访之时就职于新浪,当时担任新浪内容加速平台(SinaEdge)运维负责人。擅大规模Linux集群环境的自动化管理与运维、问题分析、性能调节和架构设计优化、分布式监控、CDN相关,以及GTD高效管理有一定的探索。
作为InfoQ主办的全球顶级盛会,QCon在伦敦、北京、东京、纽约、圣保罗、 杭州、旧金山举办过多次,这次是首次走进中国首都北京。希望能给当 地的公司、技术社区和技术人员提供一流的学习、交流平台。
1. 周秋野:各位网友大家好,这里是QCon TV,非常感谢InfoQ组织这次大会,让很多的帅哥坐在一块,一块聊聊家常,一块聊聊互联网,一块聊聊我们未来美好的生活。大家都是做运维出身的。有很多人都说,运维是整个互联网技术行业最苦、最底层、最农民的一个行业。但是,我身边的这两位帅哥……先给大家打声招呼。
刘宇:Hello,大家好!我叫做守住每一天。苦B运维从星巴克开始。
2. 周秋野:这个我们看看有没有更苦B的,来。
邵海杨:Hello,大家好!我是来自又拍云存储的邵海杨,微博是@海洋之心-悟空。我的口号是快乐工作,认真生活,运维一点都不苦B。
3. 周秋野:我们看一下这么闷骚的运维工程师,能想得到他们以前的工作是多么的好玩儿。我们先从刘宇开始,先聊聊我们一些在新浪,某浪,很浪的这个公司里面的工作,然后呢,聊聊你们的生活,聊聊你们平常的这些运维工程师都干些什么。我是来自于乐蜂网的秋野,微博是@秋天的野菜,希望大家关注我,开始。
刘宇:说什么呢?在新浪,我们一般不叫新浪,我们叫渣浪;新浪的运维工程师,我们一般称为浪人。平时大家吐槽比较多,我们就不吐槽了,每次都吐槽就没意思了。我觉得运维的工作一点都不辛苦,你看吧,我还喝着星巴克,每天早上提提神,因为工作一般是从早上打卡的那一刻开始,一般我打卡的时间不是九点半——我们上班时间是九点半,我是七点多到八点左右打卡,因为我觉得高效运维,有时候就从早上早一个小时开始,我早上七点多或者八点多的时候就利用一个小时时间,就把今天的工作搞定了,其他的一些时间,我就看看文档,刷微博,你们要是关注@守住每一天的微博,你会发现我偶尔会转转,一般不吐槽,吐槽只吐槽一个点。
4. 周秋野:我请问一下您结婚了吗?
刘宇:已婚。
5. 周秋野:有孩子吗?
刘宇:正在酝酿当中。
6. 周秋野:正在酝酿,培养当中,平常跟你的太太有没有什么一些出行的计划,旅游,或者看看电影,搞一些小浪漫的这种事情?
刘宇:苦B的运维有一点就比较苦B:我老婆已经回家了,在北京这个时候我目前只有两点一线,公司和家,一般就在公司吃饭了。你说的那种生活,在以前的时候,我们可能会有,偶尔出去,比如最近上一大片,必须去看,连这点生活都没有了那我们还能干吗呢?
7. 周秋野:守住每一天,虽然老婆不在家,仍然希望你有个非常好的激情的生活,我们祝福你。来我们看非常闷骚的这位,来给大家打招呼。
邵海杨:大家好,我也觉得运维一点都不苦B。不苦B是有个前提的,我想说的是,其实要做一个好的运维,有三点必须要掌握:第一个呢,就是运维要自动化,你要学会一些工具,能够帮助把你的运维流程规范;然后标准化,这样你就可以批量的去部署,去配置机器。第二个呢,就是要性能可视化,就是我们要用一些手段,把服务器上面的一些采集点,比如说性能都描述出来,那么这一点非常重要,为什么这么说呢?我们做运维只做两件事情,其实说白了,一个就是要把你的机器管好。机器管好,怎么管呢?用自动化的工具去管好;第二个,就是你要伸手问老板要资源,但是你怎么去伸手问老板要资源呢?这时候你就必须要给老板看得懂的一些报表,比如你的性能可视化,当一台机器的时候它的loading顶不住的时候,这个报表老板是看得懂的,这时候他就愿意拨钱给你,或者说拨人手给你,来做这个资源的增加。那么第三个,我要说的是监控常态化,就是当我们出现问题的时候,会有一些及时的短信报警,这些短信报警又会促发脚本去做自动化的回退,或者说节点的切离,那么当你掌握了这三点以后,我觉得这个运维就不苦B了。刚才秋天的野菜说的那些,我很想说,我的生活很丰富,早上不打卡,公司里基本上找不到我的人,我一直在向高层,还有向我的同事传递一个信息,就是什么呢?最好的运维就是不要记着我是谁,就是一天到晚不要在找运维是谁,最好让别人忘记掉你,这才是最高的境界。所以我现在是这样的,回到家就不带电脑,陪老婆孩子,周末就看看电影,因为我觉得这样的生活才叫生活,当然这一切都取决于你的运维工作要做得非常智能。其实智能只有一点,就是什么呢?没有单点故障,这一点很好理解,一台机器不够的时候你就配两台,配三台,这样就可以为你赢得时间去处理问题,这样就可以OK了。
8. 周秋野:一看这个工程师就是一个非常有生活的工程师,连美好的生活都是靠自己去创造的,他们两个人说的这些观点,基本上都把我的话都给抢了,我也没什么说的。但是补充一点,像刚才的帅哥说的,让大家忘了你是谁的时候,但最好不要让HR的部门忘了你,否则发工资的时候发不到你了,该发多少钱还得发多少钱。运维的最高境界就是自动化,让我们很轻松,很快乐的去工作,因为运维还有一个辅助的一个功能,也是一个非常强大的功能,就是帮公司的研发部门,或者测试部门,或其他部门去解决问题,靠我们去解决很多的问题,因为我们是最了解系统的,最能够发现这些问题,而且给它纠出来,不让这些隐患在你最重要的时候出现这些问题,否则就是整个系统就崩溃了,运维肯定是背黑锅的。在这个里头,运维还有一个事情就是,所有的事情已经要打提前仗,提前说,你需要多少带宽,你需要多少资源,整个的事情都要打提前仗。还有一件事情,运维人员不要跟写代码的人员似的,我不是这在里头说我们这个行业有多么好,写代码的人员有可能是单核的,我们必须要双核,有可能我们还要四核,他们有可能插46G内存,但是我们身上有可能需要插256G内存,所以我们想的东西要更多,我们肚子里面和脑袋里面装的东西更要更多一些,我们是整个技术行业里边最前沿的,首先要保护好自己,也要保好我们的系统,守住我们的阵地。运维整个里头包括的内容非常多,CDN,云平台,存储,安全,数据库,网络,系统,系统里有Linux,Windows,Oracle,MySQL……还有,像你们公司非常有规范,有老大带着,你们内外网是分开的;像我们这种二线互联网公司里面就是内外网不分开,都归我管,整个公司里头一千多人在这种IT桌面支持这个工作还是归我们几个兄弟管,有可能是我们平时的工作当中,对人的接触大过于机器。人是比机器还要复杂的,所以有时候跟人打交道的这种沟通的成本远远大于机器。所以在整个来看,运维还是需要有一个管理成本,你需要带动好自己的兄弟,因为谁都有惰性,有可能工作不积极,很多的这种情绪,所以你作为一个Leader来说,怎么去安抚好你的兄弟,怎么带动好你部门的气氛,带动运维的人员和团队,这是很重要的。运维的人员需要活泼,需要有激情,他才能够把一帮屌丝程序员给他带动起来,要不然我们本身很郁闷,工作起来没有激情,他们就更歇菜了。我不知道同意不同意我的观点,同意的鼓掌。
刘宇:我要问秋天的野菜几个问题,问一下海洋几个问题。肯定一线的运维工程师,不一定会像你们这样过的这么舒服,像我这种也是苦在一线的工程师,星巴克不能解决问题,实质上出了故障我们还得上。我晚上不带电脑没问题,可能你的架构做得非常的好,可能还是会有哪些小公司,小的运维公司,我以前也在小公司,对不起,我没有钱,我没有办法给你做两台的容错,我是没有办法去做的,我也有这样的一些数据去给领导看,我也有很多的数据去给领导看,说我现在业务到了瓶颈了,我的服务器压力非常的大了,我需要去做那些事情,但是不给你,这个时候运维工程人员,我的心态再怎么好,每天上下班我微笑着去,我每天看着你就跟看着钱似的,还是不行。两位对这个问题怎么去看?你们有没有什么良策,来一到两个点子,真真正正实实在在的。
邵海杨:我先来,我是想说的,运维工程师想让自己闲下来不是一件容易的事情,这是一个挑战,我们的终极目标是一定要让自己闲下来,刚才刘宇的问题我想说,当你不具备这些条件的时候,你能做的一个事情是一个自己苦练内功,尽可能从一些细节问题上面能节约一点时间,就节约一点时间。第二个呢,就是要寻求帮助。我说运维是一个团队,这个团队不光是你身边的人,不光是你这个群体里面的人,还要出去走走,要多跟人家交流,打个比方,今天如果我这个运维,我遇到了我不能解决的问题,因为你们两个是我的好朋友,我向你们求助的时候,你们是不是会帮助我?这也是一种手段,就是寻求帮助,帮助你来解决这个问题。然后呢,这个运维自动化,我是可以推荐一个草根做法,就是用bash来写,bash,sed和awk,Linux编程下面的三剑客是可以足够完成自动运维的一些问题,当然还有高富帅的解决方案,比如Puppet,这个刘宇是专长,现在我也是这样的,我做的那些系统里面,不光含有这些基本工具,然后也包括了一个Puppet client在里面,今后我要特别多学习一下。然后呢,我希望运维人员就像野菜说的,我们要给人家一种积极向上的一种正能量,不能让他们觉得我们好像很苦B,进而变得说服务器也苦B,因为在我想象当中,当你掌控着几百台,或者成千上万台机器在我们手中跳舞的时候,我觉得那个是非常快乐的事情,当然这需要我们的努力。
9. 周秋野:我没什么补充的,他说得非常好,已经把我要的说话都总结了。
邵海杨:我想问野菜一个问题。就是我一直也在关注虚拟化和云这一块,昨天我听了你的演讲,你们乐蜂网是用的虚拟化,我想知道,对虚拟化来说无论是CPU,还是内存,还有网络,IO都有降低的,那你为什么还要选择虚拟化?
10. 周秋野:你们用虚拟化了?我们也用了,为什么要用呢?就是首先,第一个对虚拟化确实节省成本的。对于第二个,对于我们自己的这个业务来说,虚拟化它这个东西不是说所有的系统都能用,也不是说,我这虚拟化就放到别的公司,像百度或其他公司就能用,但是对于我们小电商,二线电商来说,我们用起来比较方便,因为它不怎么耗CPU,也不太耗内存,我们整体的IO性能还一般,因为我们扛得住,整个我们是前期做过压测的,相当于一台好一点,类似于380、IBM3650这样的设备,我一个上面可以跑六台,没有问题,它的性能完全的会被释放出来,因为可以现在的设备,CPU内存什么之类的,也都不是问题,如果硬盘是问题,你换SSD好了。
邵海杨:我想问的问题是这样的,我认为如果要用虚拟化,要用云,你的软件必须已经要Ready了?
11. 周秋野:首先这样,对于我们来说谈不上云,就是虚拟化。我们不像百度、阿里,或者新浪,就是单机跑。但是我们现在是单机跑,有可能下个月,我们会采取,就是加存储这种方式去做成真正的虚拟化,因为所有的工作是一点点来的,我们现在做得事情是从零让它变到一,再从一到无穷大,我们作为Leader来说就是帮员工去从零变到1,剩下的事情很多的规划都已经做好了,就是员工去做,他发挥它的想法去做,我这是给员工一个空间的,我提出的虚拟化未必完成,因为所有事情我不一定能一一都盯到位,也不一定所有东西我都通,但是我可以借助外面的资源来给大家去讲课,去聊这些事情,像刘宇做得比较好,Puppet给我们搞搞,像你这块虚拟化,给我们也讲讲,大家所有的东西都有一个学习成长的空间,像我昨天讲的虚拟化,就是只适合于我们自己的这个平台,拿给别人有可能不是特别适用,对于我们来讲,第一个有效,第二高效,第三便捷。
邵海杨:但是要建立在压测基础上?
12. 周秋野:所有的东西必须要有一个压测,压测是根据你公司的测试部门,也都是我们技术团队内部的,测试部门以及我们自己的暴力测试,来跑出它的一个极限值,这样的话,你才敢把这个东西放到线上去用,并且也不是说一下就直接推到虚拟化的,并且这里头也有一个过渡的过程,不知道我这回答满意吗?
邵海杨:基本满意,因为我一直是想知道,如果用虚拟化,我一直有个困惑,就是我们那个软件要能做到双耦合,最好是无共享,这样我这个软件才可以平等的部署到很多个虚拟机上面去,任何一个虚拟机就可以切换掉。
刘宇:我们这个话题是聊聊如何解放我们的运维工作人员,关于虚拟化那部分的问题,谁问的?这种人一定要先拉出去先毙了。
邵海杨:这个我还是想说一句的,我对运维的人生未来还是有考虑的,我们要有个高瞻远瞩的观念,我现在一直坚持说,当我们的运维工作,我现在说正题呢,当我们的运维工作从烦琐的苦B的日子里面解放出来的时候,我们要想的更多的是我们的未来,我们的成长点在哪里,我认为云是一个趋势,不可抵挡的,所以我们要去认真的去对待,或者去研究这个云……你怎么又拿面膜出来?……所以说一个是Openstack我觉得是要关注的,就是能够管理云的自动化工具,那么我以前,这个是自动化运维的利器,这是高富帅的利器,Puppet。
邵海杨:就是有了Openstack和Puppet那么就能搭建出一个,无论是公有云还是私有云,那么有了这两个组合,我们的运维工作也可以变得更加轻松,你不是说你只有少量的硬件吗,没问题,现在少量的硬件可以用Openstack,虚拟出很多个虚拟机,这时候你就有冗余了,就不再有单点故障了,这下你就轻松了。你要不要谈一下Puppet?我很崇拜你。
刘宇:谢谢谢谢!自动化的工具,我们可以选很多种,然后Puppet这块,可能说在众多自动化工具里面相对来说比较优秀一点点,它能够更加利于我们去管理,我们所谓的系统,工具,包括他所支持的,秋野所说的,虚拟机欢迎你使用Puppet来管理,当然能帮你搞定你现在所有的虚拟机,包括你以后要扩多少都OK,其实我觉得我还是想回到刚才我们的问题上来,这个是很关键的!我觉得是没错,讲的是很有道理,以后未来我们这个运维的工作,可能就是一个Openstack加一个配管工具OK了,顶多我们还会有一个类似Github机器的一上来,我可以拿我的手机,Pad,我远程去控制,我告诉他要干吗,你给我一些什么信息,这样才能真正的去释放我们运维工作人员,那个东西需要我们去,不断的去走很多路,而我觉得草根运维会面临着一个很大的问题,就是叫工程师文化,我觉得这个话题是挺大的,我们把它缩小了一点点,叫运维的地位,就是你在一家公司你会发现,销售的地位是最高的,我们是挣钱部门;运维不挣钱,内耗,这怎么弄?你说我一个月开销过多少钱,老板就傻眼了,你这个月怎么又买服务器?人家服务器才五百块,我这个月挣了多少钱,老板说,走,今天我请你们吃海底捞,那怎么办?我们怎么去突出,去彰显出我们运维工作人员做了什么事情,我做这件事情是通过什么样的维度去做得,我完成了多么大的挑战,我保证了我们线上的业务,比方说这种活动能够顺利的开展,我不停机,我多牛,我在这样一个成本之下,我达到了公司业务拓展的需求,这个价值我们怎么去体现,秋野谈谈你的看法?
13. 周秋野:一句话,你应该是成为一个会讲故事的工程师。故事讲得非常的完美,非常的动人,你能够打动老板,你能够给他讲出来一个非常美妙的交响曲,这样花的钱也值,他也愿意花这笔钱。你首先要指出不足的地方,公司里IT不足的地方,并且告诉他,我以最少的成本来解决这个问题,我们是来帮助老板解决问题的,而不是随便拿钱去花的。我们也知道,公司的员工,销售部门,业务部门,挣来的每一分钱都是血汗钱,我们不会乱花,我们都会节省再节省,压缩再压缩的去花这笔钱,包括新浪,大公司,他如果页面上稍微的多一K,或者是几十K,他的带宽的成本将会增加几十万,或者上百万。对于我们小公司来说,有可能这个问题看不出来,也就是几千块钱的事情,我们多买一台机器,一万两万,或者三万,但是从这个角度来说,我们花三万块钱,一定要办到十万或者二十万的事情,我们也需要自己会做一个计划,以及自己也会算一笔帐,运维有可能以后的工作,会变成技术运营,就是一个运营的工作,我来帮各个部门去算帐,我来帮我去算帐,帮老板去算帐,如何去进行省钱,这样才行。你不会讲故事,光会干活,这有可能就是需要做一些自我的提升了,当然这个故事,当然也要讲得切合实际,不能瞎讲。
邵海杨:刚才我再补充一点,就是我刚才说,运维要积极去寻找自己的伙伴,其实我也想说,就是在我们的运维工作当中,在我们的公司业务发展当中,也可以去寻找第三方资源。秋天的野菜,你昨天提到,要善待第三方资源,我觉得这是我在所有的会议里面,第一次听到这样的名词,因为大家好像都在说自己的技术,但是没有提到第三方给你带来的帮助,像我,在我们的又拍云存储里面,像DNS,就是交给DNSpod,监控就是交给监控宝,因为我们的业务在流转,买他们的VIP服务完全值得,我交给他们,我信任他们,我愿意花这个钱。
刘宇:我觉得你们做出的这个决定,已经跟得上潮流。
邵海杨:因为我们是草根,所以要抱团取暖。
14. 周秋野:我昨天也提到这个第三方,因为一个好汉肯定三个帮,就像我们三个人坐在一块,都围绕在杨赛旁边,可以经常切一下他们,杨赛和大家打招呼。
杨赛:我是InfoQ的编辑杨赛,把他们三个拽来玩玩,希望大家喜欢。
15. 周秋野:杨赛一直是幕后英雄,我们仨就是表面的。第三方确实是给我们很多的帮助,就像这次的我们桃花节,像DNS,我们也寻求了一些保护,像我们的浏览清洗寻求了一些保护,以及加上我们CDN,包括CDN质量好不好,也需要一些其他第三方的监控,所有的数据,第一手数据,我们是必须要能拿得到的,否则我们两眼一摸黑干活,这活肯定干不好。第三方资源,虽然我们是花了钱的,给人付费的,平时像朋友一样去相处,去对待,但是真正干活的时候必须要给力,我们跟他们建立的都是战略合作伙伴这种关系,这个像渣浪,你们公司也有很多这种第三方的公司去做支持。
刘宇:最大的一个例子,我觉得商业CDN业绩的,或者说功劳功不可抹,在我的眼里,商业CDN真的是支撑了新浪这么多的业务,每一次,比如说微博在突发事件的时候,那么微博普遍的这种流量瞬间会上涨的,会上扬上来的,这个时候商业CDN给我们做了很多的支撑,商业CDN在跟我们自己的CDN在做融合的时候,他跟我们也做出了很多的这种技术的支撑,我们和他们这种对接和磨合,已经建立的非常好了,我们的节点的质量优化,我们也在不断的去探索和跟进,这是一个非常,也是未来,我们觉得不管是草根也好,还是大公司也好,我觉得我们都应该往这个方向去走,谁走得好,做得优秀,那么我们,就要跟他去学习,去使用他,而不是说,我自己再去造一个。我觉得这是一个非常好的事情,应该值得分享。
16. 周秋野:我们不能够随意的关门,闭门造车,班门弄斧,这样对谁都不好,尤其对公司,对个人发展也不是特别好。因为还有一点,就是创新,也需要有一些思路。我们是属于二线的,肯定还会有大多数的三线互联网公司里面,运维工程师工作非常的痛苦,非常的苦恼,但是没关系,可以给我们发微博,可以@我们,你有什么样的酸楚的事情,不好办的事情,都可以跟我们去聊聊,因为我们三个人,基本上也都是从最底层的工程师开始干起来的,大约也有个七八年的工作经验,我们三个人加起来也都快一百岁了,差不多吧?加杨赛我们有可能我们是一百五十岁了。也非常辛苦我们今天的摄影师。其实做运维,还是大家心情要爽一点,在公司里工作一定要非常开心的工作,非常开心的生活,因为生活是您整个的一部分,心情如果不好有可能会影响一切。
刘宇:总结一下?刚才跟海洋秋野学习了很多。我做个总结,我觉得运维如果想要释放自己,第一点我们心态很重要,一定要有一个开放的心态,第二一定要有一个乐观的心态。我的网名叫做守住每一天,我同事跟我说你应该叫守住每一分,因为我online oncall的时间就能做到这样子,为什么?其实我很开心的,不管我在什么时候,我都可以oncall,这是我最基本的一些事情,但是在这个前提之下,我有很好的心态,为什么?我每天见到他们说我昨天熬夜了,我照样每天嘻嘻哈哈的。你昨晚熬夜了?我说熬夜了,是,没什么,挺好的,我给你们解决了很大的问题,我能保证你运营第二天不头疼,那么这就是运维工程师的价值,在一个好的心态下,我们去做更多的事情,包括我们做自动化的运维,架构的容错,包括我们向公司申请更好的资源,更优秀的资源,因为你的第一印象就会去影响他。第二,你团队Team这种环境,对你来说是非常重要的,这就提到了互帮互助,有问题,他不会,向我请教,这我很高兴。第三个,我们还要会讲故事,每个人在公司都需要去讲故事,因为运维人员跟我们Team一块去交流也讲故事,我们就在这里跟大家讲一个故事,那么还有一些,就是我们在第三方,另外一个,我们在做运维的同时一定要记住一点,你要替公司省钱。做任何事情,一定要记住了,我要给公司省钱,你一定要建立在成本之上,成本是最关键的。还有一些我们叫不断的去创新,因为我们运维工程师,如果你还是非常草根的,我还在SSH,这种情况下,的确没有办法。所以我们要创新,使用更好的优秀的软件,包括你自己开发这样的软件,才能彻底的解放我们,那么我们就一起。希望我们未来的运维工程师,那么一点都不苦B,每天拿着手机,喝着咖啡,搂着小妞,发着微博,晒晒太阳,搂着老婆,看着孩子。我们在一起开开心心的再唠,谢谢。
17. 周秋野:每个人说最后一句话,从你开始。
刘宇:非常感谢杨赛能够让我们在这InfoQ这个聚会上面能够聊运维的话题,也非常感谢我们的摄影师,谢谢。
18. 周秋野:非常感谢大家,今天认识了好多的朋友,InfoQ和QCon给我们带的不仅是技术,还有很多的朋友,友情,当然也包括激情,多认识很多朋友,对于我们以后的个人发展来说还是非常有帮助的。希望InfoQ越办越好,以后能多找一些我们这样的好兄弟一块来聊一聊,因为互联网需要人,需要人气,需要大家一块来共同的学习和进步,谢谢。
邵海杨:我在这里也表示对InfoQ的感谢,那么刘宇说得非常好,我们本着一种开放的心态。InfoQ给我们提供了这样好的平台,我们自己的工程师也要把握这样的机会,本着开放的心态,多交朋友,多交流,那么在你的危难之时就会有朋友伸出手来帮助你,每一次帮助就会帮助我们前进,帮助我们进步,谢谢。