Azure存儲管理工具——AzCopy

來源: 51CTO
作者:maomaostyle
時間:2021-05-19
16882
在Azure公有云服務(wù)中,存儲服務(wù)是用戶非常依賴也是非常核心的一項功能,之前博文也有提到過一些與Azure存儲相關(guān)的內(nèi)容,都是從一些實(shí)用場景來切入的,比如SQL備份到Blob并還原。

在Azure公有云服務(wù)中,存儲服務(wù)是用戶非常依賴也是非常核心的一項功能,之前博文也有提到過一些與Azure存儲相關(guān)的內(nèi)容,都是從一些實(shí)用場景來切入的,比如SQL備份到Blob并還原。

用過Azure存儲服務(wù)的筒子們都知道Azure主要分為存儲賬戶,容器,此外還有文件服務(wù)(可能國內(nèi)還沒有上線),粒度更細(xì)的劃分還包括三類存儲類型,分別是Blob、table以及queue。blob應(yīng)該是用途最廣泛的,我的理解它應(yīng)該是一種典型的對象類存儲;后兩者table是用來存放非結(jié)構(gòu)化數(shù)據(jù)的,queue呢我個人感覺用途更窄一些。對于國內(nèi)版本Azure每個訂閱下最多應(yīng)該能夠支持50個存儲賬戶,每個存儲賬戶下各種類型的數(shù)據(jù)大小總和上限應(yīng)該是500GB如果沒記錯的話,那么顯然Azure能夠提供PB級的數(shù)據(jù)量管理能力,想想還是夠用的。。。

wKioL1S9E4Ogl6XBAACmuemJSgI462.jpg

Blob里面又分塊blob和頁blob,單個塊blob最大容量200GB,適用于一些圖片,音頻,視頻等文件類型,頁blob適用于一些隨即寫入類型的文件,最典型的就是虛擬機(jī)的vhd文件。因此Azure VM默認(rèn)都是以頁blob來存放vhd文件的,單個容量最大1TB,這也是為什么我們在Azure上給VM附加磁盤時最大只能1TB。

###################################################################

想要管理并使用Azure存儲上的數(shù)據(jù),除了通過接口調(diào)用之外,微軟提供了幾種現(xiàn)成的管理工具,以便用戶能夠隨時在本地和云端上傳下載,AzCopy就是其中一個選擇。

 

AzCopy可以通過官方網(wǎng)站下載離線安裝包,如下圖:

wKioL1S9Dm3zTvbzAATJNHeVvFk586.jpg

或者可以通過Web Installer安裝Azure PowerShell也會一并把AzCopy裝上,安裝后的路徑如下:

wKiom1S9DZqQBS5qAASxRzULHR4014.jpg

打開AzCopy后(Microsoft Azure Storage tools),可以通過/?來查看使用幫助和一些簡單示例:

wKioL1S9Dm3z0uHRAAYrsiWXusU023.jpg

###################################################################

下面就在我的環(huán)境里做幾個簡單并且常用的演示,首先我在本地D:\test下準(zhǔn)備了三個文件,后綴都不一樣,如下圖:

wKiom1S9DZuSj2RjAAK_7oqt6Dc988.jpg

另外在我Azure訂閱下準(zhǔn)備了一個叫做labstorage01的storage account,里面會用到兩個容器(container),分別為labcontainer01和02,如下圖:

wKioL1S9Dm7gBZ69AAKUB9v4srY750.jpg

AzCopy的語法還是很好理解的,基本就是圍繞source和destination,key這些關(guān)鍵字段來進(jìn)行的,以下面的截圖為例,我將本地d:\test下的文件拷貝到labcontainer01容器下,/S指定遞歸模式,也就是將test文件夾下的所有文件全部上傳:

wKiom1S9DZuzfcwSAAKmhjRUSY4625.jpg

完成后可以在Azure門戶上查看到,如下圖:

wKioL1S9Dm6Cb8AQAAJP3Qd7G70190.jpg

根據(jù)上傳文件類型的不同,可以指定blob類型為塊或者頁,如下圖所示:

wKiom1S9DZuxq2pRAAKML9n7mJ0935.jpg

上傳后的vhd文件屬性顯示為頁blob,如下圖:

wKioL1S9Dm7R68q2AAJlIiubJA4085.jpg

這里我再準(zhǔn)備另外一個存儲賬戶labstorage02,并且在這個賬戶下創(chuàng)建了新的容器labcontainer03:

wKiom1S9DZzwd-CCAAIjEcMHKys768.jpg

通過AzCopy就可以在不同的存儲賬戶中轉(zhuǎn)移數(shù)據(jù),如下圖:

wKioL1S9Dm-wwTYpAANJGjeQWmU255.jpg

通過上面的指令將labstorage01下labcontainer02里面vhd文件拷貝到labstorage02下labcontainer03容器中,如下圖:

wKiom1S9DZzxC8GUAAIMQH87CAQ910.jpg

此外如果是想模糊匹配指定的文件名或單獨(dú)的文件,可以通過/pattern:來定義,例如下圖指定所有t開頭的文件,并以/S方式全部拷貝至目的路徑:

wKioL1S9Dm-AnhJ2AAMKnhU4-oU806.jpg

同樣AzCopy如果在執(zhí)行過程中意外中斷,可以通過/Z來生成日志文件并恢復(fù)操作(journal file),/V用來生成Log;對于這兩個參數(shù)如果不指定其他路徑的話,文件就生成在默認(rèn)路徑當(dāng)中:

wKioL1S9Dm_i-GvNAAJxpxruQIY195.jpg

很奇怪的是我用/Z沒有找到j(luò)ournal file,但是Log文件還是可以正常生成的,默認(rèn)路徑在下圖所示:

wKiom1S9DZ2BxLKDAAKgoQIoSBE517.jpg

當(dāng)然日志文件中的內(nèi)容和大家通過command line窗口中看到的差不多,如下圖:

wKioL1S9DnDjFbefAAM6CwDN0Q8077.jpg

###################################################################

總的來說,AzCopy是一個很不錯的工具,用來管理Azure存儲中的數(shù)據(jù)非常方便,這里依然還有不少沒有提及的功能,例如設(shè)置并發(fā)執(zhí)行數(shù)(concurrent),在Azure Blob與Azure FileShare中彼此拷貝數(shù)據(jù),管理table數(shù)據(jù)等等,并且AzCopy也在不斷更新當(dāng)中,相信在日后會帶來更多優(yōu)秀的功能。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于51CTO,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點(diǎn),不代表快出海對觀點(diǎn)贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開掃一掃, 關(guān)注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家