分布式存储在IPTV中的应用
2017-06-21刘迎盈江苏省广播电视总台新媒体事业部
刘迎盈 江苏省广播电视总台新媒体事业部
分布式存储在IPTV中的应用
刘迎盈 江苏省广播电视总台新媒体事业部
当今世界迎来了大数据时代,随着人们娱乐生活的不断丰富,对视频需求日益增长,IPTV也顺应市场,采购、制作、发布越来越多地满足人们需求的视频、图片。面对日渐庞大的数据信息,亟需一种高可靠、高扩展性的存储方式。本文介绍了江苏省广播电视总台IPTV正在使用的一种先进的存储方式--分布式存储。
分布式 冗余配比 弹性扩展
1 .引言
IPTV平台数据以非结构化数据为主,大多为海量的视音频文件及图片等。随着人们对娱乐要求的不断提高,这些数据呈现爆发式地增长,文件数量飞速增加。同时,由于对高清、超高清视频的需求不断增加,单个文件的容量也不断增加。原先的单纯NAS和SAN存在瓶颈(容量不易扩展、性能不易扩展),不能很好地满足未来IPTV的存储要求。因此,分布式存储架构势必成为未来趋势。而IPTV为了拓展业务,建设了一套全新的面向多运营商的全业务集成播控平台,新平台首次采用分布式存储架构作为新系统的存储架构。
江苏IPTV此次采用的分布式存储架构,为全对称分布式架构,支持大规模横向扩展能力和超大单一文件系统,为系统提供非结构化数据共享资源存储。采用全互联全冗余的组网机制,允许系统中所有节点并发访问整个系统的任何文件;支持从多个节点并发访问相同文件的不同区域,实现高并发高性能读写,对外提供标准的NFS/CIFS/FTP接口。该方案能大幅简化数据管理,显著提升数据保护性能与灾难预防能力,从而大大降低运营成本。
系统逻辑架构见图1。
图1 系统逻辑架构
系统总体按照逻辑分为应用层、数据处理层、硬件层。
应用层主要为IPTV内容制作生产平台的素材内容、集成播控系统发布的成品内容以及日常素材经转码平台转码后产生的新文件。
数据处理层,即软件系统层,主要为分布式文件系统和多种增值特性,提供对外共享的NAS共享服务和统一管理的管理系统。
硬件层包括网络和物理节点及节点内的硬盘、网卡、NVDIMM、内存等,提供所有产品的硬件支撑。
2 .分布式存储组网架构
图2 分布式存储组网架构
分布式存储组网架构见图2。主要硬件为三个分布式存储节点,两台内部光纤交换机以及一台网管交换机。
存储组网划分为三个独立网络:前端业务网络、后端存储网络和管理网络。前后端交换机实现冗余配置。
前端业务网络用于存储及与用户网络对接。前端业务网络主要用于同IPTV生产制作平台、集成播控平台以及转码系统的对接。三个节点各使用2个10GE接口,通过光纤分别连接到2台上联Cisco 6880交换机。各节点组成集群系统,对外提供统一的业务访问域名和管理访问入口,便于业务接入和操作管理。
后端存储网络用于存储内部节点间互联。内部三个节点通过内部2台CE6810万兆光纤交换机实现互联互通和业务数据通信。
管理网络用于存储与用户维护网络对接,通过此网络分配存储资源、管理和维护各存储节点。IPTV本身设有一个专门的管理网络,分布式存储多个节点连接到一台S5700管理交换机,再由交换机上联至IPTV管理网络。各节点的IPMI接口使用1×GE网线连接到S5700交换机;前三个节点的1个GE接口使用1×GE网线连接到S5700交换机;每台CE6810交换机的1个GE接口使用1×GE网线连接到S5700交换机。
3 .分布式存储功能描述
3.1 文件共享
同时支持CIFS、NFS和FTP协议,兼容多种操 作系统,可以实现异构网络环境下的文件资源共享,支持对目录或文件同时设置CIFS、NFS和FTP共享,并提供对CIFS、NFS的统一域名访问机制,使业务轻松接入存储系统。目录共享架构见图3。
图3 目录共享
3.2 分布式文件系统
分布式文件系统对数据进行按节点条带化处理,首先,创建新文件时文件系统会按照配置的保护级别挑选符合要求的节点,然后写数据时文件系统将用户的数据平均分布在各节点上,读数据时文件系统从所有节点并行读取,提高了读写性能,保证数据的高可靠性和服务的高可用性,还保持了高的磁盘利用率。
3.3 集群负载均衡
客户端连接负载均衡采用了基于DNS域名的负载均衡技术。在域名解析阶段,存储负载均衡服务根据负载算法分配集群中的某一台节点供客户端进行访问,后续的业务数据交互直接由客户端与被分配的节点之间完成。见图4。
图4 集群负载均衡系统逻辑架构
存储的负载均衡服务本身被设计为一个集群系统。在集群任意时刻,有且仅有一个主节点。各个节点周期性采集当前的节点负载信息,节点负载信息包括节点CPU核数、CPU主频、内存大小、网络网卡信息、当前CPU利用率、当前内存利用率、当前网络吞吐量、当前NAS客户端连接数等信息。各个节点将采集好的负载信息统一发往负载均衡服务主节点。负载均衡服务主节点将收集好的负载信息作为负载均衡的依据。
存储对外提供统一的域名访问,而域名查询请求服务被集成在了负载均衡服务之内。在客户进行域名查询请求的时刻,负载均衡服务基于当前所配置的负载策略进行负载计算,返回合适的节点IP给客户端,供客户端接入访问存储系统。
3.4 冗余配比
存储系统提供多种N+M(或者N+M:B)的冗余比配置,可根据业务需求在管理界面上进行配置。配置的范围可以是任意目录,对目录配置冗余后,目录下的文件都采用该冗余配比保存;甚至还可以对目录与此目录下的子目录配置不同的冗余比。
此次项目平台采用了分布式存储方式N+2(N=3),文件数据被切成三个数据片,另外再计算出2个冗余分片。此配置方案可以保证最多损坏1个节点或者2块硬盘,即一个节点或是2块硬盘损坏后,仍可以正常读写。图5是数据分片示意图。
通过冗余配比,用户可以灵活多变地根据自己的实际需求来指定数据冗余比例,从而设置最适合的可靠性。
3.5 配额管理
随着信息资产的不断膨胀,对存储的空间管理成本和负载度也日益增加,配额管理可以为用户提供弹性灵活的空间访问配额控制能力。配额管理是为了实现在同一个共享文件系统中,为不同用户或者不同目录分配不同的使用空间,并对其空间大小进行管理。该存储支持文件数量配额管理和文件容量配额两种配额。
通过配额管理,管理员可以实现以下功能:
(1)监控用户/用户组和目录的存储空间;
(2)可以为用户/用户组和目录的空间设置各种阈值,控制访问空间上限;
(3)提供自动的告警和灵活的报表 可以通过报表获知系统的资源占用情况,并在资源占用超出阈值或者达到宽限时间时自动触发告警;
配额管理系统逻辑架构见图6。
图5 数据分片
图6 配额管理系统逻辑架构
通过配额管理,管理员就可以对本地用户或登录到本地计算机中的远程用户所能使用的磁盘资源进行合理的分配,每一个用户或者每个目录只能使用管理员分配到的存储资源。
配额使得管理员可以方便合理地为用户或者目录分配存储资源,可以限制指定用户/用户组或者指定目录能够使用的磁盘资源,这样可以避免因某个用户/用户组或者某个目录的过度使用存储资源造成其他用户无法正常工作甚至影响系统运行,避免由于存储资源使用的失控可能造成的系统崩溃,提高了系统的安全性。
3.6 存储监控
通过DeviceManager可以查看当前设备整体系统信息,了解系统运行状态,检查集群工作情况及各节点具体运行状态,及时处理故障;查看CIFS、NFS、FTP共享服务状态;查看各个节点状态;查看交换机状态;查看告警信息;查看事件信息等。
4 .分布式存储优势
(1)高性能
采用全对称的逻辑架构,数据访问在集群内均匀分布,能大幅提升系统并发访问能力。通过全局缓存模式,整合所有节点缓存,同一文件的数据在缓存池只缓存一份,任意节点均可命中,有效提高数据访问命中率。
(2)弹性扩展
系统支持3节点至288节点弹性无缝扩展,单一文件系统可扩容至40PB。此次项目采购了3个节点,每个节点存储大小为35块4T硬盘+1块SSD盘。存储采用全对称架构,支持即插即用,单个节点加入集群后无需特殊配置即可对外提供服务。此外,系统提供了全局一致的缓存,缓存容量随着节点增加而线性增长,随着节点数目的增加,全局缓存的容量也增加,大大减少硬盘的I/O访问,提高整系统性能。
(3)高可靠性
系统提供从+1到+4等多种级别的数据保护方式,可以支持针对1个到4个节点故障的数据保护,在小容量场景下支持针对1块到4块硬盘故障的数据保护,基本覆盖了用户各种使用场景的可靠性需求。
(4)管理简化
支持灵活的空间配额、可视化自动部署、全面的性能监控、网络拓扑统一管理和统一的命名空间,管理维护高效集中,简洁易用。