首页 文章 精选 留言 我的

精选列表

搜索[伪集群],共10000篇文章
优秀的个人博客,低调大师

Dell Fluid FS 集群NAS系统在4K非编环境的卓越表现

2015年的中国电影市场,国内动漫一支独秀,特别是暑期档的国产动漫《西游记之大圣归来》,上映62天,票房达到9.56亿,成为内地影史到目前为止票房最高的动漫。银幕上活灵活现的动画人物 ,流畅的场景呈现,都是由后端一系列数字技术来支撑的,其中最为关键的是非线性编辑技术,它将视频剪辑、复杂特效、字幕完美地融合到原始视频素材。 一个时长90分钟的动漫,多种多样的视频素材总容量可达到几十、上百TB,要对其进行快速编辑,当然需要一个高性能的数字平台;此外,要生成最后的可播放版本拷贝,还需要有安全的保护。从粗剪直到最后一个剪辑版本出来,会有多个版本共存,也必须有相当的空间来存放,因此,这个平台应有很好的容量扩展性。最后,这个数字支撑平台在制作项目结束之后,还要继续为下一个项目服务,所以对前一个项目需要有归档功能,这也关系到整个数字工厂的生命管理周期。 随着数字化时代的到来,可以基于素材的任意时间点实现剪切、复制、粘贴,甚至实现诸多特效处理等,因此,非线性编辑的便捷与高效使其成为视频编辑的主要方式。由此可见,选择一个合适的数字支撑平台满足非线性编辑业务的需求是至关重要的。 所以,接下来我们从几个方面来体验戴尔流动文件平台架构Fluid FS如何高效满足上述需求。 堪比金箍棒的高性能平台 对于非线性编辑来说,若一个制作项目能从原来十天的工作量缩减到五天,甚至一天,毫无疑问对于产品的上线排期,院线赶档期以及产品的变更都是非常实际的事情,也必将带来更多的收入; 就如同孙大圣的金箍棒需要应对不同的环境,有时变作绣花针,有时则要成为定海神针。对于非线性编辑技术来讲,一般要编辑的对象都是大文件,但有时候也会处理一些小文件,所以这个数字支撑平台需要对大文件和小文件实现同样的优化性能——这对于传统的NAS文件系统是难以实现的。而戴尔流动文件平台架构Fluid FS如同金箍棒一般,可伸可缩,能够自如对小如4K文件和大到数个TB的大文件分别进行优化。 相对于其他友商的NAS文件系统不区别地将所有的文件都按元数据inode和数据data分开管理,戴尔Fluid FS则将 小于4KB都存储在inodes中,无需另写入data数据空间中。而对于每个大文件,所有的数据都被分布到后端存储所有可用的LUN上 ,且以1MB chunks方式进行。新数据的写入是基于可用的空闲空间以及LUN的聚合性,以达到在可用的LUN之间平衡分布,从而实现优化性能。除此之外,戴尔Fluid FS还通过提供单独的智能读写cache调整对读写IO同时进行优化,从而达到性能的最大化。 性能与容量的线性扩展 戴尔流动文件平台架构Fulid FS提供了一种横向扩展的存储系统架构,并结合后端的流动存储实现灵活的横向和纵向扩展一体化的架构,从而实现一个真正原生的统一命名空间。 目前广电行业非线编系统的后端存储容量基本是PB级的,要求高效灵活的扩展性。Dell Fluid FS存储系统是基于横向扩展架构,通过前端Fluid FS控制节点与后端SAN存储系统的在线横向扩展支持高性能海量级存储要求。 从容量上讲好像也挺简单的,不就是一堆磁盘垒上去吗?那我们就需要提到"命名空间"的概念了,对于客户端来说,一个命名空间用起来就像是一个文件系统。简单举例,一般大家用PC遇到容量空间不够的情况,就直接买硬盘加上去,然后在系统中会看到多了个设备,然后格式化形成一个新的D盘。 对于传统的命名空间而言,当Dell Fluid FS发现存放在C盘的文件如果需要转放到D盘,需要剪切操作,意味着需要时间,需要磁盘与CPU的性能消耗——在这我们可以理解为C盘与D盘不是在同一个命名空间中,是两个独立的文件系统,尽管容量增加了,但实际上操作也复杂了。联想到非线编应用涉及众多素材文件,如果处于不同的文件系统或命名空间,编辑操作该是多麻烦的事啊! Dell Fluid FS存储系统,基于存储资源池的概念,可真正实现文件系统在线横向扩展。 案例A当用户无空闲存储空间时,需要增加额外的存储空间 ● 磁盘加入后仅对FS3起作用,扩展其容量,但无法使其它文件系统受益 ● 即使FS3仍有空闲空间情况下,FS1、FS2无法进行利用 ● 当FS3容量受限于文件系统的最大容量,则无法解决 ● 磁盘加入后,扩展整个存储资源池容量,真正实现文件系统在线扩展 ● Fluid FS可以智能地利用新加入的磁盘为整个文件系统提供性能提升 实例B当用户需要将一个视频文件移动到另一文件系统中 ● 在命名空间内,”COPY”有可能会跨不同的文件系统,造成不可预期的情况,可能导致IO增加,性能严重下降等 ● 在Fluid FS单一文件系统下,”COPY”是非常简单易操作的,无关乎文件大小,仅是指针重定向操作 非线编应用在编辑过程中需要进行大量的数据读写操作,所以必须要求存储系统能提供强大的性能支持,并且具有良好的性能提升空间。Dell Fluid FS 存储系统基于横向架构,能够有效、完满地达到非线编应用的要求。 从以下两图可看到Dell Fluid FS 系统可以通过前端控制器和后端磁盘的增加,达到性能线性增长的效果: 数据生命周期管理 A.数据智能化分层管理非线编应用涉及海量级数据,视频制作出来后不仅仅作为成品,同样可能成为其它作品的素材,比如我们常常看到的影视改编作品或高清转码等,所以要求存储系统具有数据生命周期管理的特性。Dell Fluid FS存储系统的智能化数据分层管理,有效支持非线编系统的海量数据管理,有效提升热点数据的读写访问性能,并提供冷数据的低成本大容量存储。分层特性基于数据块级别,由存储系统自动化管理,无需人为干预,实现智能化。 B.持续性数据保护非线编应用的海量数据特性注定了数据保护是必要的,编辑人员在非线编过程中所花费的时间和精力是无法估值的,可以想象一个误删除所带来的难以估量的成本。 Dell Fluid FS存储系统提供的快照功能可以有效地实现数据保护,其快照技术采用直接写方式,仅保存数据改变量,无性能影响。基于数据卷的快照功能,方便易用,可通过Open、Copy、Restore三种方式实现数据恢复:OPEN可以将快照数据以文件夹方式打开,可以选取需要恢复的文件进行数据恢复;COPY可以将快照中数据COPY到本地或其他目录中,不影响现有目录的数据;Restore是将快照中数据以完全覆盖的方式恢复到目录中。用户可以直接操作,不需要IT管理员干预,管理更为简单高效。 Dell Fluid FS存储系统支持NDMP协议,可与主流备份软件结合,实现数据直接备份到外部存储介质,达到数据离线保护的目的。 当然Dell Fluid FS存储系统还提供远程数据保护、用户认证、文件权限管理等,充分满足多个非线编项目组的并发工作需求。 客户案例以上海广电行业知名企业为例,随着4K电视技术(16:9屏幕分辩率3840*2160)的发展,作为国内领先的IPTV新媒体视听业务运营商、服务商,客户需要发展对4K节目支持。相比通常的2K或高清节目,大家都知道一个1080高清的视频大概40GB,那么4K的视频就应该有150GB以上,上百兆的码流都是小意思,因此4K节目意味着需要更大的容量,更高性能的硬件平台支撑。 戴尔团队积极响应客户需求,以客户的非线编应用需求为基础,提供了相应测试方案及硬件测试平台。按4K非线编应用生产系统需求,要求后端存储系统需要至少支持1PB以上容量,平均1GB以上的稳定读写带宽。 基于Redhat和Windows平台,采用每个进程20GB测试数据,运行iozone测试命令模拟读写。测试结果如下,数据均完全满足客户的非线编应用需求。 Redhat平台 Windows平台 需要补充说明的是,这次测试的Dell Fluid FS系统为原旧有V3版本,现升级版本已到V5,单是系统缓存就已经达到96GB,是原有的两倍,性能显著提升,而且只需通过简单的在线升级即可实现,无需附加任何许可费用,更好地保护客户IT投资。 综上所述,Dell Fluid FS存储系统在非线编应用中有着上佳表现,在广电行业内,已有众多客户正在体验Dell Fluid FS存储系统所带来的卓越制作体验。 作者:佚名 来源:51CTO

优秀的个人博客,低调大师

Linux集群和自动化维1.2 IDC机房的选择及CDN的选型

1.2 IDC机房的选择及CDN的选型 如果自己的业务网站中含有大量的图片和视频类文件,为了加快客户端的访问速度,同时为了减缓对真正的核心机房的服务压力,并且提升用户体验,建议在前端最好采用CDN缓存加速方案。 CDN(Content Delivery Network),即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需的内容,提高用户访问网站的响应速度。CDN缓存加速方案一般有如下几种方式。 租赁CDN:中小型网站直接购买服务就好,现在CDN已经进入按需付费的云计算模式了,性价比是可以准确计算的。 自建CDN:这种方案的成本就有点大了,为了保证良好的缓存效果,必须在全国机房布点,还要自建智能Bind系统,搭建大型网站时推荐采用此种方案,专业的

优秀的个人博客,低调大师

如何把一个web集群由HTTP转换为HTTPS(LVS+HAProxy+SSL)

一、环境介绍 接到通知,要求网站由http改为使用https,目前我的网站前端架构如下图所示: 假设我们有两台物理机,每台物理机上面有很多的tomcat容器,前端使用的是haproxy进行的http层负载均衡,再前端我们使用了LVS负载均衡,整个LVS使用的是DR模型。 刚开始我打算把tomcat改成https,设置成之后再设置haproxy的时候,发现haproxy不能再使用负载均衡了,因为SSL是在第四层的,所以这个方案就结束了,下面我就尝试在haproxy层设定SSL,到后端还使用普通的连接。 二、设置步骤 1、概述 如果你的应用使用SSL证书,则需要决定如何在负载均衡器上使用它们。 单服务器的简单配置通常是考虑客户端SSL连接如何被接收请求的服务器解码。由于负载均衡器处在客户端和更多服务器之间,SSL连接解码就成了需要关注的焦点。 2、有两种主要的策略 第一种是我们选择的模式,在haproxy这里设定SSL,这样我们可以继续使用七层负载均衡。SSL连接终止在负载均衡器haproxy ----->解码SSL连接并发送非加密连接到后端应用tomcat,这意味着负载均衡器负责解码SSL连接,这与SSL穿透相反,它是直接向代理服务器发送SSL连接的。 第二种使用SSL穿透,SSL连接在每个tomcat服务器终止,将CPU负载都分散到tomcat服务器。然而,这样做会让你失去增加或修改HTTP报头的能力,因为连接只是简单地从负载均衡器路由到tomcat服务器,这意味着应用服务器会失去获取 X-Forwarded-* 报头的能力,这个报头包含了客户端IP地址、端口和使用的协议。 有两种策略的组合做法,那就是第三种,SSL连接在负载均衡器处终止,按需求调整,然后作为新的SSL连接代理到后台服务器。这可能会提供最大的安全性和发送客户端信息的能力。这样做的代价是更多的CPU能耗和稍复杂一点的配置。 选择哪个策略取决于你及应用的需求。SSL终端为我所见过最典型的策略,但SSL穿透可能会更安全。 3、使用HAProxy作为SSL终端 首先,我们将介绍最典型的解决方案 - SSL 终端。正如前面提到的,我们需要让负载均衡器处理SSL连接。这就意味着要将SSL证书放在负载均衡服务器上。 记住,在生产环境里使用(而不是自签名)的SSL证书,是不会需要你自己来生成或签名 - 你只需要创建证书签名请求 (csr) 并把它交给那个你向它购买证书的机构即可。 首先, 我们创建一份自签名的证书作为示范,并在本地使用同一份证书。 opensslgenrsa-out/etc/haproxy/wzlinux.key2048 opensslreq-new-key/etc/haproxy/wzlinux.key-out/etc/haproxy/wzlinux.csr >CountryName(2lettercode)[AU]:CN >StateorProvinceName(fullname)[Some-State]:Shanghai >LocalityName(eg,city)[]:Shanghai >OrganizationName(eg,company)[InternetWidgitsPtyLtd]:wzlinux >OrganizationalUnitName(eg,section)[]: >CommonName(e.g.serverFQDNorYOURname)[]:www.wzlinux.com >EmailAddress[]: >Pleaseenterthefollowing'extra'attributestobesentwithyourcertificaterequest >Achallengepassword[]: >Anoptionalcompanyname[]: cd/etc/haproxy opensslx509-req-days3655-inwzlinux.csr-signkeywzlinux.key-outwzlinux.crt 这就生成了wzlinux.csr,wzlinux.key和wzlinux.crt文件了。 接着,在创建了证书之后,我们需要创建pem文件。pem文件本质上只是将证书、密钥及证书认证中心证书(可有可无)拼接成一个文件。在我们的例子中,我们只是简单地将证书及密钥文件并以这个顺序拼接在一样来创建wzlinux.pem 文件。这是HAProxy读取SSL证书首选的方式。 catwzlinux.crtwzlinux.key|teewzlinux.pem 当购买真正的证书 时,你不一定会获取拼接后的文件。你可以要自己拼接它们。然而,很多机构也会提供一份拼接好的文件给你。如果你没有获取到拼接后的文件,则它可能不是一个 pem 文件,而是 bundle、cert、cert、key文件或一些相同概念但名称类似的文件。 无论如何,只要我们得到了HAProxy使用的pem文件,我们只需经过简单配置就是可以处理SSL连接了。 下面我们将要配置haproxy来安装SSL证书,配置文件如下 #--------------------------------------------------------------------- #Exampleconfigurationforapossiblewebapplication.Seethe #fullconfigurationoptionsonline. # #http://haproxy.1wt.eu/download/1.4/doc/configuration.txt # #--------------------------------------------------------------------- #--------------------------------------------------------------------- #Globalsettings #--------------------------------------------------------------------- global #tohavethesemessagesendupin/var/log/haproxy.logyouwill #needto: # #1)configuresyslogtoacceptnetworklogevents.Thisisdone #byaddingthe'-r'optiontotheSYSLOGD_OPTIONSin #/etc/sysconfig/syslog # #2)configurelocal2eventstogotothe/var/log/haproxy.log #file.Alinelikethefollowingcanbeaddedto #/etc/sysconfig/syslog # #local2.*/var/log/haproxy.log # log127.0.0.1local2warning chroot/var/lib/haproxy pidfile/var/run/haproxy.pid maxconn400000 userhaproxy grouphaproxy daemon tune.ssl.default-dh-param2048 #nbproc3 #turnonstatsunixsocket statssocket/var/lib/haproxy/stats #--------------------------------------------------------------------- #commondefaultsthatallthe'listen'and'backend'sectionswill #useifnotdesignatedintheirblock #--------------------------------------------------------------------- defaults modehttp logglobal optionhttplog optiondontlognull optionhttp-server-close optionforwardforexcept127.0.0.0/8 optionredispatch optionhttpclose retries3 timeouthttp-request10s timeoutqueue1m timeoutconnect10s timeoutclient1m timeoutserver1m timeouthttp-keep-alive10s timeoutcheck10s statsenable statshide-version statsuri/haproxy?status statsrealmHaproxy\Statistics statsauthadmin:asd870719 #statsadminifTRUE #--------------------------------------------------------------------- #mainfrontendwhichproxystothebackends #--------------------------------------------------------------------- #frontendmain*:5000 #aclurl_staticpath_beg-i/static/images/javascript/stylesheets #aclurl_staticpath_end-i.jpg.gif.png.css.js #use_backendstaticifurl_static #default_backendapp frontendwzlinux_ssl bind*:80 bind*:443sslcrt/etc/haproxy/wzlinux.pem modehttp default_backendwzlinux #--------------------------------------------------------------------- #staticbackendforservingupimages,stylesheetsandsuch #--------------------------------------------------------------------- #backendstatic #balanceroundrobin #serverstatic127.0.0.1:4331check backendwzlinux modehttp balanceroundrobin optionforwardfor #optionhttpchkHEAD/HTTP/1.1\r\nHost:localhost serverwzlinux0110.0.0.9:8080checkinter15000rise2fall4 serverwzlinux0210.0.0.9:8081checkinter15000rise2fall4 serverwzlinux0310.0.0.9:8082checkinter15000rise2fall4 serverwzlinux0410.0.0.9:8083checkinter15000rise2fall4 serverwzlinux0510.0.0.9:8084checkinter15000rise2fall4 serverwzlinux0610.0.0.9:8085checkinter15000rise2fall4 serverwzlinux0710.0.0.9:8086checkinter15000rise2fall4 #http-requestset-headerX-Forwarded-Port%[dst_port] #http-requestadd-headerX-Forwarded-Protohttpsif{ssl_fc} 因为 SSL 连接在负载均衡器上终止了,我们依然来发送正常的 HTTP 请求到后台服务器。 只接受SSL连接 如果你想让网站只接受SSL连接,你可以添加向前端配置加上redirect导向: frontendwzlinux_ssl bind*:80 bind*:443sslcrt/etc/haproxy/wzlinux.pem redirectschemehttpsif!{ssl_fc} modehttp default_backendwzlinux 上面,我们添加了 redirect 导向,如果连接不是通过SSL连接的,它将http重定向到https。 4、使用HAProxy实现SSL穿透 使用SSL穿透,我们将让后台服务器处理SSL连接,而非负载均衡器来处理。 负载均衡器的工作就只是简单地将请求转发到配置好的后台服务器。因为连接还保持加密状态,HAProxy只能将它转发给其他服务器,其他事情就没法做了。 在这个配置中,我们需要在前端和后台配置中同时使用TCP模式而不是HTTP模式。HAProxy只会把连接当作信息流来转发到其他服务器,而不会使用在HTTP请求上才能使用的功能。 首先,我们调整一下前端配置: frontendwzlinux_ssl bind*:80 bind*:443 optiontcplog modetcp default_backendwzlinux 这里依然同时绑定80和443端口,以保证正常的HTTP连接和SSL连接都能工作。 正如上述提到的,转发一个安全连接而服务器而不作任何解码,我们需要使用TCP模式(mode tcp)。这也意味着我们需要设置tcp日志而不是默认的http日志(option tcplog)。 接着,我们要调整后台end配置。注意,我们还要将这个更改成TCP模式,并删除一些directives以避免因为修改/增加HTTP报头功能所带来的冲突: backendwzlinux modetcp balanceroundrobin optionssl-hello-chk serverwzlinux0110.0.0.9:8080checkinter15000rise2fall4 serverwzlinux0210.0.0.9:8081checkinter15000rise2fall4 serverwzlinux0310.0.0.9:8082checkinter15000rise2fall4 serverwzlinux0410.0.0.9:8083checkinter15000rise2fall4 serverwzlinux0510.0.0.9:8084checkinter15000rise2fall4 serverwzlinux0610.0.0.9:8085checkinter15000rise2fall4 serverwzlinux0710.0.0.9:8086checkinter15000rise2fall4 正如你所看到的,这里设置成了mode tcp - 前端和后台配置都需要设置成这个模式。 我们还删除了option forwardfor和http-request选项 - 这些不能用于TCP模式,而且我们也不能向已加密的请求添加报头,还有一些前面的默认配置也删去关于http的配置,这里不再演示。 为了检查正确与否,我们可以使用ssl-hello-chk来检查连接及它处理SSL(特别是SSLv3)连接的能力。 在这个例子中,我虚构了两个接受SSL证书的后台服务器。如果你有阅读过edition SSL certificates,你会看到如何将它们集成到 Apache 或 Nginx 来创建一个网络服务器后台,以处理SSL通信。使用SSL 穿越,不需要给HAProxy创建或使用SSL证书。后台服务器都能够处理SSL连接,如同只有一台服务器且没有使用负载均衡器那样。 在关于如何设定lvs分发这里不再进行设定演示,大家可以查看我有关LVS的文章。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册