资源描述
,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,#,Quantum Confidential,|,StorNext,存储系统最佳实践,刘松涛,昆腾亚太区构架师,sean.liu ,136 010 34347,内容,StorNext File System,性能调优,StorNext Storage Manager,归档存储的选择,2,StorNext,存储最佳实践,StorNext,存储系统,包含两个功能:,在线存储层:,StorNext File System,共享文件系统,支持,SAN,和,LAN,两种网络,归档存储层:,StorNext Storage Manager,数据归档(或叫做分级存储),支持磁盘归档、磁带归档、云存储归档,最佳实践之,StorNext File System,性能调优篇,StorNext File System,的性能调优,作为一种高性能文件系统,,SNFS,可充分发挥存储硬件、连接网络的带宽,为各种不同的非结构化数据的应用提供极高的存储性能,虽然,很多情况下,我们无需调优,缺省安装的,StorNext,就可以满足大多数的性能需求,但是,还有少部分客户,需要极高的存储性能,例如,4K,电影的后期制作,,以及,一些客户为了降低硬件(存储和网络)成本,而拼命调节,SNFS,参数,从而产生出极致的存储性能,接下来,我们来看看,,SNFS,的调优的最佳实践,SNFS,的性能和哪些因素有关?,SNFS,作为应用和存储之间的那层,在性能上关系重大,应用是否能取得最佳性能,基本上取决于,SNFS,是否能让上层应用和底层存储匹配起来,总结,起来,,SNFS,的性能和如下几个因素有关:,底层:底层存储的特性,(,RAID,设置、盘阵缓存设定等),上层:文件大小及应用,IO,特点,(随机,/,顺序、多少个流、块大小),中层:,SNFS,的设计,(元数据网络、,MDC,设置、客户端设置等),6,上层应用,SNFS,底层存储,SNFS,底层存储的调优,-RAID,级别,/,条带宽度、,SNFS,条带宽度,RAID,级别、条带宽度和,SNFS,条带宽度对性能的影响,不及上述缓存,但也是十分巨大的,而且请注意:这几个地方一旦确定下来,投入生产上线后,就不能修改了,因此要特别小心。(前面提到的缓存是可以随时修改的),最佳,实践:,不要把元数据和数据都放在一个,RAID,组上,,,元数据要单独放置,建议元数据,放,在,RAID1,,也就是镜像磁盘上,如果追求,IOPS,,则可以把元数据放在,RAID10,上,通常,4,块盘就可以了,但也可以支持,6,块、,8,块盘,,RAID10,提供了,RAID0,的性能以及,RAID1,的保护级别。,数据放在,RAID5,或,RAID6,上,此时要用,RAID,组的条带宽度,(segment size),来计算,SNFS,的条带宽度,(StripeBreadth),,公式如下:,StripeBreadth=n x segment size(n+1 RAID5,或,n+2 RAID6,里面的,n),例如,4+1,的,RAID5,,其,RAID,条带宽度为,64KB,,则,SNFS,的,StripeBreadth,应设为:,4x64KB=256KB,9,SNFS,针对上层应用的调优,虽然底层存储的调优,是,SNFS,调优中最重要的部分,但了解上层应用的,IO,特点也是很重要的,针对,上层应用,我们要了解如下信息:,并发的数据流(或者,IO,数)有多少,读和写的比例有多少(或者说,读多一些还是写多一些),IO,块的大小是多少,顺序还是随机读写,还是都有,10,SNFS,针对上层应用的调优,针对上层应用,,SNFS,调优的最佳实践:,尽可能的将顺序,IO,和随机,IO,分开,放在不同文件系统上,然后再针对顺序,IO,和随机,IO,来调优,各个击破,如果不能做到上述,则我们要尽可能的针对最重要的、或最多的那种,IO,来调优,此时则会影响到另一种,IO,的性能,但综合起来效果最好,如果应用的大顺序,IO,较多,则可以利用,DMA,,,SNFS,的客户端,mount,参数里有这个设置,可以参见,auto_dma_read_length,和,auto_dma_write_length,这两个参数的设定,具体的说明请参见,mount,参数的说明,对于较小的、不够整齐的,IO,,则可以利用,SNFS,的,buffer cache,机制。此时最重要的参数是,buffer,大小,,buffer,要等于或者大于,RAID,组条带的大小,如果小于,则性能将受到较大影响,因此如果,IO,较小较碎,则,RAID,组的条带大小不要太大,最好不要大于,256K,11,SNFS,针对上层应用的调优,针对上层应用,,SNFS,调优的最佳实践:,针对,NFS/CIFS,二次共享,一定要将它们的流量和元数据流量分离,或者说为元数据建立单独的网络;,针对,NFS/CIFS,二次共享,其客户端和服务器最好使用同一个网络交换机,不要经过路由,更不要通过,WAN,,这将产生延迟,将极大的影响整体性能,针对,NFS,二次共享,一定要使用,TCP mount,不要使用,UDP mount,,建议,mount,参数为,vers=4,rsize=262144,wsize=262144,;建议使用,TCP offload,以及,jumbo frame(,巨帧,),此外,尽可能的调整网卡交换机上的,speed/duplex,为,disable,自动设定(,disable auto-detect),,而采用自定义为千兆网,12,SNFS,自身设计上的调优,前面讲完了底层存储和上层应用的调优,我们不难发现,,SNFS,的地位是中间层,也就是讲上层和底层匹配起来的那一层,SNFS,这个中间层,虽然不及上层和底层调优重要,但也是不可忽略,我们必须要了解的一层,SNFS,中间层,或者说,SNFS,自身设计上的最佳实践要注意如下几个方面:,元数据网络,元数据控制器,SNFS,文件系统配置文件,13,SNFS,自身设计上的调优,-,元数据网络,SNFS,的服务器(,MDC,)和客户端,是一个客户端,/,服务器,(C/S),构架,他们,之间有着频繁的通讯,其通讯包的内容就是元数据,也就是文件的位置信息,也就是,inode,,因此,,客户端是否能够尽快获得,inode,元数据,将取决于元数据的网络,因此这个元数据网络十分,重要。,元数据网络的最佳实践:,如追求高性能,则,一定单独规划出来一个以太网网络,用于元数据。,如使用百兆网,则,一定单独规划出来一个以太网网络,用于元数据。,如果机房允许,也一定,单独规划出来一个以太网网络,用于元数据,。,元数据网络应在一个交换机上,有路由就会产生延迟,将影响性能,元数据网络应禁止使用,TCP offload,和巨帧,14,SNFS,自身设计上的调优,-,元数据控制器,元数据控制器,(MDC),,也就是,StorNext,服务器,其硬件配置也很重要,最佳,实践如下:,MDC,对内存和,CPU,有一定要求,虽然国内外在用的绝大多数的,StorNext,客户的,MDC,仅仅使用,1,个,4,核或,2,核,CPU,,仅仅使用,2G,或,4G,内存,但在某些情况下,尤其对性能有极致要求的时候,我们还是应配置足够的内存和,CPU,。,CPU,对于,metadata,密集操作还是有很大帮助的,特别是创建大量小文件的时候,,CPU,的提升会有很大帮助,内存同样对大量的小文件操作也有很大帮助,,StorNext 4.3,版本后,单个文件系统的,MDC,上的缓存可以增加到,8G,,因此小文件操作有极大的提升,内存对于目录浏览遍历,也有极大的帮助。,SNFS,文件系统配置文件中,有三个参数可以利用到很多的内存:,BufferCacheSize,InodeCacheSize,,,ThreadPoolSize,如果内存不足,系统开始利用磁盘交换虚拟内存,则会严重影响性能,15,SNFS,自身设计上的调优,-SNFS,配置文件,配置文件,.cfg,或,cfgx,里规定了很多重要的参数,因此必须重视,最佳实践如下:,FsBlockSize,文件系统块,(FSB),的大小。,通常来说,上层应用的数据块越大,,FSB,就应该越大。例如,标清分辨率的视频相对于,4K,电影来说,数据块就有很大的变化,我们应该适当调整,FSB,。,但,由于元数据磁盘大小、,JournalSize,以及用户数据,(user data),的设定和,FSB,是,息息相关的。因此有的时候,单纯调大,FSB,往往会看到相反的效果。,比较安全的值是,16K,和,64K,。大于,64K,,则可能会降低元数据的效率,因此会影响性能。,此外,建议元数据盘的最小值为,25GB,。如果文件数更多,则应适当调大。,JournalSize,Journal,是,当前,活跃的,metadata,。通常为,FSB,的,1000,倍,比较安全的设定为,16MB,(,FSB=16K,时),或,64MB,(,FSB=64K,时。,然而,有时提高,Journal,值,也就是增大,Journal,的空间,会提升性能,特别是频繁,IO,的情况。其副作用是会增加服务启动的时间和双机切换的时间。,16,SNFS,自身设计上的调优,-SNFS,配置文件,BufferCacheSize,该参数为,MDC,内存里的元数据信息(包括目录块、,inode,和其他元数据信息)缓存,它可以降低元数据的延迟,因而可以提升频繁,IO,的性能。,缺省值为,32MB,,通常来说,增加该值可以提升性能,但要注意内存的使用,最大可以设置为,8GB,,将最大吃掉,MDC,上的,16GB,内存。,InodeCacheSize,该值为,MDC,内存的,inode,的缓存,同上面的参数的道理是一样,该值最大为,512K,。将吃掉大约,512K x 1000,的内存。,ThreadPoolSize,该,值为处理客户端访问的线程的数量,通常我们建议每个客户端有两个,Thread,,因此该值的建议值为客户端数,x2,,例如如果有,70,个客户端则,设置成为,140.,每个,Thread,将吃掉,512K,内存,因此请注意内存的使用。,如果每个客户端的并发访问数很多,则可以继续适当增大该值,比如采用客户端数,x4,等。,17,性能调优总结,性能调优前首先要了解客户需求,看客户需要多大的性能,如果客户对性能要求不高,则我们要重点考虑安全稳定等因素,性能调优的顺序:,首先考虑:底层存储,其次考虑:上层应用的特点,最后综合考虑:,StorNext,系统的设计,去匹配上下两层,一点建议:,性能调优并非费时费力,只要按照上述顺序和规律都可以调出来非常好的性能,要先学习,再动手,最好是两个人以上形成一个“调优小组”,相互商量、相互确认,可以少走弯路,18,最佳实践之,StorNext Storage Manager,归档存储的选择(磁带、磁盘、云存储),StorNext,归档存储,StorNext,可以将数据自动的迁移到二级存储,或者叫做归档存储上,很多客户要长期保存大量不用的数据,要降低成本,兼顾成本和访问方便的需要,而采用归档系统,常见的归档系统有:,StorNext,、,CommVault,、,Symantec,、,IBM TSM,国内的电视台用的媒体资产管理软件、火星存储等,StorNext,归档相比同类产品的特点:,适合海量存储,用其他同类产品处理,1PB,以上的数据归档就非常困难了,,StorNext,可以处理上百,PB,的归档,StorNext,支持多种格式的存储,磁盘、磁带、云存储,案例最多,然而,我们选择什么样的存储介质呢?,磁带?,磁带,:海量、技术成熟、价格低,但访问数据较慢、构架复杂,目前,1,盘,LTO-6,磁带,,2.5TB,,要存,4PB,数据需要,1600,盘磁带,磁盘?,?,?,21,归档存储:用,RAID,磁盘技术存在很多障碍,22,目前的磁盘技术很难应付数,PB,媒资数据的长期、安全保存,怎么回事?,磁盘(,SAN,,,DAS,还是,NAS),采用文件系统布局,不适合灵活升级、迁移等,RAID,技术不适合海量数据,一个,RAID,组最大,10+1,使用,4TB,盘才有,40TB,,要,4PB,的存储,需要,100,个,RAID,组,,1000,块硬盘,管理起来很困难,磁盘,位错误,(Bit Error,),,每,10TB,左右就一个,bit,是错的,RAID,重构花时间、降低性能,目前一个,3TB,盘坏掉重构需要,30,个小时左右,存数据:用磁盘怎么存数百,TB,、数,PB,?,23,怎么办?,昆腾,Lattus,云存储,海量数据的永久保存,跨地理位置的云存储,低能耗、高密度磁盘存储,自我保护、自我治愈,、,低运营成本,昆腾,Lattus,云存储,24,Lattus,云存储磁盘归档系统,25,Lattus Object Storage,Lattus Object Storage,Lattus-X,Lattus A10 Access Node,(NFS/CIFS),Lattus-M,NAS Access,StorNext Managed,StorNext MDC,(FC/DLC),Lattus Object Storage,Lattus Object Storage,Lattus Combo,NAS&StorNext Access,Lattus Object Storage,Lattus Object Storage,StorNext MDC,Lattus A10 Access Node,HTTP REST/S3,HTTP REST/S3,HTTP REST/S3,归档存储的选择,-,最佳实践,1PB,千万不要考虑,RAID,磁盘归档,可以考虑,Lattus,云存储磁盘归档、磁带归档,必须要考虑位错误的问题和长期存放的,问题,机房空间,电力能耗的问题,设计时,多考虑各个因素,最好参考成功案例,拜访成功案例客户,26,欲了解更多信息,+86 136 010 34347,28,
展开阅读全文