山寨起源——河神的全斧头

网上笑话转载 

樵夫的斧头掉进了河里,河神为了奖励他的诚实给了他一把金斧头一把银斧头,樵夫很高兴的回到家,结果发现这两把斧头河神从某P电商买的,一把是全斧头,一把是很斧头。

山寨源站系统里惊悚吐血故事系列之第一季第三集:起源~!

 

2015年我们CDN运营团队开始接应海外CDN运营服务工作,在运营初期,就有某位神仙大佬提出我们要建立自己的源站系统,理由如下:

1、无论内容是出国,还是进口,在现有国际带宽及其超级防火墙的共同作用之下,必定大文件传输会非常之缓慢;

2、客户需要一种途径,将大文件内容传输到境外或境内,这里需要做中转。

综上所述,我们需要在境内和境外建设大文件中转站系统,接应进出大陆网络的内容。中转站之间要用CTG高速网络进行同步内容。

 

需求有了,开始逐步山寨~!

根据需求看,我们至少需要2个部件,1、上传部件,接收客户上传的大文件;2、分发部件,CDN需要通过http回源获取内容。

1、上传部件,业界常规都是FTP,考虑到中国网络的情况,我们特意论证引入了一套IBM的高速传输软件系统(Aspera),可以实现高速的上传,不过客户那边需要安装客户端。FTP的软件,我们直接选择了vsFTPd开源软件。

2、分发部件,我们直接选择 Nginx作为http分发器。

仅仅有了上传和分发这些功能部件是不够的,从文件保护的角度,以及负载均衡,我们还需要一个文件系统,需要形成一个集群内服务器文件的共享和保护。换句话说,如果服务器1挂了,服务器2可以顶上,这些物理服务器之间的文件需要共享,文件需分布式存放。

根据这个需求,我们有以下三个方案做选择:

1、挂NAS盘,NAS盘内部做Raid磁盘保护;挂NAS盘的好处是,挂载简单,只要网络和磁盘IO足够强大,应付一般性任务足够。唯一可能的故障就是NAS盘的网口如果挂了,就数据读写就挂了。

2、HDFS文件系统:脱胎于hadoop的分布文件系统,最大的好处是1主2副的数据保护,在集群内只有不是3台机器同时挂掉,这个目标文件始终可以在其他的机器上完整拼接起来;但是致命问题是他自带的http分发的链接是飘忽的,比如你想访问http://ip/123.zip,这个IP很可能是集群中的某一个IP,这样对于CDN回源访问时不可以预知,也就是会造成回源不可预测的失败。

3、OpenStack的ceph文件系统:ceph也是采用了1主2副的分发布文件保护,最大的好处是从系统层面看到的文件与本地文件系统无异,类似透明方式进行读取和写入,这样非常适合与Nginx进行集成。但是最大问题是ceph的稳定性非常不好,4台组建的集群服务,经常会莫名其妙的挂了,同时没有可视化的监控手段,都只能采用命令行ceph -s的轮询监控,一旦出现大批量文件读写操作,我们其实无法获知ceph是否稳定工作,因为那个ceph -s经常不响应。

两权相害取其轻,我们愉快的走上了CEPH这条不归路,惨痛教训随之而来。请看下集~!

如有兴趣可关注公众号:国际cdn讲堂

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值