Cvičení – vytváření webů
V tomto cvičení vytvoříte dvojici virtuálních počítačů za interním nástrojem pro vyrovnávání zatížení a nainstalujete webovou aplikaci pro registraci vozidel. Také nakonfigurujete virtuální síť s privátním koncovým bodem, který může služba Front Door použít k privátnímu připojení k virtuálním počítačům. Nakonec web pro prodloužení platnosti licence nasadíte do instance služby Aplikace Azure Service a také vytvoříte privátní připojení ke službě Front Door.
Vytvoření virtuálních počítačů a nasazení webu pro registraci vozidel
Otevřete Azure Cloud Shell v prohlížeči a přihlaste se k adresáři s přístupem k předplatnému, ve které chcete vytvářet prostředky.
Spuštěním následujícího příkazu v Cloud Shellu vytvořte proměnnou pro uložení názvu skupiny prostředků a skupiny prostředků pro tyto prostředky. Nahraďte
<resource group name>
názvem vaší skupiny prostředků a<location>
oblastí Azure, do které chcete prostředky nasadit.Poznámka:
Pokud potřebujete najít název umístění, můžete použít tento příkaz: az account list-locations -o table
RG=<resource group name> az group create --name $RG --location <location>
Vpravo v okně Cloud Shellu spusťte následující příkaz. Tento příkaz pomocí rozhraní příkazového řádku Azure vytvoří virtuální síť s názvem
vehicleappvnet
. Je to privátní síť, která poskytuje adresy v rozsahu 10.0.0.0 až 10.0.255.255. Příkaz vytvoří také podsíť s názvemwebServerSubnet
, s rozsahem adres 10.0.1.0 až 10.0.1.255. Tato podsíť obsahuje virtuální počítače.az network vnet create \ --resource-group $RG \ --name vehicleAppVnet \ --address-prefixes 10.0.0.0/16 \ --subnet-name webServerSubnet \ --subnet-prefixes 10.0.1.0/24
Následujícím příkazem si stáhněte skript, který vytvoří virtuální počítače.
git clone https://github.com/MicrosoftDocs/mslearn-load-balance-web-traffic-with-application-gateway module-files
Vytvořte skupinu zabezpečení sítě (NSG) a pravidlo NSG, které se použije na webové servery během vytváření.
az network nsg create \ --resource-group $RG \ --name webNSG az network nsg rule create \ --resource-group $RG \ --nsg-name webNSG \ --name myNSGRuleHTTP \ --protocol '*' \ --direction inbound \ --source-address-prefix '*' \ --source-port-range '*' \ --destination-address-prefix '*' \ --destination-port-range 80 \ --access allow \ --priority 200
Spuštěním následujících příkazů vytvořte a nakonfigurujte virtuální počítače pro webové servery. Virtuální počítače mají názvy
webServer1
awebServer2
. Na každém z nich běží Ubuntu Server. Pro každý virtuální počítač se vytvoří uživatelský účet správce s uživatelským jménemazureuser
. Na každém virtuálním počítači je nainstalovaná webová aplikace pro registraci vozidel.První příkaz běží asynchronně, aby se oba virtuální počítače mohly vytvořit současně.
az vm create \ --resource-group $RG \ --name webServer1 \ --image Ubuntu2204 \ --admin-username azureuser \ --generate-ssh-keys \ --vnet-name vehicleAppVnet \ --subnet webServerSubnet \ --public-ip-address "" \ --nsg webNSG \ --custom-data module-files/scripts/vmconfig.sh \ --no-wait az vm create \ --resource-group $RG \ --name webServer2 \ --image Ubuntu2204 \ --admin-username azureuser \ --generate-ssh-keys \ --vnet-name vehicleAppVnet \ --subnet webServerSubnet \ --public-ip-address "" \ --nsg webNSG \ --custom-data module-files/scripts/vmconfig.sh
Spuštěním následujícího příkazu ověřte, že oba virtuální počítače byly úspěšně vytvořeny.
az vm list \ --resource-group $RG \ --show-details \ --output table
Zobrazený výstup by měl vypadat přibližně takto: Než budete pokračovat, musí být ve sloupci PowerState u obou virtuálních počítačů stav VM running.
Name ResourceGroup PowerState PublicIps Fqdns Location Zones ------------ ----------------- ------------ ----------- ------- -------------- ------- webServer1 MyResourceGroup VM running southcentralus webServer2 MyResourceGroup VM running southcentralus
Vytvoření interního nástroje pro vyrovnávání zatížení a přidání virtuálních počítačů do back-endového fondu
Pokud chcete vytvořit interní prostředek nástroje pro vyrovnávání zatížení, spusťte následující příkaz.
az network lb create \ --resource-group $RG \ --name webServerILB \ --sku standard \ --vnet-name vehicleAppVnet \ --subnet webServerSubnet \ --frontend-ip-name webServerIP \ --backend-pool-name webServerBackendPool
Pokud chcete vytvořit sondu stavu pro kontrolu dostupnosti jednotlivých instancí virtuálních počítačů, spusťte následující příkaz.
az network lb probe create \ --resource-group $RG \ --lb-name webServerILB \ --name webServerHealthProbe \ --protocol tcp \ --port 80
Pokud chcete vytvořit pravidlo vyrovnávání zatížení pro distribuci provozu na webové servery, spusťte následující příkaz.
az network lb rule create \ --resource-group $RG \ --lb-name webServerILB \ --name myHTTPRule \ --protocol tcp \ --frontend-port 80 \ --backend-port 80 \ --frontend-ip-name webServerIP \ --backend-pool-name webServerBackendPool \ --probe-name webServerHealthProbe \ --idle-timeout 15 \ --enable-tcp-reset true
Pokud chcete přidat oba webové servery do back-endového fondu interního nástroje pro vyrovnávání zatížení, spusťte následující příkazy.
az network nic ip-config address-pool add \ --address-pool webServerBackendPool \ --lb-name webServerILB \ --ip-config-name ipconfigwebServer1 \ --nic-name webServer1VMNic \ --resource-group $RG az network nic ip-config address-pool add \ --address-pool webServerBackendPool \ --lb-name webServerILB \ --ip-config-name ipconfigwebServer2 \ --nic-name webServer2VMNic \ --resource-group $RG
Vytvoření služby Private Link a privátního koncového bodu
Služba private link je nutná k navázání privátní komunikace mezi službou Front Door a zdroji prostředků. Privátní koncový bod je to, s čím služba Front Door vytvoří připojení k dosažení interního připojení přes síť Microsoftu.
Pokud chcete vytvořit službu privátního propojení a přidružit ji k internímu nástroji pro vyrovnávání zatížení, spusťte následující příkazy. První příkaz zakáže zásady sítě privátního propojení v podsíti, aby bylo možné službu privátního propojení vytvořit.
az network vnet subnet update \ --name webServerSubnet \ --resource-group $RG \ --vnet-name vehicleAppVnet \ --disable-private-link-service-network-policies true az network private-link-service create \ --resource-group $RG \ --name myPrivateLinkService \ --vnet-name vehicleAppVnet \ --subnet webServerSubnet \ --lb-name webServerILB \ --lb-frontend-ip-configs webServerIP
Pokud chcete vytvořit privátní koncový bod ve virtuální síti, spusťte následující příkazy. Žádosti o navázání připojení k tomuto privátnímu koncovému bodu se automaticky schválí.
export resourceid=$(az network private-link-service show \ --name myPrivateLinkService \ --resource-group $RG \ --query id \ --output tsv) az network private-endpoint create \ --connection-name myPEconnectiontoPLS \ --name myPrivateEndpoint \ --private-connection-resource-id $resourceid \ --resource-group $RG \ --subnet webServerSubnet \ --manual-request false \ --vnet-name vehicleAppVnet
Právě jste vytvořili virtuální počítače, na kterých běží webová aplikace pro registraci vozidel. Oba virtuální počítače jsou identické a jsou součástí stejné virtuální sítě. Také jste nastavili službu privátního propojení a privátní koncový bod pro přístup k virtuálním počítačům za interním nástrojem pro vyrovnávání zatížení.
Vytvoření služby App Service a nasazení webu pro prodloužení platnosti oprávnění
Začněte tím, že spuštěním následujícího příkazu vygenerujete jedinečný název webu.
APPSERVICE="licenserenewal$RANDOM"
V dalším kroku vytvořte plán služby App Service, který bude webová aplikace používat, spusťte následující příkaz.
az appservice plan create \ --resource-group $RG \ --name vehicleAppServicePlan \ --location eastus \ --sku FREE
Nakonec vytvořte webovou aplikaci a nasaďte web pro prodloužení platnosti oprávnění.
az webapp create \ --resource-group $RG \ --name $APPSERVICE \ --plan vehicleAppServicePlan \ --deployment-source-url https://github.com/MicrosoftDocs/mslearn-load-balance-web-traffic-with-application-gateway \ --deployment-source-branch appService
Teď se podrobněji podíváme na konfiguraci služby Front Door.