如何建立和上傳Windows Base VHD到Azure

如何建立和上傳Windows Base VHD到Azure


目前在Azure上內建提供了許多不同版本的映像檔可以直接選擇使用,包含的作業系統除了Windows本身的系統還包含了Ubuntu、CentOS、SUSE等系統映像可以直接使用佈署新的VM在Azure上,但是如果想要有自行安裝的軟體或是中文語系的作業系統,那就必須自行客製化再上傳到Azure上。

 

必要的環境條件:

1. 可以建立VM的作業系統環境,建議直接使用Server 2008 R2或更新的作業系統,使用Hyper-V來建立。

2. Azure訂閱的帳號

3. VM客體環境的ISO安裝檔案



注意事項:

1. Azure只能支援VHD格式的虛擬硬碟和第一世代的虛擬機器

2. Server作業系統只支援以下三個版本























 OS Service Pack位元版本
 Windows Server 2012 R2 N/Ax64
 Windows Server 2012 N/Ax64
 Windows Server 2008 R2 SP1 x64

 

步驟一:在Hyper-V建立適合上傳的VHD檔案


1. 新增一個虛擬機器,這個畫面只有環境是Server 2012 R2和Windows 8.1上才會看到的畫面,如果製作的環境和我一樣,切記一定要選擇 [ 第1代 ] ,選擇製作錯誤只能從頭再來。

建立第1代

 

2. 在新增虛擬硬碟上建議選擇 [ 稍後連結虛擬硬碟 ] ,原因是如果系統是Server 2012或Windows 8以上的系統,預設會建立VHDX格式的虛擬硬碟,但Azure只支援舊版格式VHD,如果建立錯誤也可以使用Hyper-V的 [ 編輯磁碟 ] 工具做轉換。

稍後連結虛擬硬碟

 

3. 建立新的虛擬硬碟,請記得選擇VHD

建立VHD<br/>

 

4. 選擇磁碟類型 [ 動態擴充 ] ,選擇固定大小VHD上傳太花時間

建立動態擴充

 

5. 安裝完成作業系統,強烈建議將所有重要更新都先安裝完成,除了減少之後在Azure系統更新的時間,也可以減少系統上的Bug和已知問題的產生。確認其他要安裝的軟體都安裝完畢,就可以執行系統封裝的動作,輸入 [ cd sysprep ] 再輸入 [ sysprep.exe ] 。

sysprep

 

6. 選擇 [ 進入系統全新體驗(OOBE) ] 和 [ 一般化 ] 清理完畢執行 [ 關機 ],以上就完成基本的VHD虛擬磁碟製作。

OOBE

步驟二:建立Azure儲存體


1. 點選左下角 [ NEW ] 選擇 DATA SERVICES -> STORAGE -> QUICK CREATE,URL輸入儲存體的網址名稱,選擇離你最近地區,所以選擇東南亞Southeast Asia,複寫可以使用預設 [ Geo-Redundant ] ,再按右下角的 [ CREATE STORAGE ACCOUNT ]

Geo-Redundant STORAGE ACCOUNT

 

2. 進入剛建立的儲存體,點選 [ CONTAINERS ] 再來點選 [ CREATE A CONTAINER ]

CREATE A CONTAINER

 

3. 輸入容器名稱並建立

輸入容器名稱

 

4. 紀錄下剛建立容器的URL

容器的URL

步驟三:透過Microsoft Azure PowerShell上傳VHD


1. 安裝Microsoft Azure PowerShell 進入網址
http://azure.microsoft.com/en-us/downloads/ 點選Command-line tools下的Windows PowerShell進行下載安裝

Microsoft Azure PowerShell

 

2. 安裝完畢執行Microsoft Azure PowerShell

Microsoft Azure PowerShell

 

3. 輸入 [ Add-AzureAccount ] 並使用Azure訂閱的帳號登入
Add-AzureAccount

Add-AzureAccount

 

4. 出現Azure的訂閱資訊

Azure訂閱資訊

 

5. 輸入 [ Get-AzurePublishSettingsFile ] 透過網頁取得設定檔案,下載的檔案副檔名是publishsettings
Get-AzurePublishSettingsFile

Get-AzurePublishSettingsFile publishsettings

 

6. 輸入 [ Import-AzurePublishSettingsFile <PathToFile> ] ,記得路徑要用雙引號框起來
Import-AzurePublishSettingsFile <PathToFile>

Import-AzurePublishSettingsFile

 

7. 上傳VHD請輸入
Add-AzureVhd -Destination "<BlobStorageURL>/<YourImagesFolder>/<VHDName>.vhd" -LocalFilePath <PathToVHDFile>

範例
Add-AzureVhd -Destination "https://vhdimageupload.blob.core.windows.net/vhd/Server2012R2.vhd" -LocalFilePath "D:\Hyper-V\Server 2012 R2-Template\Virtual Hard Disks\Server 2012 R2-Template.vhd"

目標的位置是上面儲存體容器的網址,切記最後要加入.vhd的副檔名,如果沒有加入會造成Azure網頁上會無法正常找到這個虛擬硬碟,記得都需要用雙引號框住路徑。上傳時間取決頻寬大小和VHD的大小,以60MB/20MB的ADSL網路,上傳10GB的VHD檔案,大約需要80分鐘,建議利用晚上或離峰時間執行上傳動作。

上傳VHD

 

8. 上傳完畢可以從Azure的網頁,在同樣的容器下看到上傳的VHD

容器VHD

 

步驟四:建立安裝映像來源


1. 點選 [ Virtual Machines ] -> [ IMAGES ] -> [ Create an Image ]

建立Virtual Machines

 

2. 開啟容器中的VHD檔案

容器中的VHD

 

3. 記得勾選 [ I have run Sysprep on the virtual machine. ]

I have run Sysprep on the virtual machine

 

4. 新增完畢後,新增虛擬機器時選擇點選 [ MY IMAGES ] 就可以看到自行製作的系統映像檔

MY IMAGES

留言

這個網誌中的熱門文章

Server 2012-遠端登入時發生驗證錯誤,無法聯絡到本機安全性授權單位

Windows Server 2012 R2 佈署RemoteApp(上)