专访抚琴煮酒:漫谈CDN运维与电子商务运维

原创
系统
运维需要掌握各个方面的技术和知识,如何才能少走弯路?在CDN做运维和在电子商务网站做运维有什么不同?在本次人物访谈中,我们邀请到了资深项目管理工程师余洪春(抚琴煮酒)跟我们分享他的一些经验心得。抚琴煮酒目前主要负责电子商务网站的维护和技术研发支持等工作。

【51CTO独家专访】运维需要掌握各个方面的技术和知识,如何才能少走弯路?在CDN做运维和在电子商务网站做运维有什么不同?在本次人物访谈中,我们邀请到了资深项目管理工程师余洪春(抚琴煮酒)跟我们分享他的一些经验心得。

在之前的一些文章和访谈中我们也介绍过,抚琴煮酒在2005年开始正式进入企业网管的岗位,在2007年到2009年之间在北京3158维护CDN系统,后来回到武汉某外企任职高级Linux/Unix系统管理员、项目实施工程师,负责电子商务网站维护、内网开发环境部署、以及技术研发支持等工作。最近加盟新组建的电子商务网站一拍网,担任系统架构师一职。

人物名片
姓名 余洪春(抚琴煮酒)
英文名Andrew.Yu
职位 武汉某外企高级Linux/Unix系统管理员、项目实施工程师,一拍网系统架构师
技术特长 负载均衡高可用和中小型证券类和商务网站架构
目前关注 网站架构和网络安全
个人博客 http://andrewyu.blog.51cto.com/

51CTO:首先介绍一下您现在的情况吧。您现在加盟一拍网,主要还是负责电子商务网站维护、内网开发环境部署和技术研发么?

抚琴煮酒:主要是负责电子商务网站维护和技术研发。由于是小公司,所以不存在内网开发环境这块,程序这块我们全部外包出去了;公司没有程序员,肯定就不存在内网开发环境这一说。

一拍网的网站架构现在是我在设计。一开始预算不多,前期规模不会很大,后期我会再增加四台web服务器和四台squid反向加速服务器,全部用二手的2950,这样性价比最高!

51CTO:也就是相当于现在更多还是偏向于生产环境运维这一块了。从酒哥的经历看来,您自己对Windows、Linux/BSD服务器,网络以及数据库都有所涉猎。学了这么多方面的东西,您觉得从2005年正式开始转作企业网管到现在,发展的过程中有没有哪些走了弯路的地方?

抚琴煮酒:我感觉在工作中有二个方面花了不少时间和精力,但收益非常之少;

一个方面,我有段时间很喜欢研究别人没研究过的东东,比如DDNS,花了不少时间和精力做出来的实验却没法在生产环境中应用,还有samba结合域控等,我也想提醒大家,建议大家学习和努力的方向,应该是生产环境下能用得着的,大家真正在企业做事,领导真正看中的是你的经验,即你能够迅速投入生产环境的技术,而不是你会什么能什么;

第二个方面,我花了接近一年时间从事RHCE和Linux方面的教学工作,虽然认识了不少朋友,也拓宽了自己的职业发展方向,但我个人觉得,这种工作性质跟我目前从事的项目实施工程师还是很有距离,做讲师虽然是一个知识沉淀的过程,但由于接触不到生产环境,技术退步的反而性可能更大。

51CTO:就是说如果希望在项目实施工程师方向成长,最有效的方式还是尽可能的多参与生产环境的项目,这样才能知道企业真正需要什么技术么?

抚琴煮酒:恩,如果对自己有要求和不怕辛苦的话,建议多参加生产环境的项目实践,这是一个方面。第二个方面建议在一些大公司和门户网站做事。因为如果没有足够大的并发环境,许多开源的新技术都用不上;大家现在可以关注下淘宝的新架构,用了不少自己开发的新技术,这个也是我们应该关注的。企业真正需要的并不是什么技术,它需要的是能做事的人,特别是能够为自己的公司节约钱的人,这也是现在Xen虚拟化和集群如何流行的原因之一! 

51CTO:刚好您说到节约钱,那我就先顺便问一句:酒哥有没有遇到过老板出于成本考虑不愿意添加服务器的情况?

抚琴煮酒:这种情况居多啊。像我现在做的许多小网站,就是因为客户不愿意增加服务器,逼得我用HAProxy做1+2的架构;而公司用的测试服务器就不说了,经常是组装的服务器,装个VMware ESXI都装不上,所以我只有花许多时间来测试VMware Server和思杰的XenServer5.6!

(编辑注:这也是抚琴煮酒写过很多虚拟化方面文章的原因。参考文章:

手把手教你在CentOS 5.6下安装Xen虚拟机

XenServer 5.6使用心得和常见问题解答

FreeBSD 8.0下jail虚拟机完全实践

51CTO:难怪酒哥把各种虚拟化都试用了一圈。那么回到之前走弯路的那个话题。比如酒哥在07-09年间在北京3158负责维护CDN系统。那么07年之前,您对CDN系统有什么样的理解?然后现在您要总结的话,维护CDN系统都需要哪些技术?

抚琴煮酒:CDN主要是用来解决高并发和南北互连的问题,南北互连的问题即电信和网通之间的问题,CDN维护的技术含量非常高的,我觉得应该至少具备:

 

一、极熟悉linux/FreeBSD系统,我希望这方面的经验至少是3-5年以上的,因为很多时候我发现,CDN系统都是基于FreeBSD的;

二、极熟练的配置Linux的集群技术,比如LVS/Nginx/HAproxy,还有F5等硬件负载均衡,软件级别的负载均衡我希望大家能到一个比较精的水平;

三、了解squid和varnish原理,能够熟练的配置和优化它们;还有Nginx,这个是基本功,这一点是玩CDN中最重要的,尤其是squid的优化。

四、bind的智能view搭建和维护,这个不多说了,基本功;

五、熟悉至少一种数据库,能够DBA一起交流,能够设计数据库架构和切分,解决流量过大时,数据库的压力问题;

六、熟悉iptables的配置(这个看公司的需求了,有的公司有钱,全硬防);

七、能够熟练的配置openVPN,解决节点之间互连的问题;

八、能够用SHELL和puppet等分布式工具,解决和节点服务器自动配置和同步的问题。

 

CDN维护的技术含量非常高,我这里的要求只少不多,有些技术问题我可能暂时也没想到,因为现在CDN基本都是上亿级的PV,并发一般都是上万,这样的环境是最锻炼人的!

51CTO:CDN维护的工作听起来很复杂。相比之下,电子商务网站的运维又有哪些特别值得注意的技术点呢?

抚琴煮酒:CDN我感觉是架子大,初期搭好比较难,但搭好以后维护就相对轻松一些,大家各司其责就行,每一个节点都有一组集群,集群中的某台服务器出问题也没什么问题;但电子商务就不一样,我感觉每一天就像打仗一样,因为牵涉到的都是钱,所以丝毫不能松懈,电子商务网站我觉得应该掌握的技术有:

一、熟悉安全技术,了解硬件防火墙性能,能熟悉的配置iptables和了解Linux/Unix相关的安全工具;

二、熟练的配置Linux的集群技术,比如LVS/Nginx/HAproxy,了解其原理和会话保持机制;

三、熟悉的配置Nginx和Apache服务器,能熟练的配置其正则;

四、熟悉和了解MySQL或oracle数据库,至少要了解一种;

五、熟悉存储;

六、熟悉和了解虚拟化技术;

七、极熟悉SHELL脚本,用其实现工作中的各项需求;

八、懂PHP或java代码。

51CTO:我记得酒哥前一阵子在研究到底用lvs+keepalived还是Haproxy+Heartbeat架构,我现在看一拍网的架构图,最终还是选择了lvs+keepalived的架构,这个选择是出于哪方面的考虑?

一拍网系统架构

抚琴煮酒:LVS+Keepalived我用了好多了(这种大家都应该相当了解和熟悉),我很多网站都是用这种成熟的负载均衡高可用方案, 一拍网的架构的负载其实是二层,LVS(一层--》Nginx(二层);由于我目前还只是将HAProxy+Heartbeat在内网测试环境下通过,主要是担心heartbeat的心跳问题。

HAProxy跟LVS比较类似,主要是Keepalived跟Heartbeat不一样,Keepalived是通过发送vrrp包,模拟一个路由出来;而Heartbaet的工作机制大家应该有所了解,它是比较成熟的双机方案,这里我不也想混淆大家,HAproxy+Heartbeat方案只是我研究的兴趣方向,如果大家想用成熟的线上方案,我推荐LVS+Keepalived或Nginx+Keepalived,参考地址:

http://network.51cto.com/art/201101/241997.htm

51CTO:那么就差不多最后一个问题。谈谈您马上要出的新书《构建高可用的Linux服务器》吧。这本书差不多8月能买到了吧?主要适合哪些人群阅读?

抚琴煮酒:对,8月底可以买到了。这本书主要涉及的是有几个方面,Linux集群、iptables防火墙和Linux安全及Xen虚拟化在里面占了很大比重,此书适合系统管理员、开发人员和网络管理员及IT类学生阅读。

51CTO:感谢抚琴煮酒本次的分享!本次专访到此结束。

【编辑推荐】

  1. Redis能干啥?细看11种Web应用场景
  2. 51CTO技术沙龙第10期:企业服务器安全攻与防
  3. 实路出真知 FreeBSD8下Bridge配置openVPN
责任编辑:yangsai 来源: 51CTO.com
相关推荐

2010-12-21 17:31:48

2013-09-13 16:15:29

柯旻运维云计算运维

2011-01-07 17:48:31

IT博客大赛50强IT博客

2011-11-11 15:05:56

Linux运维趋势电子商务

2012-08-15 14:58:01

运维架构师

2016-12-13 13:15:49

运维

2021-07-12 15:20:47

运维负载均衡CDN

2019-03-19 08:41:38

Linux运维变更

2010-08-17 11:11:34

2011-11-24 21:59:55

运维企业外包

2010-01-21 22:19:25

网络优化运维管理摩卡软件

2017-02-27 18:50:42

运维持续交付

2019-03-15 10:13:10

运维云计算运营

2013-08-27 11:07:28

自动化运维运维架构师小米

2010-05-12 15:39:49

IT运维信息化建设北塔

2010-11-12 13:21:20

2013-03-29 09:15:08

IT运维运维人员运维工程师

2018-12-14 11:04:56

数据库运维智能

2014-09-12 15:14:53

运维开发

2018-03-27 16:23:53

运维AI智能
点赞
收藏

51CTO技术栈公众号