這篇文章主要是介紹如何將服務(wù)器本地的數(shù)據(jù)上傳到阿里云OSS的指定bucket中熟尉,最重要的參考文檔是數(shù)據(jù)遷移單機(jī)部署弊仪。我第一次上傳數(shù)據(jù)到OSS上時(shí)熙卡,步驟要比前面的鏈接中介紹的要麻煩,ossimport工具還是v2.1励饵,現(xiàn)在已經(jīng)更新到了v2.2驳癌,而且阿里云的工程師將很多步驟封裝了起來(lái),因此流程簡(jiǎn)化了不少役听,大家可以直接參考前面的文檔颓鲜。我這份主要是針對(duì)linux服務(wù)器單機(jī)模式數(shù)據(jù)上傳的,Windows的請(qǐng)直接移步前方鏈接典予。
1. 環(huán)境配置和工具下載
第一步甜滨,要確保Linux本地已經(jīng)有了Java 1.7及以上的運(yùn)行環(huán)境。查看本機(jī)java版本瘤袖,使用命令 java -version 即可衣摩。如果沒(méi)有,請(qǐng)去網(wǎng)上搜相應(yīng)的安裝教程捂敌,有很多艾扮,這個(gè)不難;
第二步占婉,請(qǐng)從ossimport-2.2.1.zip此鏈接處下載ossimport工具泡嘴,使用wget命令即可。
下載到本地后锐涯,新建一個(gè)my_oss_work文件夾磕诊,再利用下述命令
unzip -o ossimport-2.2.1.zip -d my_oss_work
將壓縮文件解壓到my_oss_work文件夾填物,完畢纹腌。
2. ossimport的相關(guān)配置
這一步主要是配置local_job.cfg和sys.properties這兩個(gè)文件滞磺,它們都在上一步解壓的my_oss_work/conf文件夾下升薯。
第一步,修改local_job.cfg文件:首先击困,一定不要修改local_job.cfg的名稱(chēng)和位置广凸,保持不動(dòng)即可。然后利用vim打開(kāi)該文件,更改如下設(shè)置
srcType=local ? ? //因?yàn)槭潜镜厣蟼鳎源颂幵O(shè)置為local
srcPrefix=/home/my_name/my_data ? ?//這里是你本地需要上傳的文件夾
destAccessKey=LTAI******bLeL ? ? //這個(gè)是你阿里云賬戶(hù)的access key侥袜,需要你去你的阿里云賬戶(hù)上去找
destSecretKey=A3Ludf*********qbvEUz08DR? //這個(gè)是你阿里云賬戶(hù)的secret key溉贿,也需要你去你自己的賬戶(hù)上去查找枫吧。access key 和secret key都是用來(lái)對(duì)你的身份進(jìn)行驗(yàn)證的九杂,相當(dāng)于你傳數(shù)據(jù)到阿里云上時(shí)的鑰匙,這個(gè)鑰匙能唯一確定你的OSS
destDomain=http://oss-cn-beijing.aliyuncs.com? //這一步很重要代兵,這是你的endpoint尼酿,是由你的實(shí)際OSS區(qū)域確定的。如果你購(gòu)買(mǎi)了阿里云ECS服務(wù)植影,且是將你ECS主機(jī)上的數(shù)據(jù)上傳到OSS裳擎,那么這里設(shè)置http://oss-cn-beijing-internal.aliyuncs.com;如果你不僅購(gòu)買(mǎi)了ECS思币,還設(shè)置有VPC專(zhuān)有網(wǎng)絡(luò)鹿响,那么此處設(shè)置http://vpc100-oss-cn-beijing.aliyuncs.com;如果你是將自己的服務(wù)器(并不是阿里云的ECS主機(jī))比如你學(xué)院里的機(jī)房上的數(shù)據(jù)上傳到OSS谷饿,那么這里設(shè)置http://oss-cn-beijing.aliyuncs.com惶我。這些信息都可以在你的OSS賬戶(hù)里面查到。endpoint中的beijing說(shuō)明我購(gòu)買(mǎi)的是OSS區(qū)域在華北博投,如果你的在杭州绸贡,那么就改為hangzhou。這些都是可以在你的賬戶(hù)里查到的毅哗。
destBucket=my_bucket? //這是你的OSS的bucket名听怕,你要把數(shù)據(jù)傳到這個(gè)bucket上,注意虑绵,不要在bucket名字后面加斜線(xiàn)/
destPrefix=my_oss_data ?//這是你的目標(biāo)文件夾尿瞭,你要講數(shù)據(jù)傳到上面指定的my_bucket的my_oss_data文件夾下,注意此處文件夾開(kāi)頭不要加斜線(xiàn)/
jobName=local_test ?//這是你的任務(wù)名稱(chēng)翅睛,注意声搁,此處不需要修改黑竞,保持不變即可!疏旨!ossimport v2.2單機(jī)模式要求這個(gè)名稱(chēng)不能更改:芑辍!
除了上面幾個(gè)需要設(shè)置和注意以外檐涝,其它的都不需要?jiǎng)幽唬”3植蛔兗纯桑?/p>
第二步,修改sys.properties文件:
workerMaxThroughput(KB/s)=0 ?//這是設(shè)置你的上傳速度上限骤铃,設(shè)置為0表示不限制拉岁。
注意,sys.properties中的配置項(xiàng)workingDir惰爬、workerUserName喊暖、workerPassword、privateKeyFile請(qǐng)不要修改K呵啤陵叽!保持不變即可!丛版!
到此巩掺,ossimport的配置到此結(jié)束。
3. 運(yùn)行ossimport和上傳數(shù)據(jù)
使用下述命令
cd my_oss_work
切換到剛才解壓的文件夾下页畦,即與import.sh這個(gè)文件保持同級(jí)胖替,你當(dāng)前目錄下存在著一個(gè)叫做import.sh的文件。這個(gè)文件將數(shù)據(jù)上傳的操作封裝在了一起豫缨,你無(wú)須管它里面寫(xiě)了什么独令,只要你前面local_job.cfg和sys_properties這兩個(gè)文件正確設(shè)置了,那么運(yùn)行命令
bash import.sh
ossimport工具就會(huì)依據(jù)你之前的設(shè)定好芭,將你本地/home/my_name/my_data文件夾下的所有數(shù)據(jù)上傳到你阿里云OSS的my_bucket的my_oss_data文件夾下燃箭。整個(gè)過(guò)程持續(xù)的時(shí)間,取決于你文件的大小和數(shù)量舍败。
上傳完畢之后招狸,你就可以去你的OSS上去查看了。
4. 查看上傳數(shù)據(jù)的狀態(tài)
如果數(shù)據(jù)量很大邻薯,上傳需要花費(fèi)很多時(shí)間裙戏,我們就可以選擇暫時(shí)斷開(kāi)連接。斷開(kāi)后弛说,ossimport仍會(huì)繼續(xù)上傳數(shù)據(jù)挽懦。當(dāng)我們?cè)俅蔚顷憰r(shí)翰意,想看一下數(shù)據(jù)上傳的進(jìn)度木人,這時(shí)就可以切換到my_oss_work文件夾下(也即ossimport的工作目錄下)信柿,執(zhí)行下述命令
bash console.sh stat
如果數(shù)據(jù)仍在上傳,則會(huì)顯示出當(dāng)前的工作狀態(tài)和正在運(yùn)行的任務(wù)醒第;如果已經(jīng)上傳結(jié)束了渔嚷,就會(huì)顯示?JobState:Succeed
5. 其他情況
上述是一鍵上傳,其實(shí)也可以逐步上傳稠曼,這個(gè)數(shù)據(jù)遷移單機(jī)部署這個(gè)鏈接處也有介紹形病,但是要麻煩很多,不建議新手去嘗試霞幅,直接采用上述一鍵上傳的步驟即可漠吻。是否上傳成功,取決于你在上面的每一步配置是否正確K究摇途乃!