Azure Microsoft Dev Box (開發箱) 初體驗

  • 417
  • 0

前言

前幾天微軟公告 Microsoft Dev Box 這個服務進入 Public Preview,此服務建構在微軟 Windows 365 服務之上,可以讓開發人員更專注在開發上,而不用煩惱於基礎建設上,它可以讓我們自定義好專案需要的開發環境,讓開發人員可以快速的建置好一個開發環境起來,身為一個開發者和 Azure 使用者,第一時間還是來建立起來評估一下,把服務建立起來體驗一下,後面就會簡單的介紹服務的建置和使用的心得。

實做

名詞說明

在開始前先來介紹一些名詞,

  • 開發人員中心 (Dev center):開發人員中心可讓開發基礎架構團隊集中管理可供開發團隊使用的映像、工作站大小和網路。
    • 網路 (Networking):可決定開發人員中心中開發箱集區可用區域的網路連線。
    • Azure 計算資源庫 (Azure compute galleries):Azure 計算資料庫允許在建立開發箱集區時使用自訂映像。
    • 開發箱定義 (Dev box definitions):提供開發箱集區集區中所建立之開發箱集區的設定詳細資料。
  • 專案 (Projects):管理團隊層級設定,並讓開發團隊能使用自助開發箱。
    • 開發箱集區 (Dev box pools):定義專案可以使用的開發箱定義。

建置服務

開發人員中心建置和設定

首先新建開發人員中心,搜尋 DevCenter 就可以找到此服務。

設定上就是資料中心和名稱等基本資訊需要設定而已。

開發箱預覽提供於澳大利亞東部、西歐、日本東部、加拿大中部、英國南部、美國東部、美國東部 2、美國中南部和美國西部 3。

建立好之後先來設定網路,在建立網路的時候會關連到現有的虛擬網路,如果目前環境還沒有虛擬網路的,會需要先行建立。搜尋 Network Connections 來建立網路連線,這邊注意不要按照官方文件說明的從開發人員中心的網路新增,沒辦法看到一樣的畫面,這邊不注意會被誤導了。

這邊建立網路連線時候網域類型我選擇加入 Azure Active Directory,如果 AD 是在內部環境,並且已連線到 Azure 上的話,就可以選擇混合式,然後選擇現有的虛擬網路,點選建立就可以了。

接下來回到開發人員中心,這時候再點選網路來建立,就可以選擇的到剛剛建立起來的網路連線了。

假設已經有在 Azure 上面建立好一些客制化的作業系統和環境的映像,就可以在 Azure 計算資源庫來新增,但是在新增之前需要針對 Azure Compute Gallery 先設定好授權,在所有服務找到受控身份識別來新增。

建立一個新的使用者指派的受控識別。

回到開發人員中心新增身份識別,這邊會需要選擇使用者指派,並且選取剛剛建立的使用者指派的受控識別。

再回到開發人員中心來新增額外的的可使用的映像檔資源庫,如果沒設定的話,預設就是只有預設的 Windows 的作業系統可以選擇,而假設我們有建立好自己開發環境的映像檔在 Azure Cumputer Gallery 上的話,就可以新增進來,未來建立環境的時候就可以選擇我們自訂好的開發環境。

再來就是設定開發箱的定義了,這邊的定義可以想成未來我們要建立起來的開發環境的電腦的開發環境和機器的 CPU 和硬碟空間等設定。

設定好名稱和選擇作業系統的映像檔案,以及設定機器的運算資源和硬碟大小。

計算資源目前僅提供:4 vCPU,16 GB RAM 、8 vCPU,32 GB RAM 兩種規格。儲存體目前僅提供:256 GB SSD、512 GB SSD、1024 GB SSD 三種規格。

可以選擇的內建 Windows 映像則有底下 10 種,這邊比較可惜的是沒有預設安裝好 Visual Studio 的可以選擇,所以如果需要 Visual Studio 會需要另外安裝或是預先自訂好含 Visual Studio 的客制映像。

接下來新增專案,概念上就是針對我們開發的專案並且去設定可以使用的開發箱定義,未來有被授權在這個專案內的成員就可以建立指定的開發環境起來。

輸入一些基本設定和選擇開發人員中心就可以建立完成。

接下來就是設定專案可以使用的開發箱。

唯一需要先確認的就是公司內部是否有 Azure Hybrid Benefit 的授權,更多相關說明可以參考官方文件

最後的設定步驟就是設定可以使用此專案的帳號授權,需要設定 IAM 並指定 DevCenter Dev Box User 角色,這邊要注意的是帳號不能是來賓使用者,目前只能支援 AAD 底下建立的使用者。

建立開發箱環境

最後就是把環境建立起來了,連到 Azure 開發箱的專屬網站,如果有設定好專案權限的話,點選新增開發箱,就可以選擇到剛剛建立的專案和開發箱集區,如果有多組設定的話,就會出現下拉選單可以選擇。

建立環境約需 30 ~ 90分鐘,建立好之後就可以看到建立好的開發箱,點選在瀏覽器中開啟就可以用 AAD 帳號登入環境了或是可以選擇用遠端桌面相關軟體來登入。

如果是 Mac 電腦的話,這邊只會出現在瀏覽器開啟的選項。

如果在不需要環境的時候,記得把機器停止,這樣就不會收取運算資源的費用了,但是還是會有儲存體的費用產生

結論

目前服務在 Preview 階段,以日本東的費用為例的話,費用如下圖呈現,其中運算資源 8 vCpu 的目前 Preview 期間前 15 小時是免費的,儲存空間則是 512 GB 的是有前 365 小時免費。 

目前在要建立類似的開發環境,比較類似的會有 Azure VM、Azure Microsoft Dev Box 、Windows 365 企業版,稍微針對費用和情境整理如下表格:

 Azure VMAzure Microsoft Dev BoxWindows 365 企業版
規格D4v5 (4 vCpu + 16GB RAM + 512 GB 標準SSD) + Azure Hybrid Benefit4 vCPU + 16 GB RAM + 512 GB SSD + Azure Hybrid Benefit4 vCPU + 16 GB RAM + 512 GB SSD + Azure Hybrid Benefit
費用約 NTD$6,576 / 月(730小時)約 NTD$29,947 / 月(730小時)約 NTD$3,645 / 月 (訂閱制)
其它費用Public IP (如果對外的話) + 流量費用流量費用流量費用
建置稍難,需透過程式化方式才有辦法快速建置相同環境簡單,事先設定好建置的開發盒可直接建立起來且可由開發人員自行決定建置的時間點中等,需由 IT 管理人員選擇需要的作業系統和規格等
開關機需另外授權開發人員有 Azure Portal 權限才可以自行開關機可由開發人員自行開關機無關機功能
調整規格可隨意調整機器需要的規格無法直接調整規格可在 Microsoft 端點管理員系統管理中心調整
管理稍難簡單中等

從表格來看開發箱的費用,確實比其它兩種方式費用高了許多,我還一直以為自己算錯了,雖然用費較高但是卻可以讓 IT 管理人員減少管理的工,也可以直接授權開發人員去自行建立需要的機器起來,但是如果是日常開發要的環境,相對比起來的確是不划算多了,但是如果是用在短期方案或是 Lab 環境的建立上,還是有其方便的地方。

參考資料