首页 > 新闻 > 国内 >

Yahoo! 数据中心用户超8亿运维团队却仅有百人

2014-02-13 10:17:13   作者:   来源:比特网   评论:0  点击:


  技术生态圈

  有了世界顶尖的硬件环境,软件环境也不可少。下面我们着重介绍下Yahoo!的技术生态圈,看看Yahoo!使用了哪些产品和技术来支持大规模网络应用。

  在雅虎内部构建一个超大规模应用其实并不是那么的复杂,因为我们已经提供了一整套完整的技术体系来帮助开发人员快速建立起一个具有高可维护性的超大规模应用。

  图3 Yahoo!数据中心技术生态圈

  从这张图我们可以看到一个新应用在生态圈里和现有技术平台的关系:

  新应用(APPLICATION)只需要更多的关注自身的业务逻辑。与应用密切关联的本地信息,我们有一些本地存储(LOCAL STORAGE)技术来供应用使用,比如关系性数据库MySQL、Oracle,存储Key-value型数据的MDBM和Memcache。另外,雅虎还提供了大量的平台服务(PLATFORM SERVICES)供我们各种应用使用。比如统一验证平台YCA来完成所有应用内及应用间的身份验证,统一防御平台Ydod来帮助我们识别并且隔离恶意/滥用的流量,用户信息服务UPS可以让应用方便的获取这个用户的相关信息,如地理位置,兴趣喜好等。个性化内容推荐服务Slingstone,可以直接向用户提供个性化的雅虎内部及合作伙伴的内容信息。另外新应用还能方便快捷的接入广告平台(AD SERVER),获取个性化推荐的广告。前端应用收集到的各种应用相关信息(如浏览点击数据),通过我们构建在全球骨干网络之上的数据高速公路(DATA HIGHWAY)这一统一数据通道,及时地回传到雅虎全球最大的商用Hadoop群集。在Hadoop群集上不同应用及平台服务根据各自的需求,处理对应的数据,并将处理好的数据在通过雅虎全球骨干网络分发到各个数据中心的服务端,以方便前端应用的调用。同时Yahoo!在云端(THE CLOUD)还提供共享的云存储(STORAGE),以方便全球化应用的同步和调用各种共享数据。

  除了这些常见的技术来帮助快速构建超大规模应用,我们还提供了大量的技术和产品来进行高效的运维和管理:

  主机信息管理系统:通过主机信息管理系统管理所有系统硬件信息,如CPU、内存、硬盘、网卡地址、Console接口、电源接口、物理位置等。

  角色配置管理系统:主要是把主机根据角色分成不同的组,不同角色的主机会应用不同的配置。不同角色的主机有不同的运维团队、系统配置、应用配置等。

  网络设备管理系统:包括交换机上的访问控制列表、负载均衡设备的配置、全球负载均衡配置,以及访问状态数据的统计。

  统一的监控平台:用于从不同层面进行监控,我们有所有主机系统数据的监控,也有基于服务可用性的监控。然后我们也有访问量、访问延时等应用层面的数据监控,并可以和历史数据进行比较。

  所有的这些平台大多都是雅虎运维团队自行开发和维护的,更贴合Yahoo!的使用体验,帮助对超大规模的主机进行统一和高效的管理。

  运维团队

  前面的两条分别是硬件和软件环境,除了一流的硬件和完备的软件环境,能够实现高可用性大规模应用的核心,还是人。所以我们在最后,会给大家介绍雅虎的全球运维团队是如何工作的。

  在Yahoo!我们的运维团队除了基础设施的Operation团队,如数据中心现场工程师(SiteOps)、网络运维工程师(NetOps)、基础设施(DNS、DHCP等)运维团队(InfraOps)和安全团队(Paranoid)等。我们还会按照产品线划分出Service Engineer团队,来支持这项产品的应用运维。

  SE(Service Engineer)团队和大部分公司的系统运维工程师一样,会负责生产系统维护,如部署应用、监控报警、配置管理、变更管理及故障管理。除此之外,在雅虎SE团队会更多的深入了解应用。

分享到: 收藏

专题