加入收藏 | 设为首页 | 会员中心 | 我要投稿 厦门网 (https://www.xiamenwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

从临危授命到扭转乾坤,天天拍车运维架构演进及实践

发布时间:2021-01-12 05:02:55 所属栏目:站长百科 来源:网络整理
导读:《从临危授命到扭转乾坤,天天拍车运维架构演进及实践》要点: 本文介绍了从临危授命到扭转乾坤,天天拍车运维架构演进及实践,希望对您有用。如果有疑问,可以联系我们。 本文根据李强老师在〖4月8日DBAplus社群上海数据库技术沙龙〗现场演讲内容整理而成.
副标题[/!--empirenews.page--]

《从临危授命到扭转乾坤,天天拍车运维架构演进及实践》要点:
本文介绍了从临危授命到扭转乾坤,天天拍车运维架构演进及实践,希望对您有用。如果有疑问,可以联系我们。

本文根据李强老师在〖4月8日DBAplus社群上海数据库技术沙龙〗现场演讲内容整理而成.

讲师介绍

李强
天天拍车运维总监
  • 网名:撒加,先后在AdMaster、饿了么担任运维经理,现任天天拍车运维总监,主要负责天天拍车运维架构的管理、持续优化以及运维团队的建设、培养.
  • 9年以上运维及管理经验.作为国内最早一批思科网络模拟器的推广者、虚拟化先锋论坛的创始人,一直致力于网络模拟器使用的推广,为国内培养网络工程师尽一份力.

分享大纲:

  • 架构改造的动力
  • 运维架构详解
  • 未来的展望

一、架构改造的动力

大家好,我是天天拍车的运维总监李强,今天给大家分享一下天天拍车的运维架构的演进以及实践.我们公司前身是51汽车,也就是说,天天拍车的架构是从51汽车的架构一步一步演进到现在的.我们为什么要做架构的改造?是为了做什么?为了满足什么样的业务?今天的话题就分这三部分来讲,第一部分是为什么要改造,以及我们改造的动力.

1、网络层面

我入职51汽车面试时公司的技术VP和CPO告诉我机房的网络实在是太差了,希望找一个运维经理,对51汽车的机房网络进行改造,降低两机房之间的延迟.

所以,我到了51汽车以后第一次去机房就让我非常惊讶,为什么惊讶呢?

  • 盘丝洞

首先第一点,就是一个“盘丝洞”,大家可以想象一下“盘丝洞”是什么样的,估计做运维的兄弟们,下机房肯定能在里面看到某些公司的服务器交换的网络,到处飞线.这个问题在51汽车的时候非常严重.

  • 网络质量

第二点就是网络质量,我们是放在无锡国际,有两个机房.我去的时候两个机房用光纤互联的质量差到什么程度呢?如果你用mtr做测试可以从零点几毫秒变到三十、四十毫秒,外部访问51汽车网站就会很慢,延迟100多毫秒到200多毫秒,最小的时候是在50多毫秒.

为什么网络质量这么差呢?当时在我之前他们选择机房选了一家比较小的公司.可以这么说,如果你访问联通的线路,可以让你的路由经过美国再回来一趟.

  • 交换机收敛比

第三点是交换机的收敛比,当时全部是做bond的且为mode 0模式.我们的接入层接到上联的带宽是1G,一台交换机是48口的,每个机柜里面放12台服务器,每个服务器两个可做bond,总共用24个口.在理想的情况下交换机会产生24G的流量,但是上联到核心的时候只有1G,这个时候交换机的收敛比是24:1.这种情况下想让你的基础架构承载住你的业务基本是不可能的.

  • 网络部署架构

第四点就是网络部署架构.各位运维兄弟的公司里面也是这样的架构.电信或者是联通的线路拉进来以后先接的防火墙,防火墙后面再做负载均衡,不管是硬件还是软件.这种架构存在什么问题呢?所有的问题最终会发生在防火墙上.如果你的机房里面只用几万块钱甚至十几万块钱的防火墙,你就不要谈多少并发,要多少用户的访问.这就是扯淡,为什么呢?因为防火墙作为最前端的边界设备,如果你的请求进来会解包、封包再往后传递.

所以我们做网络架构时一般都是尽可能地在负载均衡前面少去接入一些硬件的防火墙,即使是用云防火墙也不要用硬件防火墙.

2、服务器硬件层面

我是2015年1月初入职51汽车的,在入职以后我收到了一个信息:2014年的11月份公司采购了28台服务器花了200多万.在去看服务器时,一直到我入职有三个多月的时间,这批服务器放在机房里面空转,为什么呢?就是服务器硬件搭配的严重不合理.

当时都是用的戴尔的服务器,而且是在关键的数据库上面,用的是戴尔默认的网卡.我看了非常震惊,戴尔的R820服务器用来做数据库的服务器,上面内存只有32个G,是4CPU,3块600G的SAS盘,就差到这种情况.

做虚拟化的服务器CPU都是用的E5-2603、2609的处理器.反而做分布系统的机器CPU是用的E5-2650的处理器.内存分配问题非常不均匀.

3、操作系统层面

操作系统层面就更惨不忍睹了,任何一台服务器上面的TCP/IP协议栈配置,几乎清一色的默认.另外我们的系统限制,比如说最大文件句柄数、进程数,还有我们的栈的大小全默认了.

System Limits很多同学会设置为65535,如果你们有这样干的话,真的是浪费了服务器的性能.

第三点就是IRQ Balance,运维的同学应该不陌生.服务本身初衷是为了尽可能的让CPU平衡地使用.但是在个别的情况下,不建议启动,尤其是跟数据相关的开源组件是不建议启动的.

第四点就是多余服务,开放很多多余端口.哪些端口是跟你的服务器所提供服务相关,哪些是你开了以后从来没有关注的.你服务的端口一定是开放的,而且是监听全网.还有一些服务全是监听在0.0.0.0上的.

根本原因就是开放多余端口,而且是向公网开放的.如果在公网上你的服务器用云,随便的NTP的反射攻击你就挂了.

第五点是我们的软件包冗余,是根据不同的业务定制化,安装需要的包.

第六点就是Linux网络配置不合理,你们服务器上做bond的举手,在做bond以后使用mode 0的举手,mode 1的举手,mode 4的举手,没有.Mode 0在你服务器流量大的情况下会造成丢包以及TCP重传,而且你的网卡会非常繁忙.

4、开源组件层面

再下面是开源组件的层面,软件版本不统一.当时很多接手机器上去看了一下.Nginx版本从0.8的到1.26的版本全都有.而且安装方式各不相同,有通过编译安装的,各种各样都有.

还有糟糕的配置,因为51汽车的业务是使用JAVA的,当时用的Tomcat 6作为JAVA容器,配置均为默认配置,当时就震惊了.还有开源软件乱用,大部分可以作为对象缓存来使用,当时我进到51汽车时,memcached是在滥用的,很多东西都往里面“丢”,导致内存的占用并不到,但是应用访问经常是超时的.

基于以上这些问题,我当时入职51汽车的时候,我们老大说给我两个月的时间改造,把基础网络架构改造了,把软件不统一全部进行标准化.

最后我们花了不到两个月的时间就把里面大部分的问题都进行了解决.接下来详细讲一下天天拍车现在的架构.

二、架构详解

(编辑:厦门网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读