Tworzenie maszyn wirtualnych i zarządzanie nimi za pomocą usługi DevTest Labs przy użyciu interfejsu wiersza polecenia platformy Azure

Ten przewodnik Szybki start przeprowadzi Cię przez proces tworzenia, uruchamiania, nawiązywania połączenia, aktualizowania i czyszczenia maszyny programistycznej w laboratorium.

Przed rozpoczęciem:

Tworzenie i weryfikowanie maszyny wirtualnej

Przed wykonaniem poleceń powiązanych z usługą DevTest Labs ustaw odpowiedni kontekst platformy Azure przy użyciu az account set polecenia :

az account set --subscription 11111111-1111-1111-1111-111111111111

Polecenie tworzenia maszyny wirtualnej to: az lab vm create. Grupa zasobów laboratorium, nazwa laboratorium i nazwa maszyny wirtualnej są wymagane. Pozostałe argumenty zmieniają się w zależności od typu maszyny wirtualnej.

Poniższe polecenie tworzy obraz oparty na systemie Windows z witryny Azure Market Place. Nazwa obrazu jest taka sama jak podczas tworzenia maszyny wirtualnej przy użyciu Azure Portal.

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!'

Następujące polecenie tworzy maszynę wirtualną na podstawie obrazu niestandardowego dostępnego w laboratorium:

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!'

Argument typu obrazu został zmieniony z galerii na niestandardowy. Nazwa obrazu jest zgodna z tym, co widzisz, jeśli chcesz utworzyć maszynę wirtualną w Azure Portal.

Następujące polecenie tworzy maszynę wirtualną na podstawie obrazu witryny Marketplace z uwierzytelnianiem SSH:

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 

Maszyny wirtualne można również tworzyć na podstawie formuł, ustawiając parametr typu obrazu na formułę. Jeśli musisz wybrać określoną sieć wirtualną dla maszyny wirtualnej, użyj parametrów sieci wirtualnej i podsieci . Aby uzyskać więcej informacji, zobacz az lab vm create.

Sprawdź, czy maszyna wirtualna jest dostępna.

Użyj polecenia , az lab vm show aby sprawdzić, czy maszyna wirtualna jest dostępna przed rozpoczęciem i nawiązaniem z nim połączenia.

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"
}

Uruchamianie i nawiązywanie połączenia z maszyną wirtualną

Następujące przykładowe polecenie uruchamia maszynę wirtualną:

az lab vm start --lab-name sampleLabName --name sampleVMName --resource-group sampleLabResourceGroup

Nawiązywanie połączenia z maszyną wirtualną: SSH lub Pulpit zdalny.

ssh userName@ipAddressOrfqdn 

Aktualizowanie maszyny wirtualnej

Następujące przykładowe polecenie stosuje artefakty do maszyny wirtualnej:

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": ""
      }
    ]
  } 
]

Wyświetlanie listy artefaktów dostępnych w laboratorium

Aby wyświetlić listę artefaktów dostępnych na maszynie wirtualnej w laboratorium, uruchom następujące polecenia.

Cloud Shell — PowerShell: zwróć uwagę na użycie backtick (') przed wartością $ w $expand (tj. "$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 — powłoka Bash: zwróć uwagę na użycie znaku ukośnika (\) przed $ w poleceniu .

az lab vm show --resource-group <resourcegroupname> --lab-name <labname> --name <vmname> --expand "properties(\$expand=artifacts)" --query "artifacts[].{artifactId: artifactId, status: status}"

Przykładowe dane wyjściowe:

[
  {
    "artifactId": "/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.DevTestLab/labs/<lab name>/artifactSources/public repo/artifacts/windows-7zip",
    "status": "Succeeded"
  }
]

Zatrzymywanie i usuwanie maszyny wirtualnej

Następujące przykładowe polecenie zatrzymuje maszynę wirtualną.

az lab vm stop --lab-name sampleLabName --name sampleVMName --resource-group sampleResourceGroup

Usuwanie maszyny wirtualnej.

az lab vm delete --lab-name sampleLabName --name sampleVMName --resource-group sampleResourceGroup

Następne kroki

Zapoznaj się z następującą zawartością: Dokumentacja interfejsu wiersza polecenia platformy Azure dla Azure DevTest Labs.