使用 Azure DevTest Lab 搭建云端开发测试环境
點(diǎn)擊上方藍(lán)字關(guān)注“汪宇杰博客”
導(dǎo)語(yǔ)
程序員和測(cè)試工程師經(jīng)常需要自己搭環(huán)境用于開(kāi)發(fā)和測(cè)試目的,這些機(jī)器可能只會(huì)使用很短一段時(shí)間。通常我們會(huì)在本機(jī)使用 Hyper-V、VMWare 之類的虛擬機(jī)產(chǎn)品,或者使用企業(yè)IT管理員分配的虛擬機(jī)去完成這項(xiàng)工作。然而安裝配置以及管理這些VM都很麻煩,好在目前許多廠家都有造福IT管理員的解決方案,微軟Azure也給我們提供了一個(gè)DevTest Lab,假裝幫助我們分分鐘配環(huán)境,拒絕996,遠(yuǎn)離ICU。
Azure Lab Services
“
通過(guò) Azure 實(shí)驗(yàn)室服務(wù),可以快速在云中設(shè)置團(tuán)隊(duì)環(huán)境(例如,開(kāi)發(fā)環(huán)境、測(cè)試環(huán)境、教室實(shí)驗(yàn)室環(huán)境)。?實(shí)驗(yàn)室所有者創(chuàng)建實(shí)驗(yàn)室、預(yù)配 Windows 或 Linux 虛擬機(jī)、安裝必要的軟件和工具,并將其提供給實(shí)驗(yàn)室用戶使用。?實(shí)驗(yàn)室用戶在實(shí)驗(yàn)室中連接到虛擬機(jī) (VM),以便進(jìn)行日常工作、短期項(xiàng)目或?qū)嶒?yàn)室練習(xí)。?用戶開(kāi)始利用實(shí)驗(yàn)室中的資源后,實(shí)驗(yàn)室管理員可分析多個(gè)實(shí)驗(yàn)室的成本和使用情況,并設(shè)置總體策略以優(yōu)化組織或團(tuán)隊(duì)成本。
”該服務(wù)目前包含兩個(gè)獨(dú)立的子服務(wù):
教室實(shí)驗(yàn)室 (Classroom Labs)
開(kāi)發(fā)測(cè)試實(shí)驗(yàn)室 (DevTest Labs)
我們今天要講的是其中的?DevTest Labs,官網(wǎng)概述如下:
可使用 Azure 開(kāi)發(fā)測(cè)試實(shí)驗(yàn)室來(lái)實(shí)現(xiàn)許多關(guān)鍵方案,但其中一個(gè)主要方案涉及使用開(kāi)發(fā)測(cè)試實(shí)驗(yàn)室為開(kāi)發(fā)人員托管開(kāi)發(fā)計(jì)算機(jī)。?在此方案中,開(kāi)發(fā)測(cè)試實(shí)驗(yàn)室具有以下優(yōu)勢(shì):
開(kāi)發(fā)人員可快速按需預(yù)配其開(kāi)發(fā)計(jì)算機(jī)。
通過(guò)使用可重用模板和項(xiàng)目,預(yù)配 Windows 和 Linux 環(huán)境。
開(kāi)發(fā)人員可在任何需要的時(shí)候輕松自定義其開(kāi)發(fā)計(jì)算機(jī)。
管理員可以通過(guò)確保開(kāi)發(fā)者無(wú)法獲得超過(guò)開(kāi)發(fā)所需的 VM,以及在未使用 VM 時(shí)將其關(guān)閉來(lái)控制成本。
創(chuàng)建 DevTest Lab
在 Azure Portal 里點(diǎn)擊 Create a resource,搜索 DevTest,即可打開(kāi)創(chuàng)建向?qū)А?/p>
輸入 Lab name,選擇訂閱、資源組、位置、是否自動(dòng)關(guān)機(jī)、是否為公有環(huán)境(互聯(lián)網(wǎng)訪問(wèn))。
其中的 Resource group 要注意,它指的是該實(shí)驗(yàn)室本身的資源組,而不是實(shí)驗(yàn)室里的VM所使用的資源組。
創(chuàng)建完成后,點(diǎn)擊 Add 添加第一臺(tái)虛擬機(jī)。
搜索并選擇你需要的操作系統(tǒng)鏡像,這個(gè)列表里也包括了許多預(yù)配置的鏡像,如SQL Server、AKS、各種Linux等等,甚至還可以找到 Windows 10 + Office 365。你也可以制作自己的鏡像用于創(chuàng)建后續(xù)VM。
輸入虛擬機(jī)名稱,管理員賬號(hào)、密碼,選擇虛擬機(jī)大小以及磁盤配置。如果你用過(guò)普通的 Azure VM服務(wù),會(huì)發(fā)現(xiàn)這個(gè)向?qū)Ь褪莻€(gè)極簡(jiǎn)版的Azure VM,省去了網(wǎng)卡、NSG、IP等眾多高級(jí)配置。
Artifact 的意思是預(yù)裝的軟件,比如我需要 7-zip 以及 Chrome,就可以在這個(gè)列表里找到,并勾選。當(dāng)然,這個(gè)列表肯定不包含你自己或企業(yè)的專業(yè)軟件,別擔(dān)心,微軟允許從三方庫(kù)添加這些artifact(可以自行查閱方法,本文暫不討論)
在VM的高級(jí)設(shè)置中,除了傳統(tǒng)的虛擬網(wǎng)絡(luò)、子網(wǎng)、IP等信息,還多了過(guò)期時(shí)間、Claim 這兩個(gè)選項(xiàng)。過(guò)期時(shí)間很好理解,管理員可以設(shè)置一個(gè)VM的使用期限,而 Claim 的含義是“認(rèn)領(lǐng)”,即使用之前用戶需要認(rèn)領(lǐng)這臺(tái)機(jī)器,才能開(kāi)機(jī)使用。用完之后要取消認(rèn)領(lǐng),還給企業(yè)。
等待虛擬機(jī)創(chuàng)建完成后,可以在 Labs Overview 里看見(jiàn)這臺(tái)機(jī)器。
和使用普通 Azure VM 非常類似,點(diǎn)擊 Connect 即可使用 RDP 或 SSH 連接到虛擬機(jī),然后你想怎么玩就怎么玩。
如果你不喜歡默認(rèn)分配的 DNS 名稱也沒(méi)關(guān)系,這個(gè)其實(shí)是可以改的!這臺(tái) VM 從普通的 Azure Virtual Machine 界面也能進(jìn)去,進(jìn)去以后就可以點(diǎn)擊 DNS name 分配一個(gè)新域名。
配置定時(shí)自動(dòng)開(kāi)關(guān)機(jī)
Azure 的意思顧名思義是 A zone user rich enough,富人的玩具,我們苦逼程序員還是得省錢進(jìn)ICU里花。因此我們可以設(shè)置定時(shí)開(kāi)關(guān)機(jī),讓虛擬機(jī)只有 996 的工作時(shí)間才可用,回家睡覺(jué)時(shí)關(guān)機(jī),這樣 VM 就不會(huì)計(jì)費(fèi)了。
進(jìn)入 Configuration and policies
在 Auto-start 里設(shè)置自動(dòng)開(kāi)機(jī)時(shí)間,選擇中國(guó)時(shí)間早上9點(diǎn),記得勾選星期六,以收取福報(bào)。
同樣,Auto-shutdown 里配置為晚上9點(diǎn)。當(dāng)然,也可以配置成半夜12點(diǎn),這樣可以養(yǎng)生。
現(xiàn)在,回到 VM 的設(shè)置里,就可以完成996定時(shí)設(shè)置了!云福報(bào)!
分配用戶
如果你的需求非常簡(jiǎn)單,用戶不多,完全可以只靠RDP+管理員賬號(hào)密碼來(lái)分配使用權(quán)限。但是在正規(guī)的組織機(jī)構(gòu)中,通常同步了 Azure AD,我們可以通過(guò) Azure AD 來(lái)分配不同用戶和角色使用或管理 Labs 里的機(jī)器。
由于我的Azure AD是個(gè)人使用,不方便模擬公司環(huán)境,此處摘錄微軟官網(wǎng)文檔:
將用戶添加到實(shí)驗(yàn)室用戶角色
在左側(cè)菜單中,選擇“配置和策略”。
從菜單中選擇“訪問(wèn)控制(IAM)”,并在工具欄中選擇“+ 添加角色分配”。
在“添加權(quán)限”頁(yè)上,執(zhí)行以下操作:
在“角色”中,選擇“開(kāi)發(fā)測(cè)試實(shí)驗(yàn)室用戶”。
選擇要添加的“用戶”。
選擇“保存”。
參考資料
https://docs.microsoft.com/en-us/azure/lab-services/lab-services-overview
總結(jié)
以上是生活随笔為你收集整理的使用 Azure DevTest Lab 搭建云端开发测试环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Mercurial黄昏,Bitbucke
- 下一篇: dotNET Core WebAPI 统