文档详情

TFS海量小文件存储系统线上运维经验.pdf

发布:2017-06-14约2.5千字共3页下载文档
文本预览下载声明
微博为粉丝群紧急扩容TFS 集群经验分享 新浪微博 平台架构师 卫向军 微博12.21 日发布客户端5.0 版本,其中的粉丝群刚一上线,流量马上暴涨, 尤其是粉丝群内的语音、视频分享急剧增加,几天时间内,3 年前搭建的TFS 集 群容量达到80%,为了应对圣诞、元旦、春节的明星推广活动,平台对整个系统 紧急扩容。 首先简单介绍一下,TFS (Taobao File System )是淘宝专门针对海量非结构化 数据存储设计的分布式系统,其构建在普通的Linux 机器集群上,可为外部提供 高可靠和高并发的存储访问。 平台的文件服务平台,构建在TFS 集群上,为微博提供海量小文件存储,包 括长微博、对象库底层的实体库、私信附件、粉丝群附件等,这些文件通常文件 大小不超过1M,全部存储在文件服务平台。 文件服务平台分为三层:1)最上面是proxy 代理层,根据fid 做hash sharding, 完成下行请求到Download Node 的路由;2 )中间是Download Node,通过fid 从 wCache 缓存读取文件返回或者穿透到TFS 集群,并回源到wCache ,由于有权限 规则,所以没有用CDN ;3) 最下面是TFS 集群,由数量众多的数据节点(Data Node) 组成,支撑具体文件的下行访问请求。 Step 2 :灰度上线Proxy节点,使用1/N的QPS请求量来预热 Download Node 的wCache缓存 Proxy Proxy Proxy 应用以及缓存 扩容前 Step 1:灰度上线Download Node 扩容后 Download Node Download Node Download Node Download Node Download Node Download Node Download Node Download Node Download Node Download Node wCache wCache wCache wCache wCache T FS集群 Step 3 :灰度上线TFS集群的Data Node 扩容后 扩容前 Data Node Data Node Data Node Data Node 在平台扩容整个系统的过程中,一共分为三个主要阶段: 1. 灰度上线一部分的Download Node,这个时候这些节点还没有生效。 2. 灰度更新一台proxy 的可调度Download Nodes,这台灰度的proxy 可以 hash sharding 到#1 扩容后的所有Download Nodes 上,这一步的目的是逐 步预热#1 上线的 DownloadNodes 节点上的wCache ,防止穿透到TFS 集 群,引起雪崩。 重复步骤2,完成所有Download Nodes 的wCache 缓存预热后,全量更
显示全部
相似文档