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 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

  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é 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 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>
    
  3. 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ázvem webServerSubnet, 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
    
  4. 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
    
  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. 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 a webServer2. 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é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 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
    
  7. 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

  1. 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
    
  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, s čím služba Front Door vytvoří připojení k dosažení interního připojení přes síť 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
    

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í

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