我正在尋找一種解決方案,將容器從一個蔚藍存儲區複製到另一個蔚藍存儲區,這是最簡單的方法。它需要獲取源存儲的容器名稱,並在目標存儲中製作容器名稱的精確副本。任何幫助或想法?對於很多容器2500+。將azure存儲容器複製到其他帳戶存儲容器
1
A
回答
1
好吧,我把所有的容器從存儲到存儲,這一點我是怎麼做的:
我在哪裏是我的目標存儲在同一區域中創建一個虛擬機在蔚藍。
我下載了命令行工具「Cloudcopy」,你可以在這裏找到它:https://cloudcopy.codeplex.com/關於這個工具的好處是,我爲你創建了容器,以防它們在目標存儲中不存在的情況下( - P最終使容器公開的方式)
我做了一箇舊學校舊時尚批處理腳本(在我的情況下,我所有的容器編號00000001/00000002/etc.),將所有容器提取到我的虛擬機臨時存儲(d :)以及在將文件發送到目標存儲並刪除臨時存儲之後(在臨時存儲已滿的情況下,在我的情況下將其限制爲382GB,並且我的文件超過2TB)
下面是批處理腳本我使用(CMD):
@echo off
setlocal enabledelayedexpansion
REM Adds zeros to the container name
SET /a counter=100000000
REM set the count starting value
SET /a count=1
:loop
REM Yes i know very old fashion loop
set /a calculation=%counter%+%count%
set directoryname=%calculation:~-8%
REM the ~-8% cuts off the 1 in the beginning from the counter
START /WAIT c:\\CloudCopy.exe "https://<STORAGENAMESOURCE>.blob.core.windows.net/%directoryname%/*.*" "d:\%directoryname%" "DefaultEndpointsProtocol=https;AccountName=<STORAGENAMESOURCE>;AccountKey=<STORAGEKEYSOURCE>"
START /WAIT c:\\CloudCopy.exe "d:\%directoryname%\*.*" "https://<STORAGENAMEDESTINATION>.blob.core.windows.net/%directoryname%" "DefaultEndpointsProtocol=https;AccountName=<STORAGENAMEDESTINATION>;AccountKey=<STORAGEKEYDESTINATION>" -P
rd /s /q d:\%directoryname%
set /a count=%count%+1
goto loop
當然你也可以更換你想要什麼都%目錄名%變量,它的工作原理,你可以忽略整櫃一部分例如,您可以添加特定容器名稱的列表,並確保創建更好的循環。這一個爲我工作,我很忙,所以現在對我來說很好:)嗯,順便說一下,Cloudcopy也支持非常大的文件,就像我的大小爲2GB +的虛擬機在目標區域中一樣。
0
AzCopy讓你相同的存儲帳戶內或不同存儲設備之間複製斑點佔
AzCopy.exe
https://<sourceaccount>.blob.core.windows.net/<sourcecontainer>/
https://<destaccount>.blob.core.windows.net/<destcontainer>/
/sourcekey:<key> /destkey:<key> /S
以下可選參數可以是有用的:
/MOV
刪除源文件複製 後
/NC:<number>
併發網絡呼叫數量(默認爲8 X內核)
相關問題
- 1. Azure存儲容器大小
- 2. 瞭解包含帳戶和容器的Azure存儲(blob)。測試容器?
- 3. 將Azure存儲帳戶遷移到其他訂閱
- 4. Azure不在存儲帳戶的容器中顯示斑點
- 5. 所有在Azure存儲帳戶中刪除的容器
- 6. Github將存儲庫內容複製到另一個存儲庫
- 7. 在Azure Blob存儲上下載容器
- 8. Azure Blob存儲 - $ logs中的listblobs容器
- 9. 如何清潔Azure存儲Blob容器?
- 10. 如何使用Java將映像從Azure存儲帳戶複製到ARM存儲帳戶?
- 11. 將Swift對象存儲容器複製到新的OpenStack服務
- 12. 將存儲升級到4.0.1後,Azure存儲容器ListBlobs拋出Uri NULL異常
- 13. Azure孤兒存儲帳戶
- 14. Azure存儲帳戶連接
- 15. 將類對象存儲到EEPROM或其他存儲器
- 16. 將用戶textarea內容保存到瀏覽器存儲中
- 17. 無法在Azure存儲容器中看到保存的文件
- 18. 將Azure存儲帳戶(經典)轉換爲ARM Blob存儲
- 19. 連接到Azure存儲帳戶
- 20. Azure存儲連接字符串沒有帳戶密鑰 - 公共容器
- 21. 在存儲帳戶中創建Blob容器時發生Azure Portal錯誤
- 22. 在Android帳戶管理器中存儲其他數據
- 23. 如何將現有的Maven存儲庫內容從一臺機器複製到其他機器?
- 24. 如何將Amazon S3存儲桶轉移到其他帳戶?
- 25. 通過代理服務器連接到Azure存儲帳戶
- 26. Azure Blob存儲 - 基於容器的CORS(非賬戶基礎)
- 27. 將mem_fun存儲在標準容器中
- 28. Azure使用rest api和php在同一存儲帳戶中將blob從一個容器複製到另一個容器
- 29. Azure存儲資源管理器在打開存儲帳戶時崩潰
- 30. 將數據存儲到存儲器中的獨立存儲器
請注意,Chui提供的命令行已過期。在最新版本的AzCopy中,指定源位置和目標位置時需要Options/Source和/ Dest,並且不再支持/ Mov。欲瞭解更多詳情,請訪問http://aka.ms/azcopy並在那裏下載最新版本。 –
謝謝,但這使得我每次添加一個容器時,我需要爲每個要複製的容器指定源和目標容器的名稱。我在我的存儲器中儲存了大約2500多個容器。我在尋找的是能夠從源存儲中複製所有容器並自動在目標存儲中創建容器。 –