Cvičení – vytváření webů

Dokončeno

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 licencí nasadíte do instance služby Azure App Service a také vytvoříte privátní připojení ke službě Front Door.

Vytvoření virtuálních počítačů a nasazení lokality registrace vozidel

  1. 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ém chcete vytvářet prostředky.

  2. 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 vaše 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 následující příkaz: az account list-locations -o table

    RG=<resource group name>
    az group create --name $RG --location <location>
    
  3. V okně Cloud Shellu napravo spusťte následující příkaz. Tento příkaz používá rozhraní příkazového řádku Azure k vytvoření virtuální sítě s názvem vehicleappvnet. Jedná se o privátní síť, která poskytuje adresy v rozsahu 10.0.0.0 až 10.0.255.255. Příkaz také vytvoří podsíť s názvem webServerSubnets 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
    
  4. Pokud chcete stáhnout skript, který vytvoří virtuální počítače, spusťte následující příkaz.

    git clone https://github.com/MicrosoftDocs/mslearn-load-balance-web-traffic-with-application-gateway module-files
    
  5. 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
    
  6. Pokud chcete vytvořit a nakonfigurovat virtuální počítače pro webové servery, spusťte následující příkazy. Virtuální počítače se nazývají webServer1 a webServer2. Na každém virtuálním počítači běží Ubuntu Server. Pro každý virtuální počítač se vytvoří uživatelský účet správce s uživatelským jménem azureuser. 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 vytvářet 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
    
  7. Pokud chcete ověřit úspěšné vytvoření obou virtuálních počítačů, spusťte následující příkaz.

    az vm list \
        --resource-group $RG \
        --show-details \
        --output table
    

    Měl by se zobrazit výstup podobný následujícímu. Než budete pokračovat, ujistěte se, že PowerState je virtuální počítač, na kterém běží pro oba virtuální počítače.

    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

  1. Pokud chcete vytvořit interní prostředek 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
    
  2. 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
    
  3. 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
    
  4. 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
    

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, ke kterému služba Front Door vytvoří spojení pro interní připojení prostřednictvím sítě Microsoftu.

  1. 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
    
  2. 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
    

Teď 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 licencí

  1. Začněte tak, že spuštěním následujícího příkazu vygenerujete jedinečný název webu.

    APPSERVICE="licenserenewal$RANDOM"
    
  2. 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
    
  3. Nakonec vytvořte webovou aplikaci a nasaďte web pro prodloužení platnosti licence.

    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.