Szybki start: tworzenie zestawu skalowania maszyn wirtualnych przy użyciu interfejsu wiersza polecenia platformy Azure

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

Uwaga

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. Maszyny wirtualne w zestawie skalowania możesz skalować ręcznie lub możesz zdefiniować reguły skalowania automatycznego na podstawie użycia takich zasobów jak procesor CPU, zapotrzebowanie na pamięć lub ruch sieciowy. Moduł równoważenia obciążenia platformy Azure następnie dystrybuuje ruch do wystąpień maszyn wirtualnych w zestawie skalowania. W tym przewodniku Szybki start utworzysz zestaw skalowania maszyn wirtualnych i wdrożysz przykładową aplikację przy użyciu interfejsu wiersza polecenia platformy Azure.

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.

Wymagania wstępne

  • Ten artykuł wymaga wersji 2.0.29 lub nowszej interfejsu wiersza polecenia platformy Azure. W przypadku korzystania z usługi Azure Cloud Shell najnowsza wersja jest już zainstalowana.

Tworzenie zestawu skalowania

Ważne

Od listopada 2023 r. zestawy skalowania maszyn wirtualnych utworzone przy użyciu programu PowerShell i interfejsu wiersza polecenia platformy Azure będą domyślnie ustawiać tryb elastycznej orkiestracji, jeśli nie określono trybu aranżacji. Aby uzyskać więcej informacji na temat tej zmiany i akcji, które należy wykonać, zobacz Zmiana powodująca niezgodność dla klientów programu PowerShell/interfejsu wiersza polecenia usługi VMSS — Microsoft Community Hub

Zanim będzie można utworzyć zestaw skalowania, utwórz grupę zasobów za pomocą polecenia az group create. W poniższym przykładzie pokazano tworzenie grupy zasobów o nazwie myResourceGroup w lokalizacji eastus:

az group create --name myResourceGroup --location eastus

Teraz utwórz zestaw skalowania maszyn wirtualnych za pomocą polecenia az vmss create. Poniższy przykład tworzy zestaw skalowania o nazwie myScaleSet, który jest skonfigurowany do automatycznej aktualizacji w miarę stosowania zmian, a następnie generuje klucze SSH, jeśli nie istnieją, w lokalizacji ~/.ssh/id_rsa. Te klucze SSH są używane, jeśli musisz zalogować się do wystąpień maszyn wirtualnych. Aby użyć istniejącego zestawu kluczy SSH, zamiast tego użyj parametru --ssh-key-value i określ lokalizację swoich kluczy.

az vmss create \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --image <SKU image> \
  --upgrade-policy-mode automatic \
  --admin-username azureuser \
  --generate-ssh-keys

Utworzenie i skonfigurowanie wszystkich zasobów zestawu skalowania i maszyn wirtualnych trwa kilka minut.

Wdrażanie przykładowej aplikacji

Aby przetestować zestaw skalowania, należy zainstalować podstawową aplikację internetową. Niestandardowe rozszerzenie skryptu platformy Azure służy do pobierania i uruchamiania skryptu, który instaluje aplikację na wystąpieniach maszyn wirtualnych. To rozszerzenie jest przydatne w przypadku konfiguracji po wdrożeniu, instalowania oprogramowania lub każdego innego zadania związanego z konfiguracją lub zarządzaniem. Aby uzyskać więcej informacji, zobacz Omówienie niestandardowego rozszerzenia skryptu.

Użyj niestandardowego rozszerzenia skryptu, aby zainstalować podstawowy serwer internetowy NGINX. Zastosuj niestandardowe rozszerzenie skryptu, który instaluje NGINX, używając polecenia az vmss extension set w następujący sposób:

az vmss extension set \
  --publisher Microsoft.Azure.Extensions \
  --version 2.0 \
  --name CustomScript \
  --resource-group myResourceGroup \
  --vmss-name myScaleSet \
  --settings '{"fileUris":["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx.sh"],"commandToExecute":"./automate_nginx.sh"}'

Zezwalanie na ruch do aplikacji

Podczas tworzenia zestawu skalowania zostanie automatycznie wdrożony moduł równoważenia obciążenia platformy Azure. Moduł równoważenia obciążenia dystrybuuje ruch do wystąpień maszyn wirtualnych w zestawie skalowania. Aby umożliwić dotarcie ruchu do przykładowej aplikacji internetowej, utwórz regułę modułu równoważenia obciążenia za pomocą polecenia az network lb rule create. W poniższym przykładzie pokazano tworzenie reguły o nazwie myLoadBalancerRuleWeb:

az network lb rule create \
  --resource-group myResourceGroup \
  --name myLoadBalancerRuleWeb \
  --lb-name myScaleSetLB \
  --backend-pool-name myScaleSetLBBEPool \
  --backend-port 80 \
  --frontend-ip-name loadBalancerFrontEnd \
  --frontend-port 80 \
  --protocol tcp

Testowanie zestawu skalowania

Aby zapoznać się z działaniem zestawu skalowania, uzyskaj dostęp do przykładowej aplikacji internetowej w przeglądarce internetowej. Uzyskaj publiczny adres IP modułu równoważenia obciążenia za pomocą polecenia az network public-ip show. W poniższym przykładzie pokazano uzyskiwanie adresu IP dla modułu myScaleSetLBPublicIP utworzonego w ramach zestawu skalowania:

az network public-ip show \
  --resource-group myResourceGroup \
  --name myScaleSetLBPublicIP \
  --query '[ipAddress]' \
  --output tsv

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

Default web page in NGINX

Czyszczenie zasobów

Gdy grupa zasobów, zestaw skalowania i wszystkie pokrewne zasoby nie będą już potrzebne, można je usunąć za pomocą polecenia az group delete w następujący sposób. Parametr --no-wait zwraca kontrolę do wiersza polecenia bez oczekiwania na zakończenie operacji. Parametr --yes potwierdza, że chcesz usunąć zasoby bez wyświetlania dodatkowego monitu.

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

Następne kroki

W tym przewodniku Szybki start utworzyliśmy podstawowy zestaw skalowania i użyliśmy niestandardowego rozszerzenia skryptu w celu zainstalowania podstawowego serwera internetowego NGINX 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.