基于Nutanix平台的云媒资探索
2015-06-20刘彬
刘彬
(大众报业集团 信息技术部,山东 济南 250014)
基于Nutanix平台的云媒资探索
刘彬
(大众报业集团 信息技术部,山东 济南 250014)
传统的云计算与虚拟化平台实质上仅实现了服务器的虚拟化,介绍了一种新型的将计算和存储进行聚合、基于软件定义存储架构的Nutanix虚拟平台。以山东大众网构建云媒资系统为例,介绍了Nutanix平台工作原理,包括节点架构、NDFS文件系统的数据读写机制、压缩技术和平台的容错与可靠性,并讨论了媒资系统在此平台上的部署与优化等相关工作。
存储虚拟化;虚拟化平台;云计算;媒资系统
随着大众网新建演播室和数据中心的投入使用,视音频类节目与文字、图片的新闻内容将会规模级增长,为了对众多类型的素材内容进行管理,最大限度上发挥这些“媒体资产”的价值,网站需要从零开始搭建一个媒体资产管理系统。与广播电视台的应用不同,网站的制作内容具有多元化的表现形式,除了各种常见格式的大容量素材、成片的高清视频外,网站资源中更多的是低码率的flv和mp4视频文件,以及集团数字报pdf文件、doc文件、gif动画、jpg图片、html静态页面等,这些轻量级的文件甚至只有KB级别大小,针对小文件被频繁访问的特性,在系统的存储性能上对I/O速率提出了极高的要求。
1 传统虚拟化平台的弊端
基于虚拟化的云计算技术近年来逐渐成为各个行业中的应用热点,在虚拟化平台上搭建的云媒资系统[1]在广电行业内也成为主流应用,传统的虚拟化平台通过在服务器级别上部署虚拟化软件,仅仅完成了计算资源的虚拟化,而在服务器后端通常采用集中式存储架构,如SAN(存储区域网络)或NAS(网络连接存储),为所有虚拟机提供共享存储,传统的平台架构如图1所示。
图1 传统的虚拟化平台架构
为保证系统存储的安全性,传统架构方式在存储网络和硬盘阵列上往往采取双机热备的冗余设计,存在过于复杂的系统架构、较高的成本代价、不便利的系统扩展等缺点,而对于网站应用最致命的一点是,针对小文件被频繁读取、写入的需求,对存储设备有极高的I/O性能要求,目前即使是FC SAN(光纤存储网)和光纤盘阵,在极端的超大量多并发访问的情况下,存储网络存在的性能瓶颈会影响整个系统的正常运行。
2 Nutanix平台
Nutanix[2]是一个将存储、计算资源、网络和虚拟化高度集成的虚拟计算平台,放弃了传统的集中化存储架构,真正实现了存储的虚拟化,采用融合式的架构将计算资源和本地存储整合在单一设备中,将共享存储整合到服务器层中以提供更高的I/O性能,为网站云媒资的实现提供了小文件读写性能上的保证。
2.1 节点逻辑架构
一组Nutanix服务器组成的集群中,每个服务器节点逻辑结构如图2所示,每个节点都运行着一个VM监控程序和VM控制器,后者负责处理本地虚拟机监控程序的所有I/O操作和节点之间的所有通信任务,不仅为虚拟机管理程序管理作为中央数据存储的集群与服务器,还管理众多客户虚拟机,存储资源通过传统接口与VM监控程序对接,被整合并提供给所有客户虚拟机服务,这种将计算和存储融合为一体的技术可为虚拟化平台提供灵活、可伸缩的体系架构。
图2 节点逻辑结构
Nutanix节点为虚拟化的环境开创了极其简便、极具扩展性的存储架构,各节点都运行一个虚拟存储控制器以提升系统可扩展性和恢复能力,本地存储包含了可提供极高IOPS以实现高性能的闪存设备、读写高速容量略小的固态硬盘SSD以及实现低成本、高容量的硬盘驱动器HDD,存储控制逻辑智能地实现服务器内部分布式存储,并将本地存储转换成为集群共享。
2.2 NDFS文件系统
NDFS文件系统是Nutanix虚拟计算平台的核心,它管理所有元数据和数据,并实现分布式资源调度功能,NDFS可以将全部节点间的本地存储聚集起来,创建可分割成一个或多个数据存储的统一的存储池,使用标准的网络文件系统协议为所有托管的VM虚拟机提供存储,基于无网络化的NDFS文件系统通过集群内高速内部总线访问其数据,而且所有读写操作都在节点本地进行,计算资源运算的数据不需访问外部存储,这样消除了网络时延,加快了数据存取的I/O速度。
2.2.1 数据读写机制
当虚拟机需要写入数据时,数据会同步地复制在集群内相邻的主机节点上,只有当用户数据和与之关联的元数据被复制完成后,主机才接收将数据写入本地存储器的指令。数据的同步复制通过文件系统的操作日志Oplog来实现,OpLog存储在虚拟控制器的SSD层上以便提供快速的写入I/O性能,用来处理突发性的数据写入,Oplog将多个写入指令合并,然后将数据按顺序排入盘区存储。为了保证数据可用性,数据写指令在提交给VM控制器并得到确认之前,OpLog会将写入同步复制到另一个VM控制器,且集群内所有VM控制器都会参与复制,根据节点和存储盘区的负载进行动态选择写入路径,这种机制确保了同一数据至少存在于集群内两个完全独立的节点中,以此实现系统容错。
对于数据读取指令,可通过本地存储控制逻辑发送请求,NDFS利用分层存储技术将最常调度的“热门数据”驻留在性能最高的闪存卡上,常用的数据存在固态硬盘SSD上,随着访问量下降而变为“冷门数据”则被转到更加经济但容量较大的HDD磁盘上;但若任意节点的冷门数据再度变为热点数据,即VM控制器的请求更加频繁时,NDFS就会自动将该数据重新装入闪存或固态硬盘中,尽可能保证最快的性能。所有读取、写入均由本地VM控制器提供服务,在其控制下虚拟机的数据将保存在本地节点中,当发生HA事件使虚拟机移动到其他一个节点并请求读取旧数据时,由新的VM控制器将I/O请求转发到远程控制器,NDFS将数据在后台进程的控制下迁移到本地。
2.2.2 数据压缩技术
与传统存储架构对整个LUN或磁盘执行压缩不同,Nuta⁃nix平台对存储的扇区级别利用内联压缩、后处理压缩两种策略,在提高压缩效率并保证系统性能前提下,对池化的各存储资源层的容量进行最大化提升:对于顺序化I/O数据操作,当数据写入磁盘时进行同步压缩,以保证计算资源的性能,称作内联压缩策略;而为了处理随机或批处理的数据时获得高性能,热门数据写入PCIe接口的固态硬盘等高速存储介质时并不进行数据压缩,只有降低成了冷门数据而向低速存储介质转移时,在保证数据和计算资源处于可用状态而并不影响正常的I/O操作时,才对数据进行压缩,这种方式称为后处理压缩策略。Nutanix平台利用基于数据类型动态变化的Snappy算法,针对VM虚拟机和文件级别进行本机压缩,几乎可获得最高性能的压缩、解压的效果,对于以虚拟机为中心的工作流程更加适应。
2.4 Nutanix平台优势
2.3 平台容错机制与可靠性
作为一个基于软件实现的全分布式平台,Nutanix平台的保护功能以及针对各个组件的自修复功能,可从容地应对VM控制器、磁盘或者服务器节点的故障,甚至可以防止灾难性硬件故障,确保群集从整个物理设备的故障中恢复而不会造成数据或服务损失,确保数据和访问始终可用。
1)某个节点上的VM控制器发生软件故障时,平台会通过数据路径冗余机制来保证服务的高可用性,平台的自动选路功能会自动将访问请求从主机重新路由,选择集群内其他运行正常的节点的VM控制器并交予托管,由于集群对节点上的所有数据副本都具有访问权限,新VM控制器可以立即响应所有的I/O请求,直到故障得到解决才停止托管,这种机制实际上也是为所有虚拟机提供的一种多路完整的容错故障转移机制。
2)当磁盘故障时,传统平台的RAID阵列的数据恢复必须经历一个漫长的重建过程,CPU的超负荷运转会导致系统I/O性能严重降低。Nutanix平台自动检测到磁盘故障后,会将该磁盘标记为离线状态,并立即将其从存储池中挂起,通过确定存储在磁盘故障的扇区位置启动相关联的数据副本的重复制,平台以后台进程方式进行,且集群内所有节点均参与数据重建,随着集群规模的增长,可调用的CPU资源也逐渐增多,用户的故障数据在集群中各个节点上存有副本,因此重建的时间大大缩短,体现出存储虚拟化的优势。
3)当更严重的服务器节点失效时,平台利用其支持的多个虚拟软件的高可用性服务(如VMware的HA功)将虚拟机迁移到其他节点,读取或写入请求将被发送到迁移后的VM控制器,VM控制器将不在本地的数据临时复制到资源占用较小的某个节点,并将请求转发到当地VM控制器,数据通过集群节点间的内部10GbE网络发回本地。本地VM控制器通过监控管理程序将数据发送到虚拟机,并保存在本地供后续访问,同时平台再次复制整个集群数据以便将全集群恢复到原容错状态。
扁平化的Nutanix架构保证了平台可靠性:系统故障点的数量显著减少,减少了物理连接光缆的数量,从而减少布线错误和避免由于电缆意外断开而造成的网络资源失效;将控制逻辑分布于集群中各节点的容错保障机制,在VM控制器失效时的自动选路和托管过程对管理程序和虚拟机完全透明;相比SAN架构中硬件控制器故障后的设备更换及再初始化的漫长故障周期,基于软件驱动自修复的控制器失效后仅需要重启就可在后台自动修复。
Nutanix平台将控制逻辑和数据存储融合到各个节点,低延时地提供数据I/O,性能更快,灵活性更高;平台不再需要昂贵的集中式存储或专用存储网络以及传统的存储阵列,显著降低了虚拟化成本,同时消除了集中式SAN和NAS存储的性能瓶颈,更利于虚拟应用的性能最优化;平台摒弃了传统存储的逻辑单元号LUN、卷或RAID组的配置操作,转而实施了文件系统层的数据保护,大大简化了部署操作并提升系统容错能力,且具有强大而简便的横向扩展能力;软件支持VMware、KVM、MS Hyper-V等多个虚拟化部署,支持实时VM迁移、高可用性、分布式资源调度以及容错技术等强大功能。
3 云媒资的部署与数据库优化
考虑到新闻网站内容生产的特点,媒资系统必须采用B/S部署结构,以方便同网站CMS、VMS进行有效整合,实现适合网站媒体资产的工作流程。Nutanix平台的B/S应用系统部署简便,根据大众网媒资工作流程描述(如图3所示)和系统各组件的服务功能分析和负载均衡,在平台上建立以下4个VM虚拟机并配置媒资系统组件,同时设置使用带冗余链路的低延时10GbE内部交换机。
图3 媒资系统工作流程
1)Web服务应用:提供B/S界面和实现Server端应用,控制操作页面的显示和整体流程的实现,提供媒体资产入库与出库流程的业务支持,在Nutanix平台设置需分配8 Gbyte内存。
2)数据库应用:负责媒资系统中元数据、人员信息记录和系统配置信息的存储,安装MS SQLServer 2008数据库软件,需分配8颗vCPU和16 Gbyte独享内存,初始时18 Tbyte存储空间,存储配置中选中CTR-RF2-VM-01(所有虚拟机和数据使用统一的容器)。
3)转换引擎应用:提供素材转码与格式转换、合成和碎片化服务,分配16 Gbyte独享内存。
4)检索与流媒体应用:负责向用户提供数据检索、节目编目服务和视频流媒体服务支持,实现视频的简单编辑功能,设置分配8 Gbyte内存。
数据库应用是整个媒资系统中最核心的组件,为保证数据库级组件服务的高性能,必须对MS SQLServer数据库进行优化设置,运行在Nutanix平台的数据库可初始设置如下:数据硬盘设置为分区簇大小为64 kGbyte的NTFS格式;数据库TraceFlag跟踪标志设置为834和1118,开启大页面缓冲池分配并减少TempDB的SGAM页争抢;用来存储临时对象的TempDB数据文件设置为初始50 Mbyte,自动增长容量默认为10%,禁止压缩TempDB文件,同时设置为分解成8个文件进行读写I/O;主数据Database文件允许自动增长,直到达到80%的磁盘容量,并关闭数据和日志文件的自动压缩功能。
SQLServer缓存池中会对数据页面加轻量级的latch数据锁,随着应用时间的增长,在多用户并发情况下会经常发生PAGEIOLATCH类型的I/O等待,说明此时的数据库相关配置已经不能满足需要,成为性能瓶颈所在,因此需要动态调整数据库配置以及扩大分配给此应用服务器的Nutanix平台的独享内存。日常应用中需经常使用BPA工具检测数据库潜在的问题,积极利用第三方的数据备份工具经常创建快照和备份点,以防应用层面的数据错误的恢复。
4 小结
大众网云媒资系统的构建,在硬件设备和软件架构上都考虑了先进和可靠的技术,系统配置简便、易于操作和管理维护,同时充分考虑了随网站业务发展带来的未来升级需要,对于大众网的云媒资系统来说,初期建立的规模较小,尽管在存储容量上有限,但强大的线性横向扩展能力在后期可方便地进行按需扩展。基于Nutanix平台的云媒资系统部署后,在大众网应用效果良好,初步满足了网站日常工作对媒资系统的要求。
[1] 樊磊,姜殿斌.基于云计算架构下的全媒体资产管理系统[J].电视技术,2012,36(22):78-81.
[2] Nutanix-The Virtual Computing Platform[EB/OL].[2014-10-15].http://www.nutanix.com.
Exploration of Media Asset Management System Based on Nutanix Virtual Computing Platform
LIU Bin
(IT Department,Shandong Dazhong News Group,Jinan 250014,China)
The conventional platform of cloud computing and virtualization essentially just actualize virtualization for servers.The working mechanisms of the Nutanix virtual computing platform are introduced taking the construction of media asset management system in DZWWW for an example,including node’s architecture,mechanism of data reading, writing and compression for NDFS file system,fault tolerance and reliability of the platform.The deployment, optimization and other related work of media asset management system on the platform are also discussed.
storage virtualization;virtual computing platform;cloud computing;media asset management system
【本文献信息】刘彬.基于Nutanix平台的云媒资探索[J].电视技术,2015,39(6).
TN948 文献标志码:B DOI:10.16280/j.videoe.2015.06.017
闫雯雯
2014-12-08