Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Za pomocą rozszerzenia Azure DevTest Labs Tasks można zintegrować Azure DevTest Labs z ciągłymi procesami integracji i dostarczania (CI/CD) w Azure Pipelines. Rozszerzenie instaluje kilka zadań w usłudze Azure Pipelines, w tym:
- Tworzenie maszyny wirtualnej
- Tworzenie obrazu niestandardowego z poziomu maszyny wirtualnej
- Usuwanie maszyny wirtualnej
Te zadania ułatwiają na przykład szybkie wdrożenie złotej maszyny wirtualnej obrazu , uruchomienie określonego testu, a następnie usunięcie maszyny wirtualnej.
W tym artykule pokazano, jak używać zadań w usłudze Azure DevTest Labs do tworzenia i wdrażania maszyny wirtualnej, tworzenia obrazu niestandardowego oraz usuwania maszyny wirtualnej — wszystko w ramach jednego potoku wydania. Zwykle wykonujesz te zadania oddzielnie we własnych potokach kompilacji, testowania i wdrażania.
Rozpoczynanie pracy z usługą Azure DevTest Labs
Używasz platformy Azure po raz pierwszy? Tworzenie bezpłatnego konta platformy Azure.
Już masz konto na platformie Azure? Utwórz pierwsze laboratorium i rozpocznij pracę z usługą Azure DevTest Labs w ciągu kilku minut.
Wymagania wstępne
W witrynie Azure Portal utwórz laboratorium DevTest Labs lub użyj istniejącego laboratorium.
Zarejestruj się lub zaloguj się do organizacji usługi Azure DevOps Services i utwórz projekt lub użyj istniejącego projektu.
Zainstaluj rozszerzenie Azure DevTest Labs Tasks z witryny Visual Studio Marketplace:
- Przejdź do Zadania Azure DevTest Labs.
- Wybierz Pobierz bezpłatnie.
- Wybierz organizację usługi Azure DevOps Services z listy rozwijanej, a następnie wybierz pozycję Zainstaluj.
Utwórz szablon do zbudowania maszyny wirtualnej dla laboratorium
Najpierw skonstruuj szablon usługi Azure Resource Manager (ARM), który tworzy maszynę wirtualną laboratorium na żądanie.
- W laboratorium w witrynie Azure Portal wybierz pozycję Dodaj na górnym pasku menu.
- Na ekranie Wybieranie podstawy wybierz obraz podstawowy systemu Windows dla maszyny wirtualnej.
- Na ekranie Tworzenie zasobu laboratorium w obszarze Artefakty wybierz pozycję Dodaj lub Usuń artefakty.
- Na ekranie Dodawanie artefaktów wyszukaj winrm, a następnie wybierz strzałkę obok Konfiguruj WinRM.
- W okienku Dodawanie artefaktu wprowadź w pełni kwalifikowaną nazwę domeny (FQDN) dla maszyny wirtualnej, na przykład
contosolab00000000000000.westus3.cloudapp.azure.com. Wybierz pozycję OK, a następnie ponownie wybierz opcję OK. - Wybierz kartę Ustawienia zaawansowane, a w polu Adres IP wybierz pozycję Publiczny.
Uwaga
Jeśli korzystasz z artefaktu WinRM z udostępnionym adresem IP, musisz dodać regułę translacji adresów sieciowych (NAT), aby przypisać port zewnętrzny do portu WinRM. Nie potrzebujesz reguły NAT, jeśli tworzysz maszynę wirtualną z publicznym adresem IP. W tym przewodniku utwórz maszynę wirtualną (VM) z publicznym adresem IP.
- Wybierz pozycję Wyświetl szablon ARM.
- Skopiuj kod szablonu i zapisz go jako plik o nazwie CreateVMTemplate.json w lokalnej gałęzi kontroli źródła.
- Wprowadź szablon do systemu kontroli wersji projektu.
Tworzenie skryptu w celu uzyskania właściwości maszyny wirtualnej
Następnie utwórz skrypt, aby zebrać wartości używane przez kroki zadań, takie jak Azure File Copy i PowerShell na maszynach docelowych, do wdrażania aplikacji na maszynach wirtualnych. Zwykle należy używać tych zadań do wdrażania własnych aplikacji na maszynach wirtualnych platformy Azure. Zadania wymagają wartości, takich jak nazwa grupy zasobów maszyny wirtualnej, adres IP i nazwa FQDN.
Uwaga
Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.
Zapisz następujący skrypt z nazwą taką jak GetLabVMParams.ps1 i zaewidencjonuj go w systemie kontroli źródła projektu.
Param( [string] $labVmId)
$labVmComputeId = (Get-AzResource -Id $labVmId).Properties.ComputeId
# Get lab VM resource group name
$labVmRgName = (Get-AzResource -Id $labVmComputeId).ResourceGroupName
# Get the lab VM Name
$labVmName = (Get-AzResource -Id $labVmId).Name
# Get lab VM public IP address
$labVMIpAddress = (Get-AzPublicIpAddress -ResourceGroupName $labVmRgName -Name $labVmName).IpAddress
# Get lab VM FQDN
$labVMFqdn = (Get-AzPublicIpAddress -ResourceGroupName $labVmRgName -Name $labVmName).DnsSettings.Fqdn
# Set a variable labVmRgName to store the lab VM resource group name
Write-Host "##vso[task.setvariable variable=labVmRgName;]$labVmRgName"
# Set a variable labVMIpAddress to store the lab VM Ip address
Write-Host "##vso[task.setvariable variable=labVMIpAddress;]$labVMIpAddress"
# Set a variable labVMFqdn to store the lab VM FQDN name
Write-Host "##vso[task.setvariable variable=labVMFqdn;]$labVMFqdn"
Utwórz potok wydania w usłudze Azure Pipelines
Następnie utwórz potok wydania w usłudze Azure Pipelines. Zadania potoku wykorzystują wartości, które przypisałeś do maszyny wirtualnej, gdy tworzyłeś szablon ARM.
- Na stronie projektu usługi Azure DevOps Services wybierz pozycję Potoki>Wydania z lewego menu nawigacyjnego.
- Wybierz Nowy pipeline.
- W okienku Wybierz szablon wybierz pozycję Puste zadanie.
- Zamknij okienko Scena.
- Na stronie potoku wdrożeniowego wybierz kartę Zmienne.
- Wybierz pozycję Dodaj, a następnie wprowadź następujące pary Nazwa i Wartość , wybierając pozycję Dodaj po dodaniu każdej z nich.
- vmName: nazwa maszyny wirtualnej przypisana w szablonie ARM.
- userName: nazwa użytkownika, aby uzyskać dostęp do maszyny wirtualnej.
- hasło: hasło dla nazwy użytkownika. Wybierz ikonę blokady, aby ukryć i zabezpieczyć hasło.
Dodawanie artefaktu
- Na stronie konfiguracji nowego wydania na zakładce Pipeline wybierz opcję Dodaj artefakt.
- Na okienku Dodaj artefakt wybierz Azure Repo.
- Na liście Project (Projekt) wybierz projekt DevOps.
- Na liście Źródło (repozytorium) wybierz repozytorium źródłowe.
- Na liście Gałąź domyślna wybierz gałąź do pobrania.
- Wybierz Dodaj.
Tworzenie maszyny wirtualnej usługi DevTest Labs
W następnym kroku zostanie utworzony złoty obraz maszyny wirtualnej do wykorzystania w przyszłych wdrożeniach. W tym kroku jest używane zadanie Tworzenie maszyny wirtualnej w usłudze Azure DevTest Labs.
Na stronie nowego potoku wydań, w zakładce Potok, wybierz hiperlinkowany tekst w Etapie 1.
W okienku po lewej stronie wybierz znak plus + obok Zadanie agenta.
W obszarze Dodawanie zadań w okienku po prawej stronie wyszukaj i wybierz pozycję Azure DevTest Labs Utwórz maszynę wirtualną, a następnie wybierz pozycję Dodaj.
W okienku po lewej stronie wybierz zadanie Utwórz maszynę wirtualną usługi Azure DevTest Labs.
W okienku po prawej stronie wypełnij formularz w następujący sposób:
Subskrypcja usługi Azure RM: wybierz połączenie z usługą lub subskrypcję z listy rozwijanej, a następnie wybierz pozycję Autoryzuj w razie potrzeby.
Uwaga
Aby uzyskać informacje na temat tworzenia bardziej ograniczonego połączenia uprawnień z subskrypcją platformy Azure, zobacz Punkt końcowy usługi Azure Resource Manager.
Laboratorium: wybierz nazwę laboratorium DevTest Labs.
Nazwa maszyny wirtualnej: zmienna określona dla nazwy maszyny wirtualnej: $vmName.
Szablon: Przejdź do i wybierz plik szablonu zaewidencjonowany w repozytorium projektu.
Plik parametrów: Jeśli plik parametrów został wprowadzony do Twojego repozytorium, przejdź do niego i go wybierz.
Przesłonięcia parametrów: wprowadź tekst.
-newVMName '$(vmName)' -userName '$(userName)' -password '$(password)'Rozwiń Zmienne wyjściowe, a w obszarze Nazwa odwołania wprowadź zmienną identyfikującą utworzoną maszynę wirtualną laboratorium. Wprowadźmy vm w polu Nazwa odniesienia dla uproszczenia. labVmId będzie atrybutem tej zmiennej i będzie określany później jako $vm.labVmId. Jeśli używasz innej nazwy, pamiętaj, aby używać jej odpowiednio w kolejnych zadaniach.
Identyfikator maszyny wirtualnej laboratorium będzie mieć następującą postać:
/subscriptions/{subscription Id}/resourceGroups/{resource group Name}/providers/Microsoft.DevTestLab/labs/{lab name}/virtualMachines/{vmName}.
Zbierz szczegóły maszyny wirtualnej DevTest Labs
Następnie potok uruchamia utworzony skrypt, aby zebrać szczegóły maszyny wirtualnej w DevTest Labs.
- Na karcie Zadania potoku wydania wybierz znak plus + obok pracy agenta.
- W obszarze Dodawanie zadań w okienku po prawej stronie wyszukaj i wybierz pozycję Azure PowerShell, a następnie wybierz pozycję Dodaj.
- W okienku po lewej stronie wybierz zadanie „skrypt programu Azure PowerShell: FilePath”.
- W okienku po prawej stronie wypełnij formularz w następujący sposób:
- Subskrypcja Azure: Wybierz połączenie usługi lub subskrypcję.
- Typ skryptu: wybierz pozycję Ścieżka pliku skryptu.
- Ścieżka skryptu
: Przejdź do repozytorium kodu źródłowego i wybierz skrypt programu PowerShell, który został zaewidencjonowany w repozytorium kodu źródłowego. Możesz użyć wbudowanych właściwości, aby uprościć ścieżkę, na przykład: $(System.DefaultWorkingDirectory/Scripts/GetLabVMParams.ps1. - Argumenty skryptu: wprowadź wartość -labVmId $(vm.labVmId).
Skrypt zbiera wymagane wartości i przechowuje je w zmiennych środowiskowych w pipeline wydania, co pozwala na odwoływanie się do nich w kolejnych krokach.
Tworzenie obrazu maszyny wirtualnej z maszyny wirtualnej DevTest Labs
Następne zadanie tworzy obraz nowo wdrożonej maszyny wirtualnej w laboratorium. Obraz umożliwia tworzenie kopii maszyny wirtualnej na żądanie w celu wykonywania zadań deweloperskich lub uruchamiania testów.
- Na karcie Zadania potoku wydania wybierz znak plus + obok pracy agenta.
- W obszarze Dodawanie zadań wybierz pozycję Azure DevTest Labs Utwórz obraz niestandardowy, a następnie wybierz pozycję Dodaj.
- W okienku po lewej stronie wybierz zadanie Azure DevTest Labs Tworzenie niestandardowego obrazu.
- W okienku po prawej stronie wypełnij formularz w następujący sposób:
- Subskrypcja usługi Azure RM: wybierz połączenie usługi lub subskrypcję.
- Laboratorium: wybierz swoje laboratorium.
- Nazwa obrazu niestandardowego: wprowadź nazwę obrazu niestandardowego.
- Opis: wprowadź opcjonalny opis, aby ułatwić wybranie poprawnego obrazu.
- Maszyna wirtualna (VM) źródła: Identyfikator źródłowej maszyny wirtualnej labVmId. Wprowadź wartość $(vm.labVmId).
- Zmienne wyjściowe: w razie potrzeby można edytować nazwę domyślnej niestandardowej zmiennej identyfikatora obrazu.
Wdrażanie aplikacji na maszynie wirtualnej usługi DevTest Labs (opcjonalnie)
Możesz dodać zadania umożliwiające wdrożenie aplikacji na nowej maszynie wirtualnej usługi DevTest Labs. Jeśli chcesz tylko eksperymentować z tworzeniem maszyny wirtualnej w DevTest Labs i obrazem niestandardowym, bez wdrażania aplikacji, możesz pominąć ten krok.
Zadania, których zwykle używasz do wdrażania aplikacji, to usługa Azure File Copy i program PowerShell na maszynach docelowych. Informacje o maszynie wirtualnej potrzebne do parametrów zadania można znaleźć w trzech zmiennych konfiguracyjnych o nazwach labVmRgName, labVMIpAddress i labVMFqdn w potoku wydania.
Usuwanie maszyny wirtualnej
Ostatnim zadaniem jest usunięcie maszyny wirtualnej wdrożonej w laboratorium. Zwykle należy usunąć maszynę wirtualną po wykonaniu zadań dewelopera lub uruchomieniu testów potrzebnych na wdrożonej maszynie wirtualnej.
- Na karcie Zadania potoku wydania wybierz znak plus + obok pracy agenta.
- W obszarze Dodawanie zadań wybierz pozycję Azure DevTest Labs Usuń maszynę wirtualną, a następnie wybierz pozycję Dodaj.
- Skonfiguruj zadanie w następujący sposób:
- Subskrypcja usługi Azure RM: wybierz połączenie usługi lub subskrypcję.
- Laboratorium: wybierz swoje laboratorium.
- Maszyna wirtualna: wprowadź wartość $(vm.labVmId).
- Zmienne wyjściowe: W obszarze Nazwa referencyjna, jeśli zmieniłeś domyślną nazwę zmiennej labVmId, wprowadź ją tutaj. Wartość domyślna to $(labVmId).
Zapisz potok wydania
Aby zapisać nowy pipeline wydania:
- Wybierz pozycję Nowy potok wydania na górze strony potoku wydania i wprowadź nową nazwę potoku.
- Wybierz pozycję Zapisz w prawym górnym rogu.
Tworzenie i uruchamianie wydania
Aby utworzyć i uruchomić wydanie za pomocą nowego przepływu pracy:
- Na stronie pipeline'u wersji wybierz Utwórz release w prawym górnym rogu.
- W obszarze Artefakty wybierz najnowszą kompilację, a następnie wybierz pozycję Utwórz.
Na każdym etapie wydania możesz odświeżyć widok laboratorium w portalu Azure, aby zobaczyć tworzenie maszyn wirtualnych, tworzenie obrazów i usuwanie maszyn wirtualnych.
Możesz użyć obrazu niestandardowego do tworzenia maszyn wirtualnych zawsze, gdy są potrzebne.