Opis dostępnych opcji tworzenia maszyny wirtualnej platformy Azure i zarządzania nią

Ukończone

Witryna Azure Portal to najprostszy sposób tworzenia zasobów, takich jak maszyny wirtualne podczas rozpoczynania pracy. Nie jest to jednak najefektywniejszy ani najszybszy sposób pracy z platformą Azure, szczególnie jeśli musisz utworzyć kilka zasobów razem. W naszym przypadku w końcu utworzymy dziesiątki maszyn wirtualnych do obsługi różnych zadań. Ich ręczne tworzenie w witrynie Azure Portal nie byłoby przyjemnym zadaniem.

Przyjrzyjmy się innym sposobom tworzenia zasobów i administrowania nimi na platformie Azure:

  • Szablony usługi Azure Resource Manager
  • Azure PowerShell
  • Interfejs wiersza polecenia platformy Azure
  • Interfejs API REST platformy Azure
  • Zestaw SDK klienta platformy Azure
  • Rozszerzenia maszyn wirtualnych platformy Azure
  • Usługi Azure Automation

Szablony usługi Resource Manager

Załóżmy, że chcesz utworzyć kopię maszyny wirtualnej przy użyciu tych samych ustawień. Możesz utworzyć obraz maszyny wirtualnej, przekazać go na platformę Azure i odwoływać się do niego jako podstawy nowej maszyny wirtualnej. Ten proces jest nieefektywny i czasochłonny. Platforma Azure oferuje opcję utworzenia szablonu, na podstawie którego będzie można utworzyć dokładną kopię maszyny wirtualnej.

Szablony usługi Resource Manager są plikami JSON definiującymi zasoby, które należy wdrożyć dla danego rozwiązania.

Możesz utworzyć szablon zasobu dla maszyny wirtualnej. Z menu maszyny wirtualnej w obszarze Automatyzacja wybierz pozycję Eksportuj szablon.

Screenshot showing Export template option for a VM.

Uwaga

Zasady dotyczące zasobów zawartych w piaskownicy dla tego modułu learn uniemożliwiają eksportowanie właśnie utworzonej maszyny wirtualnej. oznacza to, że wyeksportowany szablon jest łatwym do edycji plikiem JSON. Istnieje możliwość pobrania lub zapisania szablonu do późniejszego użycia lub natychmiastowego wdrożenia nowej maszyny wirtualnej na podstawie szablonu. Możesz na przykład utworzyć maszynę wirtualną na podstawie szablonu w środowisku testowym i znaleźć, że nie działa on w celu zastąpienia maszyny lokalnej. Wystarczy wtedy tylko usunąć grupę zasobów, co spowoduje usunięcie wszystkich zasobów, dostosować szablon i spróbować ponownie. Jeśli chcesz tylko wprowadzić zmiany w istniejących wdrożonych zasobach, możesz zmienić szablon użyty do jego utworzenia i ponownie wdrożyć go. Usługa Resource Manager zmieni zasoby tak, aby dopasować jej do nowego szablonu.

Po zakończeniu pracy w odpowiedni sposób możesz użyć tego szablonu, aby łatwo replikować wiele wersji infrastruktury, takich jak przemieszczanie i produkcja. Możesz sparametryzować pola, takie jak nazwa maszyny wirtualnej, nazwa sieci, nazwa konta magazynu itd., i wielokrotnie ładować szablon, używając różnych parametrów w celu dostosowania poszczególnych środowisk.

Aby uzyskać więcej informacji na temat korzystania z szablonów, zobacz Szybki start: tworzenie maszyny wirtualnej z systemem Ubuntu Linux przy użyciu szablonu usługi ARM.

Interfejs wiersza polecenia platformy Azure

Opcja obsługi skryptów i interakcji wiersza polecenia platformy Azure to interfejs wiersza polecenia platformy Azure.

Interfejs wiersza polecenia platformy Azure to międzyplatformowe narzędzie wiersza polecenia do zarządzania zasobami platformy Azure, takimi jak maszyny wirtualne i dyski, z poziomu wiersza polecenia. Jest ona dostępna dla systemów Linux, macOS, Windows lub w przeglądarce przy użyciu usługi Cloud Shell.

Na przykład za pomocą polecenia interfejsu wiersza polecenia możesz utworzyć maszynę wirtualną platformy az vm create Azure.

az vm create \
    --resource-group TestResourceGroup \
    --name test-wp1-eus-vm \
    --image Ubuntu2204 \
    --admin-username azureuser \
    --generate-ssh-keys

Interfejs wiersza polecenia platformy Azure może być używany z innymi językami skryptów, takimi jak Ruby i Python.

Dowiedz się więcej na temat tworzenia maszyn wirtualnych i zarządzania nimi z modułu Zarządzanie maszynami wirtualnymi przy użyciu narzędzia interfejsu wiersza polecenia platformy Azure.

Aby uzyskać więcej informacji na temat tworzenia maszyn wirtualnych przy użyciu interfejsu wiersza polecenia platformy Azure, zobacz Szybki start: tworzenie maszyny wirtualnej z systemem Linux przy użyciu interfejsu wiersza polecenia.

Azure PowerShell

Program Azure PowerShell jest idealny do wykonywania jednorazowych zadań interaktywnych i automatyzowania zadań powtarzalnych.

Uwaga

Program PowerShell to międzyplatformowa powłoka udostępniająca usługi, takie jak okno powłoki i analizowanie poleceń. Azure PowerShell to opcjonalny pakiet dodatku, który dodaje polecenia specyficzne dla platformy Azure (określane jako polecenia cmdlet). Dalsze informacje na temat instalowania i używania programu Azure PowerShell można znaleźć w oddzielnym module szkoleniowym.

Możesz na przykład użyć New-AzVM polecenia cmdlet , aby utworzyć nową maszynę wirtualną platformy Azure opartą na debianie.

New-AzVm `
    -ResourceGroupName "TestResourceGroup" `
    -Name "test-wp1-eus-vm" `
    -Location "East US" `
    -Image Debian11 `
    -VirtualNetworkName "test-wp1-eus-network" `
    -SubnetName "default" `
    -SecurityGroupName "test-wp1-eus-nsg" `
    -PublicIpAddressName "test-wp1-eus-pubip" `
    -GenerateSshKey `
    -SshKeyName myPSKey
    -OpenPorts 22

Jak pokazujemy w tym miejscu, można podać różne parametry w celu obsługi dużej liczby dostępnych ustawień konfiguracji maszyn wirtualnych. Większość parametrów ma odpowiednie wartości, dlatego wystarczy określić tylko wymagane parametry. Dowiedz się więcej na temat tworzenia maszyn wirtualnych i zarządzania nimi za pomocą programu Azure PowerShell w module Automatyzowanie zadań platformy Azure przy użyciu skryptów za pomocą programu PowerShell.

Aby uzyskać więcej informacji na temat tworzenia maszyn wirtualnych przy użyciu programu PowerShell, zobacz Szybki start: tworzenie maszyny wirtualnej z systemem Linux przy użyciu programu PowerShell.

Terraform

Platforma Azure ma również dostawcę narzędzia Terraform, dzięki czemu można łatwo użyć narzędzia Terraform do tworzenia maszyn wirtualnych i zarządzania nimi. Narzędzie Terraform umożliwia definiowanie, wyświetlanie wersji zapoznawczej i wdrażanie infrastruktury chmury. Za pomocą narzędzia Terraform tworzysz pliki konfiguracji przy użyciu składni HCL. Składnia listy HCL umożliwia określenie dostawcy chmury — takiego jak platforma Azure — oraz elementów tworzących infrastrukturę chmury. Po utworzeniu plików konfiguracji utworzysz plan wykonywania, który umożliwia wyświetlenie podglądu zmian infrastruktury przed ich wdrożeniem. Po zweryfikowaniu zmian należy zastosować plan wykonywania w celu wdrożenia infrastruktury.

Aby uzyskać więcej informacji, zobacz Artykuł Azure Terraform Provider and Quickstart: Use Terraform to create a VM (Dostawca programu Terraform i szybki start: tworzenie maszyny wirtualnej przy użyciu narzędzia Terraform).

Rozwiązania programowe (interfejsy API)

Mówiąc ogólnie, program Azure PowerShell i interfejs wiersza polecenia platformy Azure to dobre rozwiązania, jeśli masz proste skrypty do uruchamiania i chcesz nadal korzystać z narzędzi wiersza polecenia. Jeśli chodzi o bardziej złożone scenariusze, w których tworzenie maszyn wirtualnych i zarządzanie nimi stanowią część większej aplikacji ze złożoną logiką, potrzebne jest inne podejście.

Z każdym typem zasobu na platformie Azure można współdziałać programowo.

Interfejs API REST platformy Azure

Interfejs API REST platformy Azure udostępnia deweloperom operacje podzielone na kategorie według zasobów oraz możliwość tworzenia maszyn wirtualnych i zarządzania nimi. Operacje są uwidaczniane jako identyfikatory URI przy użyciu odpowiednich metod HTTP (GET, PUT, POST, DELETE i PATCH) i odpowiedniej odpowiedzi.

Interfejsy API usługi Azure Compute umożliwiają programowy dostęp do maszyn wirtualnych i ich zasobów pomocniczych.

Aby uzyskać więcej informacji, zobacz Dokumentację interfejsu API REST usługi Virtual Machines.

Zestaw SDK klienta platformy Azure

Mimo że interfejs API REST jest niezależny od platformy i języka, najczęściej deweloperzy patrzą na wyższy poziom abstrakcji. Zestaw SDK klienta platformy Azure hermetyzuje interfejs API REST platformy Azure, co znacznie ułatwia deweloperom interakcję z tą platformą.

Zestawy SDK klienta platformy Azure są dostępne dla różnych języków i struktur, w tym . Języki oparte na platformie NET, takie jak C#, Java, Node.js, PHP, Python, Ruby i Go.

Oto przykładowy fragment kodu języka C#, który umożliwia utworzenie maszyny wirtualnej platformy Azure przy użyciu Microsoft.Azure.Management.Fluent pakietu NuGet.

var azure = Azure
    .Configure()
    .WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic)
    .Authenticate(credentials)
    .WithDefaultSubscription();
// ...
var vmName = "test-wp1-eus-vm";

azure.VirtualMachines.Define(vmName)
    .WithRegion(Region.USEast)
    .WithExistingResourceGroup("TestResourceGroup")
    .WithExistingPrimaryNetworkInterface(networkInterface)
    .WithLatestWindowsImage("MicrosoftWindowsServer", "WindowsServer", "2012-R2-Datacenter")
    .WithAdminUsername("jonc")
    .WithAdminPassword("aReallyGoodPasswordHere")
    .WithComputerName(vmName)
    .WithSize(VirtualMachineSizeTypes.StandardDS1)
    .Create();

Oto ten sam fragment kodu w języku Java przy użyciu zestawu Azure Java SDK.

String vmName = "test-wp1-eus-vm";
// ...
VirtualMachine virtualMachine = azure.virtualMachines()
    .define(vmName)
    .withRegion(Region.US_EAST)
    .withExistingResourceGroup("TestResourceGroup")
    .withExistingPrimaryNetworkInterface(networkInterface)
    .withLatestWindowsImage("MicrosoftWindowsServer", "WindowsServer", "2012-R2-Datacenter")
    .withAdminUsername("jonc")
    .withAdminPassword("aReallyGoodPasswordHere")
    .withComputerName(vmName)
    .withSize("Standard_DS1")
    .create();

Rozszerzenia maszyn wirtualnych platformy Azure

Załóżmy, że chcesz skonfigurować i zainstalować więcej oprogramowania na maszynie wirtualnej po początkowym wdrożeniu. W tym zadaniu chcesz użyć określonej konfiguracji: monitorowanej i wykonywanej automatycznie.

Rozszerzenia maszyn wirtualnych platformy Azure to małe aplikacje, które umożliwiają konfigurowanie i automatyzowanie zadań na maszynach wirtualnych platformy Azure po początkowym wdrożeniu.

Aby uzyskać więcej informacji, zobacz Rozszerzenia i funkcje maszyn wirtualnych platformy Azure.

Usługi Azure Automation

Oszczędność czasu, zmniejszenie liczby błędów i zwiększenie efektywności to niektóre najważniejsze wyzwania związane z zarządzaniem operacyjnym, którym trzeba stawiać czoła w ramach zarządzania infrastrukturą zdalną. Jeśli masz wiele usług infrastruktury, warto rozważyć użycie usług wyższego poziomu na platformie Azure, aby ułatwić działanie z wyższego poziomu.

Usługa Azure Automation umożliwia łatwe integrowanie usług, które umożliwiają automatyzowanie częstych, czasochłonnych i podatnych na błędy zadań zarządzania. Usługi te obejmują automatyzację procesów, zarządzanie konfiguracją i zarządzanie aktualizacjami.

  • Automatyzacja procesów. Załóżmy, że masz maszynę wirtualną, która jest monitorowana pod kątem określonego zdarzenia błędu. Chcesz podjąć działania i rozwiązać problem natychmiast po jego zgłoszeniu. Automatyzacja procesów umożliwia skonfigurowanie zadań obserwatora, które mogą reagować na zdarzenia, które mogą wystąpić w centrum danych.

  • Zarządzanie konfiguracją. Być może chcesz śledzić aktualizacje oprogramowania, które stają się dostępne dla systemu operacyjnego działającego na maszynie wirtualnej. Istnieją określone aktualizacje, które możesz uwzględnić lub wykluczyć. Zarządzanie konfiguracją umożliwia śledzenie tych aktualizacji i podejmowanie działań zgodnie z potrzebami. Do zarządzania firmowymi komputerami, serwerami i urządzeniami przenośnymi służy program Microsoft Endpoint Configuration Manager. Tę obsługę można rozszerzyć na maszyny wirtualne platformy Azure przy użyciu programu Configuration Manager.

  • Zarządzanie aktualizacjami. Ta usługa służy do zarządzania aktualizacjami i poprawkami dla maszyn wirtualnych. Przy jej użyciu można ocenić stan dostępnych aktualizacji, zaplanować instalację i przejrzeć wyniki wdrażania, aby sprawdzić, czy aktualizacje zostały zastosowane pomyślnie. Zarządzanie aktualizacjami obejmuje usługi, które oferują możliwości zarządzania procesami i konfiguracją. Zarządzanie aktualizacjami dla maszyn wirtualnych jest włączane bezpośrednio z poziomu konta usługi Azure Automation. Możesz również włączyć zarządzanie aktualizacjami dla jednej maszyny wirtualnej z poziomu okienka maszyny wirtualnej w portalu.

Automatyczne zamykanie

Automatyczne zamykanie to funkcja na platformie Azure, która umożliwia automatyczne zamykanie maszyn wirtualnych zgodnie z harmonogramem. Użyj automatycznego zamykania, aby zaoszczędzić koszty, upewniając się, że maszyny wirtualne nie są uruchomione, gdy nie są potrzebne. Można ustawić harmonogram automatycznego zamykania codziennie lub co tydzień, a także określić strefę czasową harmonogramu.

Aby przejść do funkcji automatycznego zamykania maszyny wirtualnej w witrynie Azure Portal, przejdź do bloku maszyny wirtualnej w portalu, kliknij pozycję "Automatyczne zamykanie" w sekcji "Operacje", a następnie skonfiguruj ustawienia automatycznego zamykania zgodnie z preferencjami.

Screenshot showing Auto-shutdown option for a VM.

Aby uzyskać więcej informacji, zobacz Automatyczne zamykanie.

Jak widać, platforma Azure udostępnia różne narzędzia do tworzenia i administrowania zasobami, dzięki czemu można zintegrować operacje zarządzania z procesem , który działa dla Ciebie. Przeanalizujmy niektóre z innych usług platformy Azure, aby upewnić się, że zasoby infrastruktury działają bez problemów.