Övning – Skapa webbplatser
I den här övningen skapar du ett par virtuella datorer bakom en intern lastbalanserare och installerar webbappen för fordonsregistrering. Du kan också konfigurera ett virtuellt nätverk med en privat slutpunkt som Front Door kan använda för att ansluta till de virtuella datorerna privat. Slutligen distribuerar du webbplatsen för licensförnyelse till en instans av Azure App Service och upprättar även privat anslutning med Front Door.
Skapa virtuella datorer och distribuera webbplatsen för fordonsregistrering
Öppna Azure Cloud Shell i webbläsaren och logga in på katalogen med åtkomst till den prenumeration som du vill skapa resurser i.
Kör följande kommando i Cloud Shell för att skapa en variabel för att lagra resursgruppens namn och en resursgrupp för dina resurser. Ersätt
<resource group name>
med ett namn för din resursgrupp och<location>
med den Azure-region som du vill distribuera dina resurser i.Kommentar
Om du behöver hitta platsnamnet kan du använda följande kommando: az account list-locations -o table
RG=<resource group name> az group create --name $RG --location <location>
I Cloud Shell-fönstret till höger kör du följande kommando. Det här kommandot använder Azure-kommandoradsgränssnittet för att skapa ett virtuellt nätverk som heter
vehicleappvnet
. Det är ett privat nätverk som tillhandahåller adresser i adressintervallet 10.0.0.0 till 10.0.255.255. Kommandot skapar även ett undernät som heterwebServerSubnet
med adressintervallet 10.0.1.0 till 10.0.1.255. Det här undernätet innehåller de virtuella datorerna.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
Du laddar ned skriptet som skapar de virtuella datorerna med följande kommando.
git clone https://github.com/MicrosoftDocs/mslearn-load-balance-web-traffic-with-application-gateway module-files
Skapa en nätverkssäkerhetsgrupp (NSG) och NSG-regel som ska tillämpas på webbservrarna när de skapas.
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
Kör följande kommandon för att skapa och konfigurera de virtuella datorerna för webbservrarna. De virtuella datorerna heter
webServer1
ochwebServer2
. Varje virtuell dator kör Ubuntu Server. Ett administrativt användarkonto skapas för varje virtuell dator med användarnamnetazureuser
. Varje virtuell dator har webbappen för fordonsregistrering installerad.Det första kommandot körs asynkront så att båda de virtuella datorerna kan skapas samtidigt.
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
Bekräfta att båda de virtuella datorerna skapades med följande kommando.
az vm list \ --resource-group $RG \ --show-details \ --output table
Du bör se utdata som liknar följande. Se till att PowerState är Virtuell dator körs för båda de virtuella datorerna innan du fortsätter.
Name ResourceGroup PowerState PublicIps Fqdns Location Zones ------------ ----------------- ------------ ----------- ------- -------------- ------- webServer1 MyResourceGroup VM running southcentralus webServer2 MyResourceGroup VM running southcentralus
Skapa en intern lastbalanserare och lägg till virtuella datorer i serverdelspoolen
Kör följande kommando för att skapa en intern lastbalanserareresurs.
az network lb create \ --resource-group $RG \ --name webServerILB \ --sku standard \ --vnet-name vehicleAppVnet \ --subnet webServerSubnet \ --frontend-ip-name webServerIP \ --backend-pool-name webServerBackendPool
Kör följande kommando för att skapa en hälsoavsökning för att kontrollera tillgängligheten för varje virtuell datorinstans.
az network lb probe create \ --resource-group $RG \ --lb-name webServerILB \ --name webServerHealthProbe \ --protocol tcp \ --port 80
Kör följande kommando för att skapa en belastningsutjämningsregel för att distribuera trafik till webbservrarna.
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
Om du vill lägga till båda webbservrarna i serverdelspoolen för den interna lastbalanseraren kör du följande kommandon.
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
Skapa en privat länktjänst och en privat slutpunkt
Tjänsten private link krävs för att upprätta privat kommunikation mellan Front Door och ursprungsresurserna. En privat slutpunkt är vad Front Door upprättar en anslutning med för att uppnå en intern anslutning via Microsoft-nätverket.
Om du vill skapa en privat länktjänst och associera den med den interna lastbalanseraren kör du följande kommandon. Det första kommandot inaktiverar en nätverksprincip för privat länk i undernätet så att tjänsten private link kan skapas.
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
Kör följande kommandon för att skapa den privata slutpunkten i ett virtuellt nätverk. Begäranden om att upprätta anslutning till den här privata slutpunkten godkänns automatiskt.
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
Nu har du skapat de virtuella datorer som kör webbappen för fordonsregistrering. Båda de virtuella datorerna är identiska och ingår i samma virtuella nätverk. Du har också konfigurerat en privat länktjänst och en privat slutpunkt för åtkomst till de virtuella datorerna bakom en intern lastbalanserare.
Skapa App Service och distribuera webbplatsen för licensförnyelse
Börja genom att köra följande kommando för att generera ett unikt namn för webbplatsen.
APPSERVICE="licenserenewal$RANDOM"
Kör sedan följande kommando för att skapa en App Service-plan som webbappen ska använda.
az appservice plan create \ --resource-group $RG \ --name vehicleAppServicePlan \ --location eastus \ --sku FREE
Slutligen skapar du webbappen och distribuerar webbplatsen för licensförnyelse.
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
Nu ska vi titta närmare på hur du konfigurerar Front Door.