Rackspace云存储Linux版同步工具turbolift

大环境介绍
以下内容绝非广告,只是本人在寻找海外IDC和CDN时候走的一些弯路,也希望借此文章帮助跟我有同样境遇的人
rackspace是一个海外的IDC提供商,优势在于他相对于某些大厂商,低廉的价格,以及配套的云服务
劣势在于他们的配置时间略长,以及没有象国内IDC这样人性化的服务
同时rackspace提供的CDN服务是由现在海外市场占有率最高,且号称CDN技术鼻祖的akamai提供
然而akamai的服务,在国内是无法直接签约获得的,所以需要找到相对应的国内代理商,在这个过程中需要支付额外的费用,并且要更高的价格
所以我最终找到了rackspace,这家akamai在海外的代理商,但是作为中小互联网商,我们是无法从rackspace获得比较给力的折扣,以及较高的服务级别
于是,我找到了艾亚网络这家本地的服务商,通过他们在国内的IDC资源来帮我申请到更低廉的价格。http://www.aiya.cn
他们最终帮我申请了rackspace官方报价低很多的价格,在此借此文章再次感谢下为此努力的艾亚的朋友,做生意就是要找良心商家

如果你公司在国内,而且VPN不给力,从海外服务器想直接上传到云存储的话有几个方法
一、下载windows客户端,经过验证xp下有bug,而且传输及服务器命令不稳定
二、直接从web上传输,这个方法会根据网络有不同程度的丢包,如果你是上传很多文件的话,也不赞成用
三、直接从Centos服务器上通过同步工具(turbolift)直接上传到线上服务器,推荐这种方法,速度快,出错率低
于是我也本着让大家少走弯路的宗旨,在这里共享了上传到云存储的同步工具turbolift(此工具也是aiya朋友整理出来的)
要让CDN达到最佳效果,必须要将文件传输到rackspace的云存储中

1、原文地址
https://github.com/cloudnull/turbolift
2、必须的环境
Python版本 => 2.6 but < 3.0
python-setuptools
2.1、由于Centos的Python版本一般为2.4.3,所以需要升级
#查看Python版本
[root@localhost ~]# python -V
Python 2.4.3
#下载Python2.6.7.tar.bz2
wget http://www.python.org/ftp/python/2.6.7/Python-2.6.7.tar.bz2
#安装
$tar jxvf Python2.6.7.tar.bz2
$cd Python2.6.7
$./configure
$make && make install
#查看版本
$ /usr/local/bin/python2.6 -V
#建立软连接,使系统默认的python指向python2.6
mv /usr/bin/python /usr/bin/python.bak
ln -s //usr/local/bin/python2.6 /usr/bin/python
#检验python指向是否成功
python -V
#解决系统python软链接指向python2.6版本后,yum不能正常工作
$vi /usr/bin/yum
将文本编辑显示的#/usr/bin/python修改为#/usr/bin/python2.4,保存修改
2.2、下载并安装setuptools
$wget http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg#md5=bfa92100bd772d5a213eedd356d64086
$sh setuptools-0.6c11-py2.6.egg
3、下载并安装turbolift
#下载turbolift安装包
$wget https://github.com/cloudnull/turbolift/archive/master.zip
如wget出错,请使用wget –no-check-certificate https://github.com/cloudnull/turbolift/archive/master.zip
#由于github网站问题,下载的文件无后缀,需MV为zip后缀
$mv master turbolift-master.zip
#解压文件包
$unzip turbolift-master.zip
#正式安装
$cd turbolift-master
$python setup.py install
安装过程中如出现卡在requests-2.2.1.tar.gz的下载,原因是由于无法wget https地址,需要等手动下载并安装后再继续
$wget –no-check-certificate https://pypi.python.org/packages/source/r/requests/requests-2.2.1.tar.gz#md5=ac27081135f58d1a43e4fb38258d6f4e
#解压
$tar zxvf requests-2.2.1.tar.gz
#执行安装脚本
$cd requests-2.2.1
$python setup.py install
#返回turbolift-master目录,继续完成安装
$cd ..
$python setup.py install
直到安装完成
#turbolift的使用说明
查看帮助
turbolift -h
同步文件命令
turbolift -u [CLOUD-USERNAME] -a [CLOUD-API-KEY] –os-rax-auth [REGION] upload -s [PATH-TO-DIRECTORY] -c [CONTAINER-NAME]
turbolift -u [云存储用户名] -a [云存储的的API-KEY] –os-rax-auth [区域,芝加哥的缩写是ord] upload -s [需要上传的本地文件夹路径] -c [云存储Containers的名称]
范例:
turbolift -u tony -a xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx –os-rax-auth ord upload -s /home/test -c test
建议新开个Containers用于测试和上传,成功后请删除无用的Containers,避免被计费。