使用 Azure CLI 在 DevTest Labs 中建立和管理虛擬機器
本快速入門會引導您完成建立、啟動、連線、更新和清理實驗室中的開發機器。
在開始之前:
若尚未建立實驗室,請參閱這裡的指示。
安裝 Azure CLI。 若要開始,請執行 az login 建立 Azure 連線。
建立並確認虛擬機器
請先使用 az account set
命令來設定適當的 Azure 內容,再執行 DevTest Labs 相關命令:
az account set --subscription 11111111-1111-1111-1111-111111111111
建立虛擬機器的命令為:az lab vm create
。 實驗室、實驗室名稱和虛擬機器名稱的資源群組都是必要項目。 其餘引數會根據虛擬機器的類型而變更。
下列命令會從 Azure Market Place 建立 Windows 型映像。 映像名稱會與您在使用 Azure 入口網站建立虛擬機器時所看到的名稱相同。
az lab vm create --resource-group DtlResourceGroup --lab-name MyLab --name 'MyTestVm' --image "Visual Studio Community 2017 on Windows Server 2016 (x64)" --image-type gallery --size 'Standard_D2s_v3' --admin-username 'AdminUser' --admin-password 'Password1!'
下列命令會根據實驗室中可用的自訂映像來建立虛擬機器:
az lab vm create --resource-group DtlResourceGroup --lab-name MyLab --name 'MyTestVm' --image "My Custom Image" --image-type custom --size 'Standard_D2s_v3' --admin-username 'AdminUser' --admin-password 'Password1!'
image-type 引數已從 gallery 變更為 custom。 映像名稱符合您在 Azure 入口網站中建立虛擬機器時所看到的名稱。
下列命令會從具有 ssh 驗證的市集映像來建立 VM:
az lab vm create --lab-name sampleLabName --resource-group sampleLabResourceGroup --name sampleVMName --image "Ubuntu Server 16.04 LTS" --image-type gallery --size Standard_DS1_v2 --authentication-type ssh --generate-ssh-keys --ip-configuration public
您也可以將 image-type 參數設定為 formula,以根據公式來建立虛擬機器。 如果您需要為虛擬機器選擇特定虛擬網路,則請使用 vnet-name 和 subnet 參數。 如需詳細資訊,請參閱 az lab vm create。
確認有可用的 VM。
使用 az lab vm show
命令,先確認具有 VM,再將其啟動並連線。
az lab vm show --lab-name sampleLabName --name sampleVMName --resource-group sampleResourceGroup --expand 'properties($expand=ComputeVm,NetworkInterface)' --query '{status: computeVm.statuses[0].displayStatus, fqdn: fqdn, ipAddress: networkInterface.publicIpAddress}'
{
"fqdn": "lisalabvm.southcentralus.cloudapp.azure.com",
"ipAddress": "13.85.228.112",
"status": "Provisioning succeeded"
}
啟動並連接至虛擬機器
下列範例命令會啟動 VM:
az lab vm start --lab-name sampleLabName --name sampleVMName --resource-group sampleLabResourceGroup
ssh userName@ipAddressOrfqdn
更新虛擬機器
下列範例命令會將成品套用至 VM:
az lab vm apply-artifacts --lab-name sampleLabName --name sampleVMName --resource-group sampleResourceGroup --artifacts @/artifacts.json
[
{
"artifactId": "/artifactSources/public repo/artifacts/linux-java",
"parameters": []
},
{
"artifactId": "/artifactSources/public repo/artifacts/linux-install-nodejs",
"parameters": []
},
{
"artifactId": "/artifactSources/public repo/artifacts/linux-apt-package",
"parameters": [
{
"name": "packages",
"value": "abcd"
},
{
"name": "update",
"value": "true"
},
{
"name": "options",
"value": ""
}
]
}
]
列出實驗室中可用的成品
若要列出實驗室 VM 中可用的成品,請執行下列命令。
Cloud Shell - PowerShell:請注意會在 $expand 的 $ 前面使用倒引號 (`) (即 `$expand):
az lab vm show --resource-group <resourcegroupname> --lab-name <labname> --name <vmname> --expand "properties(`$expand=artifacts)" --query "artifacts[].{artifactId: artifactId, status: status}"
Cloud Shell - Bash:請注意會在命令的 $ 前面使用斜線 (\) 字元。
az lab vm show --resource-group <resourcegroupname> --lab-name <labname> --name <vmname> --expand "properties(\$expand=artifacts)" --query "artifacts[].{artifactId: artifactId, status: status}"
範例輸出:
[
{
"artifactId": "/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.DevTestLab/labs/<lab name>/artifactSources/public repo/artifacts/windows-7zip",
"status": "Succeeded"
}
]
停止並刪除虛擬機器
下列範例命令會停止 VM。
az lab vm stop --lab-name sampleLabName --name sampleVMName --resource-group sampleResourceGroup
刪除 VM。
az lab vm delete --lab-name sampleLabName --name sampleVMName --resource-group sampleResourceGroup
下一步
請參閱下列內容:Azure DevTest Labs 的 Azure CLI 文件。