2012年10月25日

[Azure] 上傳VHD到Azure作為Image

其實這個Topic在網路上可以找到一堆文章,不過自己做一次還是比較有安心的感覺:)

首先準備一個VM,然後進入系統。用Administrator權限執行sysprep,他的位置在:C:\windows\system32\sysprep

image

選擇BBOC,做完以後關機。按下OK就可以讓他跑下去了。

image

跑這個需要一段時間,我們先放下他來準備環境。

為了測試,首先我到Windows Azure Portal上建立一個測試用的Storage。

image

接著我們需要以Administrator權限來執行一些command line命令。

image

進入後,首先我們需要建立一張憑證來做為上船憑證,切換到C:\Program Files (x86)\Windows Kits\8.0\bin\x64,目錄位置可能會依環境不同而不同,找不到就直接搜尋makecert。用下列的命令建立一張憑證。

makecert –sky exchange –r –n “CN=VHDUploadTest” –pe –a –sha1 –len 2048 –ss My “VHDUploadTest.cer”

其中,CN=XXX與cer檔名都是可以改掉的。

image

接著回到Windows Azure Portal,把這張憑證上傳到Azure。

image

回到command line,切換目錄到Windows Azure SDK\bin。

image

首先要指定Connection String

csupload Set-Connection “SubscriptionID=xxx;CertificateThumbprint=xxx;ServiceManagementEndpoint=https://management.core.windows.net”

其中,Subscription ID是訂閱的Subscription ID,CertificateThumbprint則是剛剛那張憑證的Thumbprint。

image

設定完成後用下面這個指令上傳VHD到Azure。

csupload Add-PersistentVMImage –Destination “.blob.core.windows.net//">http://<StorageName>.blob.core.windows.net/<VHDFolder>/<VHDNAME>” –Label <VHDNAME> -LiteralPath F:\VHD\VMUpload.vhd -OS Windows

其中,<StorageName>是剛剛建立的Storage名稱,<VHDFolder>是上傳後的VHD Container名稱,<VHDName>則是VHD的名稱。

然後就會開始上傳了。

image

沒有留言:

Blog Archive

About Me