Linux本地数据上传到阿里云OSS

这篇文章主要是介绍如何将服务器本地的数据上传到阿里云OSS的指定bucket中,最重要的参考文档是数据迁移单机部署。我第一次上传数据到OSS上时,步骤要比前面的链接中介绍的要麻烦,ossimport工具还是v2.1,现在已经更新到了v2.2,而且阿里云的工程师将很多步骤封装了起来,因此流程简化了不少,大家可以直接参考前面的文档。我这份主要是针对linux服务器单机模式数据上传的,Windows的请直接移步前方链接。

1. 环境配置和工具下载

第一步,要确保Linux本地已经有了Java 1.7及以上的运行环境。查看本机java版本,使用命令 java -version 即可。如果没有,请去网上搜相应的安装教程,有很多,这个不难;

第二步,请从ossimport-2.2.1.zip此链接处下载ossimport工具,使用wget命令即可。

下载到本地后,新建一个my_oss_work文件夹,再利用下述命令

unzip -o ossimport-2.2.1.zip -d my_oss_work

将压缩文件解压到my_oss_work文件夹,完毕。

2. ossimport的相关配置

这一步主要是配置local_job.cfg和sys.properties这两个文件,它们都在上一步解压的my_oss_work/conf文件夹下。

第一步,修改local_job.cfg文件:首先,一定不要修改local_job.cfg的名称和位置,保持不动即可。然后利用vim打开该文件,更改如下设置

srcType=local     //因为是本地上传,所以此处设置为local

srcPrefix=/home/my_name/my_data    //这里是你本地需要上传的文件夹

destAccessKey=LTAI******bLeL     //这个是你阿里云账户的access key,需要你去你的阿里云账户上去找

destSecretKey=A3Ludf*********qbvEUz08DR  //这个是你阿里云账户的secret key,也需要你去你自己的账户上去查找。access key 和secret key都是用来对你的身份进行验证的,相当于你传数据到阿里云上时的钥匙,这个钥匙能唯一确定你的OSS

destDomain=http://oss-cn-beijing.aliyuncs.com  //这一步很重要,这是你的endpoint,是由你的实际OSS区域确定的。如果你购买了阿里云ECS服务,且是将你ECS主机上的数据上传到OSS,那么这里设置http://oss-cn-beijing-internal.aliyuncs.com;如果你不仅购买了ECS,还设置有VPC专有网络,那么此处设置http://vpc100-oss-cn-beijing.aliyuncs.com;如果你是将自己的服务器(并不是阿里云的ECS主机)比如你学院里的机房上的数据上传到OSS,那么这里设置http://oss-cn-beijing.aliyuncs.com。这些信息都可以在你的OSS账户里面查到。endpoint中的beijing说明我购买的是OSS区域在华北,如果你的在杭州,那么就改为hangzhou。这些都是可以在你的账户里查到的。

destBucket=my_bucket  //这是你的OSS的bucket名,你要把数据传到这个bucket上,注意,不要在bucket名字后面加斜线/

destPrefix=my_oss_data  //这是你的目标文件夹,你要讲数据传到上面指定的my_bucket的my_oss_data文件夹下,注意此处文件夹开头不要加斜线/

jobName=local_test  //这是你的任务名称,注意,此处不需要修改,保持不变即可!!ossimport v2.2单机模式要求这个名称不能更改!!

除了上面几个需要设置和注意以外,其它的都不需要动!保持不变即可!

第二步,修改sys.properties文件

workerMaxThroughput(KB/s)=0  //这是设置你的上传速度上限,设置为0表示不限制。

注意,sys.properties中的配置项workingDir、workerUserName、workerPassword、privateKeyFile请不要修改!!保持不变即可!!

到此,ossimport的配置到此结束。

3. 运行ossimport和上传数据

使用下述命令

cd my_oss_work

切换到刚才解压的文件夹下,即与import.sh这个文件保持同级,你当前目录下存在着一个叫做import.sh的文件。这个文件将数据上传的操作封装在了一起,你无须管它里面写了什么,只要你前面local_job.cfg和sys_properties这两个文件正确设置了,那么运行命令

bash import.sh

ossimport工具就会依据你之前的设定,将你本地/home/my_name/my_data文件夹下的所有数据上传到你阿里云OSS的my_bucket的my_oss_data文件夹下。整个过程持续的时间,取决于你文件的大小和数量。

上传完毕之后,你就可以去你的OSS上去查看了。

4. 查看上传数据的状态

如果数据量很大,上传需要花费很多时间,我们就可以选择暂时断开连接。断开后,ossimport仍会继续上传数据。当我们再次登陆时,想看一下数据上传的进度,这时就可以切换到my_oss_work文件夹下(也即ossimport的工作目录下),执行下述命令

bash console.sh stat

如果数据仍在上传,则会显示出当前的工作状态和正在运行的任务;如果已经上传结束了,就会显示 JobState:Succeed

5. 其他情况

上述是一键上传,其实也可以逐步上传,这个数据迁移单机部署这个链接处也有介绍,但是要麻烦很多,不建议新手去尝试,直接采用上述一键上传的步骤即可。是否上传成功,取决于你在上面的每一步配置是否正确!



作者:余含军
链接:https://www.jianshu.com/p/ab75de4cb1a6
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
posted @ 2018-10-30 16:54  静心聆听  阅读(4202)  评论(0编辑  收藏  举报