Udostępnij przez


Szybki start: Tworzenie zestawu skalowania maszyn wirtualnych z systemem Linux przy użyciu szablonu ARM

Dotyczy: ✔️ Maszyny wirtualne z systemem Linux ✔️ Jednolite zestawy skalowania

Uwaga / Notatka

Poniższy artykuł dotyczy ujednoliconych zestawów skalowania maszyn wirtualnych. Zalecamy używanie elastycznych zestawów skalowania maszyn wirtualnych dla nowych obciążeń. Dowiedz się więcej o tym nowym trybie aranżacji w naszym omówieniu elastycznych zestawów skalowania maszyn wirtualnych.

Zestaw skalowania maszyn wirtualnych umożliwia wdrażanie zestawu maszyn wirtualnych skalowania automatycznego i zarządzanie nim. Możesz ręcznie skalować liczbę maszyn wirtualnych w zestawie skalowania lub definiować reguły skalowania automatycznego na podstawie użycia zasobów, takich jak procesor CPU, zapotrzebowanie na pamięć lub ruch sieciowy. Równoważnik obciążenia Azure następnie dystrybuuje ruch do instancji maszyn wirtualnych w zbiorze skalowania. W tym przewodniku szybkiego startu tworzysz zestaw skalowania maszyn wirtualnych i wdrażasz przykładową aplikację przy użyciu szablonu Azure Resource Manager (szablonu ARM).

Szablon usługi Azure Resource Manager to plik JavaScript Object Notation (JSON), który definiuje infrastrukturę i konfigurację projektu. Szablon używa składni deklaratywnej. Możesz opisać zamierzone wdrożenie bez konieczności pisania sekwencji poleceń programowania w celu utworzenia wdrożenia.

Szablony usługi ARM umożliwiają wdrażanie grup powiązanych zasobów. W jednym szablonie można utworzyć zestaw skalowania maszyn wirtualnych, zainstalować aplikacje i skonfigurować reguły skalowania automatycznego. Przy użyciu zmiennych i parametrów tego szablonu można użyć ponownie, aby zaktualizować istniejące lub utworzyć dodatkowe zestawy skalowania. Szablony można wdrażać za pośrednictwem witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell bądź z poziomu potoków ciągłej integracji/ciągłego dostarczania (CI/CD).

Jeśli środowisko spełnia wymagania i znasz szablony ARM, wybierz przycisk Wdróż na platformie Azure. Szablon zostanie otwarty w witrynie Azure Portal.

Przycisk wdrażania szablonu usługi Resource Manager na platformie Azure.

Wymagania wstępne

Jeśli nie masz subskrypcji Azure, przed rozpoczęciem utwórz darmowe konto.

Przegląd szablonu

Szablon użyty w tym szybkim starcie pochodzi z szablonów szybkiego startu platformy Azure.

Te zasoby są zdefiniowane w szablonie:

Definiowanie zestawu skalowania

Aby utworzyć skalę przy użyciu szablonu, zdefiniujesz odpowiednie zasoby. Podstawowe części typu zasobu Zestaw skalowania maszyn wirtualnych to:

Majątek Opis właściwości Przykładowa wartość szablonu
typ Typ zasobu platformy Azure do utworzenia Microsoft.Compute/virtualMachineScaleSets
nazwa Nazwa zestawu skalowania myScaleSet
lokalizacja Lokalizacja tworzenia zestawu skalowania Wschodnie stany USA
sku.name Rozmiar maszyny wirtualnej dla każdego wystąpienia zestawu skalowania Standard_A1
sku.pojemność Liczba instancji maszyn wirtualnych do początkowego utworzenia 2
upgradePolicy.mode Tryb uaktualniania wystąpienia maszyny wirtualnej w przypadku zmiany Automatyczne
imageReference Platforma lub obraz niestandardowy do użycia dla wystąpień maszyn wirtualnych Canonical Ubuntu Server 16.04-LTS
osProfile.computerNamePrefix Prefiks nazwy dla każdego wystąpienia maszyny wirtualnej myvmss
osProfile.adminUsername Nazwa użytkownika dla każdej instancji maszyny wirtualnej azureuser
osProfile.adminPassword Hasło dla każdej instancji VM P@ssw0rd!

Aby dostosować szablon zestawu skalowania, możesz zmienić rozmiar maszyny wirtualnej lub pojemność początkową. Inną opcją jest użycie innej platformy lub obrazu niestandardowego.

Dodawanie przykładowej aplikacji

Aby przetestować zestaw skalowania, zainstaluj podstawową aplikację internetową. Podczas wdrażania zestawu skalowalności rozszerzenia maszyn wirtualnych mogą udostępniać zadania konfiguracyjne i automatyzacyjne po wdrożeniu, takie jak instalowanie aplikacji. Skrypty można pobrać z usługi Azure Storage lub GitHub albo udostępnić w witrynie Azure Portal w czasie wykonywania rozszerzenia. Aby zastosować rozszerzenie do zestawu skalowania, należy dodać sekcję extensionProfile do poprzedniego przykładu zasobu. Profil rozszerzenia zwykle definiuje następujące właściwości:

  • Typ rozszerzenia
  • Wydawca rozszerzeń
  • Wersja rozszerzenia
  • Lokalizacja konfiguracji lub skryptów instalacji
  • Polecenia do wykonania w instancjach maszyn wirtualnych

Szablon używa rozszerzenia niestandardowego skryptu do zainstalowania platformy Bottle, struktury internetowej języka Python i prostego serwera HTTP.

Dwa skrypty są definiowane winstallserver.sh - i workserver.py. Te pliki są pobierane z usługi GitHub, a następnie polecenieToExecute uruchamia bash installserver.sh w celu zainstalowania i skonfigurowania aplikacji.

Wdrażanie szablonu

Szablon można wdrożyć, wybierając następujący przycisk Wdróż na platformie Azure . Ten przycisk otwiera witrynę Azure Portal, ładuje kompletny szablon i wyświetla monit o podanie kilku parametrów, takich jak nazwa zestawu skalowania, liczba wystąpień i poświadczenia administratora.

Przycisk wdrażania szablonu usługi Resource Manager na platformie Azure.

Szablon usługi Resource Manager można również wdrożyć przy użyciu interfejsu wiersza polecenia platformy Azure:

# Create a resource group
az group create --name myResourceGroup --location EastUS

# Deploy template into resource group
az deployment group create \
    --resource-group myResourceGroup \
    --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/application-workloads/python/vmss-bottle-autoscale/azuredeploy.json

Odpowiedz na komunikaty, aby podać nazwę zestawu skalowania, liczbę wystąpień i poświadczenia administratora dla wystąpień maszyn wirtualnych. Utworzenie zestawu skalowania i zasobów pomocniczych trwa kilka minut.

Weryfikowanie wdrożenia

Aby zobaczyć, jak działa zestaw skalowania, uzyskaj dostęp do przykładowej aplikacji internetowej w przeglądarce internetowej. Uzyskaj publiczny adres IP modułu równoważenia obciążenia poprzez użycie polecenia az network public-ip list, wykonując następujące kroki:

az network public-ip list \
    --resource-group myResourceGroup \
    --query [*].ipAddress -o tsv

Wprowadź publiczny adres IP modułu równoważenia obciążenia w przeglądarce internetowej w formacie http://publicIpAddress:9000/do_work. Moduł równoważenia obciążenia dystrybuuje ruch do jednego z wystąpień maszyn wirtualnych, jak pokazano w poniższym przykładzie:

Domyślna strona internetowa w NGINX

Uprzątnij zasoby

Po tym, jak grupa zasobów, zestaw skalowania i wszystkie powiązane zasoby nie będą już potrzebne, możesz je usunąć, używając polecenia az group delete. Parametr --no-wait zwraca kontrolę do wiersza polecenia bez oczekiwania na zakończenie operacji. Parametr --yes potwierdza, że chcesz usunąć zasoby bez dodatkowego monitu, aby to zrobić.

az group delete --name myResourceGroup --yes --no-wait

Dalsze kroki

W tym przewodniku szybkiego startu utworzono zestaw skalowania Linux z szablonem ARM i użyto rozszerzenia skryptu niestandardowego do zainstalowania podstawowego serwera internetowego Python na wystąpieniach maszyn wirtualnych. Aby dowiedzieć się więcej, przejdź do samouczka dotyczącego tworzenia zestawów skalowania maszyn wirtualnych platformy Azure i zarządzania nimi.