天网云存储系统建设方案
天网云存储系统建设方案
1.1 存储需求概述
XX 天网二期需要建设XX 个高清监控点位,随着城市防控体系系统规模越来越大,以及高清视频的大规模应用,对系统中需要存储的数据和应用的复杂程度在不断提高,且视频数据需要长时间持续地保存到存储系统中,并要求随时可以调用,对存储系统的可靠性和性能等方面都提出了新的要求。
面对数百TB 甚至上PB 级的海量视频存储需求,传统的SAN 或NAS 在容量和性能的扩展上会存在瓶颈。而云存储可以突破这些性能瓶颈,而且可以实现性能与容量的线性扩展,这对于本项目存储系统来说是一个新选择。
视频云存储通过软件运用集群技术、虚拟化技术、分布式存储技术将网络中的存储设备集合起来协同工作,共同对外提供数据存储和业务访问功能。为满足本次高清点位视频存储的需求,同时符合行业发展趋势,满足业务使用需求,本次XX 天网二期拟建设云存储系统进行录像存储和业务访问接口。
大容量存储需求
随着各地城市视频监控系统建设的深入,摄像头数量日益增多。前端建设普遍采用1080P 高清摄像机。依据平安城市的建设要求,高清图像存储30天,那么一万路视频的总存储容量需要大致为十几个PB 。
集中存储需求
对于城市级系统数十PB 的存储需求,若采用通用IPSAN 存储方案,则需上千台IPSAN ,难以实现高效、统一的存储与设备管理,无法高效支撑公安视频实战应用。
高IO 性能需求
基于视频大数据的智能实战应用对大量视频的快速收集与分析有非常高的要求,而传统IPSAN 存储方式由于IO 性能低,无法满足视频大数据应用的存储与应用要求。
1.2 存储系统基本要求
在设计XX 天网视频监控系统存储系统时,依据以下设计要求:
(1)监控点的录像过程将对网络交换设备产生很大的压力,核心交换机应能负担如此大的交换压力,需考虑网络故障以后录像数据的缓存功能以及网络恢复以后的补录功能。
(2)能集中管理所有存储资源并统一调度,统一部署存储策略。与存储资源物理位置无关,只要IP 网可达,便可实现对存储资源随时随地检索和回放。
(3)保障存储系统数据的安全性,对访问权限进行集中管理与分配。
(4)存储空间统一管理、统一分配,可实现无缝在线扩容。
(5)存储系统具有冗余备份的能力,提供持续稳定的性能。
(6)存储系统提供标准的运维接口,维护简单方便。
(8)存储系统具备高可靠性,出现设备故障后,存储业务不中断。
本项目在XX 分局建设分布式视频云存储中心,每个存储中心依据接入到该区的视频前端的数量实际情况,规划建设分布式云存储系统。
1.3 云存储拓扑示意图
UCS 的存储节点通过Uni-FS
分布式文件系统,将多台存储节点上的物理资
源形成一个统一的大存储池对外提供数据存储空间,并提供数据保护功能。 云存储提供标准的CIFS/NFS/FTP/HTTP等文件传输访问协议;
通过流媒体服务器过存储服务器实现照片流,视频流的转存;
提供标准访问接口,兼容性好;
利用云存储提供的纠删码、复制卷等多种基础数据可靠性,解决视频数据冗
余问题,当存储节点、磁盘故障保证业务不中断,数据不丢失。
1.4 云存储架构
下图为分布式云视频存储解决方案总体架构图。
图:分布式云视频存储解决方案总体架构图
本次项目所采用的分布式云存储方案主要包含三大模块,分别为:业务服务层,数据处理层以及物理硬盘层。
业务服务层作为云存储系统的对外管理GUI 界面和业务功能服务层,实现云
存储相关的功能,如负载均衡、故障自动切换、认证管理、配额管理等,并可基
于标准协议ISCSI/NFS/CIFS/FTP、POSIX 接口等提供对外的业务连接接口;
数据处理层作为云存储系统所有存储节点之上的分布式文件系统,它将各物理存储设备节点组成一个集群,对外提供文件存取和数据保护等功能。完成内部文件系统的管理,完成各存储节点间的通信和任务调度、任务监测等。完成存储节点和设备的虚拟化。它采用无元数据设计的全对称分布式架构,支持3~300个存储节点的弹性无缝扩展,可提供PB 级单一存储空间。
物理磁盘层为云存储系统的基本组成单元,对外提供数据存储空间,包含实际的存储节点及其所插入的硬盘等。
本次项目新建的摄像机通过运营商提供的网络直达区分局机房,各分局对应的摄像机视频存储在各分局建设的分布式视频存储中心中,其中XX 分局的视频资源就近接入XX 分局分布式视频存储中心,XX 分局视频资源就近接入到XX 分局分布式视频存储中心。
1.5 云存储功能特性
1.5.1 无元数据设计
元数据就是记录数据逻辑与物理位置的映像关系,以及诸如属性和访问权限等信息。传统分布式文件系统一般采用集中式元数据服务或分布式元数据服务来维护元数据。
集中式元数据服务会导致单点故障和性能瓶颈问题,一般情况采用双机主备方式来解决单点故障问题但无法解决性能瓶颈问题,因此此类分布式文件系统的扩展性相对来说较差;而分布式元数据服务存在增加算法的复杂度,在性能负载和元数据同步一致性上存在问题,特别是对于海量文件的应用,元数据问题是个非常大的挑战。
本次宇视UCS 云存储系统采用无元数据服务的设计,取而代之使用算法来定位文件。集群中的所有存储系统管理单元都可以智能地对文件数据分片进行定位,仅仅根据文件名和路径并运用算法即可,而不需要查询索引或者其他服务器。这使得数据访问完全并行化,从而实现线性性能扩展。
1.5.2 弹性算法
本次设计的UCS 云存储系统,不需要将元数据与数据进行分离,集群中的任何存储节点和客户端只需根据路径和文件名通过弹性HASH 算法就可以对数据进行定位和读写访问,且文件定位可独立并行化进行。
1.5.3 全局统一命名空间
分布式文件系统最大的特点之一就是提供全局统一的命名空间。全局统一命名空间就是将多个存储服务器的磁盘和内存资源聚集成一个单一的虚拟存储池,对上层用户和应用屏蔽了底层的物理硬件。存储资源可以根据需要在虚拟存储池中进行弹性扩展。全局统一命名空间可以让不同的用户通过单一挂载点进行数据共享,I/O可在命名空间内的所有存储设备上自动进行负载均衡。
本次项目采用的宇视UCS 云存储系统是基于文件系统提供统一命名空间,在同一个、云存储系统中可以同时有多个文件系统的卷(物理资源池,由多个存储设备的资源组成),不同的卷创建的文件系统有不同的命名空间。云存储系统同时也是基于文件系统的卷提供共享文件目录,因此不同用户可通过访问这个单一的共享文件目录,实现IO 在这个文件系统命名空间内的所有存储设备上自动负载均衡。
1.5.4 纠删码数据保护
本次项目宇视UCS 云存储系统的数据保护采用数据N +M 纠删码保护模式,通过N +M 纠删码实现M 个节点冗余,资源利用率为N/(N+
M)
云存储支持基于文件系统级别(卷级别)的N +M 纠删码,对文件采用原数据+冗余数据的保护模式,N 为文件原始数据分片份数,M 为冗余数据分片份数。在N +M 卷模式下,最多可允许M 个节点故障,数据仍可被正常访问,并自动恢复。如下以4+2为例介绍 :
文件写入,文件被分为多个固定大小的数据块,而1个数据块被分为N 个数据分片,通过N+M纠删码算法得到M 个冗余分片,存入N +M 个存储节点,如下图;在没有存储节点故障时,文件直接从数据分片中读取。
当M 个节点故障时,文件读取恢复:可通过其他节点数据算出数据,如下图:
1.5.5 弹性扩展
本次项目UCS 云存储系统采用无元数据设计,通过弹性HASH 算法定位文件访问的架构,决定了云存储系统获得了接近线性的高扩展性。
UCS 云存储系统支持从横向和纵向的扩展模式,实现在容量、性能和带宽三方面的线性扩展。
横向扩展:通过增加存储节点,实现系统容量、性能和带宽的扩展。存储节点最大可扩展至300个。
纵向扩展:在单节点的硬件性能范围内,通过增加磁盘扩展柜和磁盘实现系统容量和性能的扩展。
1.5.6 负载均衡与故障切换
本次采用的UCS 云存储系统提供前端虚拟IP 地址池,为节点分配动态IP 地址,客户端根据域名访问云存储系统,采用轮询的方式为客户端(流媒体服务器等)返回不同的IP 地址,实现业务在不同节点上进行读写访问,从而达到业务负载均衡的目的。
客户端访问云存储系统如图示:
① 客户端使用域名访问云存储系统,发送域名解析请求到DNS 服务器;
② DNS 服务器轮询返回云存储系统前端虚拟IP 池中的IP 给客户端;
③ 客户端使用DNS 返回的IP 访问云存储中相应的节点。
故障切换功能是当节点宕机之后,可以将该节点上的动态IP 地址漂移到其他节点上,由其他节点继续提供服务,保持业务的连续性,待故障存储节点恢复之后,重新为该节点分配动态IP 地址,继续提供服务。
1.5.7 访问协议
本次采用的UCS 云存储系统支持NFS 、CIFS 、FTP 、HTTP 、iSCSI 协议访问。
NFS 主要应用于流媒体服务器为Linux 的操作系统;CIFS
主要应用于流媒
体服务器为windows 的操作系统,实现视频文件和照片文件的存储与访问。
FTP 是TCP/IP网络上两台计算机传送文件的协议, FTP 客户机可以给服务器发出命令来下载文件,上传文件,创建或改变服务器上的目录,支持间接使用远程计算机, 使用户不因各类主机文件存储器系统的差异而受影响; 可靠且有效的传输数据。
HTTP 协议(HyperText Transfer Protocol,超文本转移协议)是用于从WWW 服务器传输超文本到本地浏览器的传送协议。
1.5.8 认证方式
UCS 云存储系统支持本地认证和外部域认证,域认证支持外部AD 域服务器认证,外部LDAP 域服务器认证和外部NIS 域服务器认证。
1.5.9 系统管理
管理同时支持图形界面和命令行方式。管理员可以通过Master 浮动IP 地址访问统一的网管界面,完成对集群系统的监控、配置、资源分配、性能统计和告警浏览等操作。
支持Email ,SNMP Trap ,短信,蜂鸣器,指示灯,数码管等多种告警方式。
当卷处于挂载状态时(工作状态),对共享文件夹设置系统用户的配额,可以限制该系统用户在共享文件夹下的最大写入数据大小。一个用户可以在多个共享文件夹下拥有不同配额,一个共享文件夹下也可以有多个不同配额的用户。
配额的设置又分为硬配额和软配额的配置,先介绍下硬配额和软配额的定义: 硬配额:一旦设置了硬配额大小,当用户数据达到配额大小时用户无法
再写入新的数据,系统可根据设定发送配额通知邮件给用户。
软配额:一旦设置了软配额大小,当用户数据达到配额大小时系统可根
据设定发送通知邮件给用户,但用户仍可以在容许时间内写入新的数据,如果未配置硬配额,则可以写入数据直到达到可用卷资源的大小;如果
设置了硬配额,则可以写入到硬配额的大小。
1.6 存储系统配置及设备性能要求
分布式视频存储节点配置如下:
存储系统为无单独元数据节点的对称分布式存储设备,采用横向扩展架构,最少支持200个存储节点,全Active 并行模式,节点地位均等、数据均衡分布,支持无单独元数据管理节点的对称分布式架构,简化云存储管理,消除性能瓶颈。
支持负载均衡与故障保护,配置负载均衡功能;业务自动在各节点间负载均衡,当任意节点故障时,故障节点上的业务能自动切到其他节点,并实现自动负载均衡;
支持多副本及跨节点冗余校验技术:可提供全局数据灵活多级别冗余设置保护,支持纠删码、多副本、RAID2.0等保护技术;节点间可通过N+M纠删码技术和复制技术实现数据保护;
提供统一的命名空间;支持多种认证方式;支持配额管理和权限管理;
支持POSIX 、iSCSI 、NFS 、CIFS 、FTP 、HTTP 、REST 等标准访问协议,兼容HDFS API ,支持Hadoop 应用;
存储单节点性能配置:
1) 双核处理器, 不少于8GB 缓存, 可扩容至32 GB;4个千兆以太网数据接口,
配置万兆网卡;支持硬盘前面板热插拔便于后续安装和维护;支持网口聚合、负载均衡;支持多个网口设置同一IP 地址实现数据链路冗余,其中一条链路失效不影响数据存储;
2) 4U 高度/24盘位;支持扩展柜,最大可接9级扩展柜,支持最大接入240个
硬盘;
3) RAID 功能:支持RAID 5、0、1、10、6、50等RAID 级别,支持基于磁盘块
做RAID ;RAID 阵列可即建即用;当RAID 出现故障失效时,RAID 中的录像可进行回放;
4) 在RAID 中磁盘发生故障时,空白磁盘可自动转换为热备盘以替换故障硬盘
并重建RAID ;
5) 局部重建功能:当RAID 中的磁盘拔掉之后短时间内再插上,该磁盘能恢复
到原有RAID 中,RAID 阵列恢复正常;
6) 支持磁盘漫游,磁盘更换槽位后可在图形界面上显示新的磁盘槽位,不影响
RAID 使用;
7) 磁盘休眠:支持对不使用的磁盘休眠;
8) 冗余功能:支持电源、风扇、电池的冗余及热插拔;
9) 支持异构虚拟化功能;支持NAS 的本地备份、远程备份功能;
10) 双bios 功能:支持主bios 及备bios ,主bios 故障时可从备bios 启动;
11) 支持磁盘顺序加电;支持异常掉电来电后业务自动恢复;
12) 降级、重建功能:RAID 中磁盘发生故障,RAID 处于降级、重建状态,不影
响数据写入;
13) 数据保险功能:电池保护缓存下刷功能,掉电后存储数码管有显示缓存数据
下刷的进度,重启后数据无丢失;
14) 支持硬件和环境监控功能,可对设备电压、环境温度、网络接口及CPU 使用
率等状态信息进行实时查看;支持SNMP 设备管理协议,实现SNMP 报警;
1.7 存储连接网络设计
存储系统采用业务端口和管理计算端口相互分离的网络结构。任何一台存储都通过网线/光纤连接到2台不同的交换机上,实现链路备份和负载均衡。
存储前端采用千兆业务接口和业务交换机相连,实现对服务器转发过来的码流的存储和完成服务器对码流的调取请求等。
存储节点后端采用万兆业务接口和后端的云存储管理网络相连接,实现存储的管理,纠删码的冗余计算和恢复等。同时在堆叠交换机上对相应的端口做聚合。
1.8 云存储系统与平台的业务接口
UCS 云存储系统支持POSIX 、iSCSI 、NFS 、CIFS 、FTP 、HTTP 、REST 等标准访问协议,兼容HDFS API ,支持Hadoop 应用。可根据标准协议接口连接平台的流媒体服务器,也可提供API 接口供平台侧进行对接接入等。
云存储系统整体承载了XX 平安的视频写入,本次涉及XX 路高清IPC ,图像码流按照4Mbps 计算,则总体流媒体服务器和云存储之间的传输总带宽为XX Mbps ,具体各分局和各自分局部署的云存储节点设备的带宽和本分局接入的IPC 数量相关。