阿里云OSS和腾讯云COS互相迁移
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阿里云OSS和腾讯云COS互相迁移相关的知识,希望对你有一定的参考价值。
利用阿里、腾讯的帮助文档中提供的迁移工具测试迁移对象存储数据。
一、腾讯to阿里
文档链接:https://help.aliyun.com/document_detail/56990.html?spm=5176.7851628.6.1079.UqBdXK
OssImport工具可以将本地、其它云存储的数据迁移到OSS,它有以下特点:
支持的丰富的数据源,有本地、七牛、百度BOS、AWS S3、Azure Blob、又拍云、腾讯云COS、金山KS3、HTTP、OSS等,并可根据需要扩展;
支持断点续传;
支持流量控制;
支持迁移指定时间后的文件、特定前缀的文件;
支持并行数据下载、上传;
支持单机模式和分布式模式,单机模式部署简单使用方便,分布式模式适合大规模数据迁移。
- 运行环境
安装Java 1.7及以上 - 部署方式
OssImport有 单机模式 和 分布式模式 两种部署方式。对于小于 30TB 的小规模数据迁移,单机模式即可完成。对于大规模的数据迁移,请使用分布式模式。
单机模式下文件结构如下:
分布式:
本例是测试单击部署
下载工具包地址:http://gosspublic.alicdn.com/ossimport/standalone/ossimport-2.3.1.zip?spm=5176.doc57053.2.4.iSAMVL&file=ossimport-2.3.1.zip
下载到本地后解压,编辑配置文件ossimport-2.3.1conflocal_job.cfg
如下是相关配置
#是否打开增量模式,如果设为true,会每间隔incrementalModeInterval(单位秒)重新扫描一次增量数据,并将增量数据同步到oss上,incrementalModeInterval不建议配置成小于3600秒的值,会浪费很多请求次数,造成额外的开销(目前可配置的最小间隔为900秒)
isIncremental=false
incrementalModeInterval=86400
####################同步源端设置####################
#同步源类型,目前支持:
#1.local(本地文件,此选项只需要填写srcPrefix,不需要填写srcAccessKey,srcSecretKey,srcDomain,srcBucket)
#2.oss(从oss的一个bucket迁移到另一个bucket)
#3.qiniu(七牛)
#4.bos(百度的云存储)
#5.ks3(金山的云存储)
#6.s3(亚马逊s3)
#7.youpai(又拍云,又拍云获取文件列表的接口比较特殊,在同步时list不支持断点,因此在list没有完成时杀掉同步进程会导致下次会重新全部list文件列表)
#8.http (通过提供的http链接列表同步数据,此选项不需要填写srcAccessKey,srcSecretKey,srcDomain,srcBucket,srcPrefix)
#9.cos(腾讯云)
#10.azure(微软blob)
srcType=cos
srcAccessKey=AKIDuhxxxxxxvUt
srcSecretKey=PekfTxxxxxxxxohR
#源endpoint,同步本地文件以及通过http地址同步的不需要填
srcDomain=sh
srcBucket=testsh
#源前缀,默认为空,如果srcType=local,则此目录是本地目录,如果是其他类型,则是源Bucket里需要同步的Object的前缀,注意如果是本地目录,需要完整目录路径(以‘/‘进行分割并且以‘/‘结尾,例: c:/example/)
srcPrefix=/123/
#####################同步目的端设置######################
destAccessKey=LTxxxxxxxxxxxxxxxxxxxxxxxxxxKQ
destSecretKey=edHc1xxxxxxxxxxxxxxxxxxxxxxxPC
#目的endpoint,请根据您的实际oss区域填写,默认为杭州的域名,如果用阿里云ecs虚拟机做迁移的,请使用internal域名,不计费且不受虚拟机带宽限制(非虚拟机无法使用);例:http://oss-cn-hangzhou-internal.aliyuncs.com
destDomain=http://oss-cn-shanghai.aliyuncs.com
#目的bucket,不需要加上"/"
destBucket=qianyi-test
#目标前缀,默认为空,直接放在bucket下(如果要将数据同步到oss的某个目录下,请以‘/‘结尾),注意:oss不支持以 ‘/‘ 作为文件的开头,所以destPrefix请不要配置以‘/‘做为开头
destPrefix=111/
配置正确后运行程序:
windows到工具目录里,运行import.bat,linux运行import.sh
查看运行的状态
已迁移完成
阿里OSS上查看结果
注意:程序里有相关参数设置,比如默认是每执行一次都是将源对象存储中的数据全部复制过来,而且是覆盖复制,这些的都可以在配置文件中设置参数。
二、阿里to腾讯
本迁移工具支持从 AWS S3、阿里云OSS 和七牛云等服务迁移文件到对象存储COS;同时也支持文件列表迁移,即从一系列给定的 URL 中迁移文件到对象存储 COS。
使用限制:只适用于 COS V4 版本
系统环境:Linux 或 Mac 系统
软件依赖:Python 2.7.x,同时应该安装 pip,gcc 与 python-dev。
安装及配置:
- 1、安装python2.7.x
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar -zxvf Python-2.7.9.tgz
cd Python-2.7.9
./configure --prefix=/usr/local/python-2.7.9
make&&make install
ln -s /usr/local/python-2.7.9/bin/python /usr/bin/python2.7.9 - 2、安装 pip,gcc 与 python-dev
yum install python-pip python-devel gcc
如果pip安装的有问题再如下这样安装:
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
pip -V 查看pip版本 -
3、下载工具
https://github.com/tencentyun/cos_migrate_tool,可以下载ZIP到本地然后上传到linux服务器上。
直接下载到服务器上:git clone https://github.com/tencentyun/cos_migrate_tool.git
如果没有git,yum install git安装,需要高版本的要编译安装。 -
4、安装工具
pip install -U cos_migrate_tool
cos_migrate_tool -h 检查是否安装成功 - 5、配置
编辑oss-2-cos.conf(这是cos4版本4的) [common] workspace=/tmp/tmp6
[source]
type=oss
accesskeyid=LTxxxxxxxQ
accesskeysecret=edHxxxxxxPC
bucket=qianyi-test1
endpoint=oss-cn-qingdao.aliyuncs.com
[destination]
type=cosv4
region=sh
#注意这个region要填写缩写
accesskeyid=AKxxxxxxxxovUt
appid=1253961596
accesskeysecret=PxxxxxxxxxxxxxxxxxxR
bucket=testsh
- 6、运行测试
cos_migrate_tool -c /root/cos_migrate_tool-master/conf/oss-2-cos.conf
![](https://s1.51cto.com/images/blog/201904/18/18182cdb5a582393ba78161ba3b8b904.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
卸载:pip uninstall cos_migrate_tool
以上是关于阿里云OSS和腾讯云COS互相迁移的主要内容,如果未能解决你的问题,请参考以下文章