Creare un gateway applicazione con l'hosting di più siti usando il portale di AzureCreate an application gateway with multiple site hosting using the Azure portal

È possibile usare il portale di Azure per configurare l'hosting di più siti Web quando si crea un gateway applicazione.You can use the Azure portal to configure hosting of multiple web sites when you create an application gateway. In questa esercitazione si creano pool back-end usando set di scalabilità di macchine virtuali,In this tutorial, you create backend pools using virtual machines scale sets. e quindi si configurano i listener e le regole in base ai domini di cui si è proprietari per assicurarsi che il traffico Web raggiunga i server appropriati nei pool.You then configure listeners and rules based on domains that you own to make sure web traffic arrives at the appropriate servers in the pools. Questa esercitazione presuppone che l'utente sia proprietario di più domini e che usi gli esempi di www.contoso.com e www.fabrikam.com.This tutorial assumes that you own multiple domains and uses examples of www.contoso.com and www.fabrikam.com.

In questo articolo viene spiegato come:In this article, you learn how to:

  • Creare un gateway applicazioneCreate an application gateway
  • Creare macchine virtuali per i server back-endCreate virtual machines for backend servers
  • Creare pool back-end con i server back-endCreate backend pools with the backend servers
  • Creare i listener e le regole di routingCreate listeners and routing rules
  • Creare un record CNAME nel dominioCreate a CNAME record in your domain

Esempio di routing multisito

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.If you don't have an Azure subscription, create a free account before you begin.

Accedere ad AzureLog in to Azure

Accedere al portale di Azure all'indirizzo http://portal.azure.comLog in to the Azure portal at http://portal.azure.com

Creare un gateway applicazioneCreate an application gateway

Per le comunicazioni tra le risorse create è necessaria una rete virtuale.A virtual network is needed for communication between the resources that you create. In questo esempio vengono create due subnet: una per il gateway applicazione e l'altra per i server back-end.Two subnets are created in this example: one for the application gateway, and the other for the backend servers. È possibile creare una rete virtuale durante la creazione del gateway applicazione.You can create a virtual network at the same time that you create the application gateway.

  1. Fare clic su Nuovo nell'angolo in alto a sinistra nel portale di Azure.Click New found on the upper left-hand corner of the Azure portal.
  2. Selezionare Rete e quindi Gateway applicazione nell'elenco In primo piano.Select Networking and then select Application Gateway in the Featured list.
  3. Immettere i valori seguenti per il gateway applicazione:Enter these values for the application gateway:

    • myAppGateway come nome del gateway applicazione.myAppGateway - for the name of the application gateway.
    • myResourceGroupAG come nuovo gruppo di risorse.myResourceGroupAG - for the new resource group.

      Creare il nuovo gateway applicazione

  4. Accettare i valori predefiniti per le altre impostazioni e quindi fare clic su OK.Accept the default values for the other settings and then click OK.

  5. Fare clic su Scegliere una rete virtuale, Crea nuova e quindi immettere i valori seguenti per la rete virtuale:Click Choose a virtual network, click Create new, and then enter these values for the virtual network:

    • myVNet come nome della rete virtuale.myVNet - for the name of the virtual network.
    • 10.0.0.0/16 come spazio indirizzi della rete virtuale.10.0.0.0/16 - for the virtual network address space.
    • myAGSubnet come nome della subnet.myAGSubnet - for the subnet name.
    • 10.0.0.0/24 come spazio indirizzi della subnet.10.0.0.0/24 - for the subnet address space.

      Creare una rete virtuale

  6. Fare clic su OK per creare la rete virtuale e la subnet.Click OK to create the virtual network and subnet.

  7. Fare clic su Scegliere un indirizzo IP pubblico, Crea nuovo e quindi immettere il nome dell'indirizzo IP pubblico.Click Choose a public IP address, click Create new, and then enter the name of the public IP address. In questo esempio il nome dell'indirizzo IP pubblico è myAGPublicIPAddress.In this example, the public IP address is named myAGPublicIPAddress. Accettare i valori predefiniti per le altre impostazioni e quindi fare clic su OK.Accept the default values for the other settings and then click OK.
  8. Accettare i valori predefiniti per la configurazione del listener, lasciare disabilitato il web application firewall e quindi fare clic su OK.Accept the default values for the Listener configuration, leave the Web application firewall disabled, and then click OK.
  9. Rivedere le impostazioni nella pagina di riepilogo e quindi fare clic su OK per creare le risorse di rete e il gateway applicazione.Review the settings on the summary page, and then click OK to create the network resources and the application gateway. La creazione del gateway applicazione potrebbe richiedere alcuni minuti. Attendere il completamento della distribuzione prima di passare alla sezione successiva.It may take several minutes for the application gateway to be created, wait until the deployment finishes successfully before moving on to the next section.

Aggiungere una subnetAdd a subnet

  1. Fare clic su Tutte le risorse nel menu a sinistra e quindi su myVNet nell'elenco delle risorse.Click All resources in the left-hand menu, and then click myVNet from the resources list.
  2. Fare clic su Subnet e quindi su Subnet.Click Subnets, and then click Subnet.

    Creare una subnet

  3. Immettere myBackendSubnet come nome della subnet e quindi fare clic su OK.Enter myBackendSubnet for the name of the subnet and then click OK.

Creare macchine virtualiCreate virtual machines

In questo esempio vengono create due macchine virtuali da usare come server back-end per il gateway applicazione.In this example, you create two virtual machines to be used as backend servers for the application gateway. Viene anche installato IIS nelle macchine virtuali per verificare che il traffico venga instradato correttamente.You also install IIS on the virtual machines to verify that traffic is routing correctly.

  1. Fare clic su Nuovo.Click New.
  2. Fare clic su Calcolo e quindi selezionare Windows Server 2016 Datacenter nell'elenco In primo piano.Click Compute and then select Windows Server 2016 Datacenter in the Featured list.
  3. Immettere i valori seguenti per la macchina virtuale:Enter these values for the virtual machine:

    • contosoVM come nome della macchina virtuale.contosoVM - for the name of the virtual machine.
    • azureuser come nome utente dell'amministratore.azureuser - for the administrator user name.
    • Azure123456!Azure123456! come password.for the password.
    • Selezionare Usa esistente e quindi myResourceGroupAG.Select Use existing, and then select myResourceGroupAG.
  4. Fare clic su OK.Click OK.

  5. Selezionare DS1_V2 come dimensioni per la macchina virtuale e fare clic su Seleziona.Select DS1_V2 for the size of the virtual machine, and click Select.
  6. Assicurarsi che myVNet sia selezionato per la rete virtuale e che la subnet sia myBackendSubnet.Make sure that myVNet is selected for the virtual network and the subnet is myBackendSubnet.
  7. Fare clic su Disabilitato per disabilitare la diagnostica di avvio.Click Disabled to disable boot diagnostics.
  8. Fare clic su OK, verificare le impostazioni nella pagina di riepilogo e quindi fare clic su Crea.Click OK, review the settings on the summary page, and then click Create.

Installare IISInstall IIS

  1. Aprire la shell interattiva e assicurarsi che sia impostata su PowerShell.Open the interactive shell and make sure that it is set to PowerShell.

    Installare l'estensione personalizzata

  2. Eseguire questo comando per installare IIS nella macchina virtuale:Run the following command to install IIS on the virtual machine:

    $publicSettings = @{ "fileUris" = (,"https://raw.githubusercontent.com/davidmu1/samplescripts/master/appgatewayurl.ps1");  "commandToExecute" = "powershell -ExecutionPolicy Unrestricted -File appgatewayurl.ps1" }
    Set-AzureRmVMExtension `
      -ResourceGroupName myResourceGroupAG `
      -Location eastus `
      -ExtensionName IIS `
      -VMName contosoVM `
      -Publisher Microsoft.Compute `
      -ExtensionType CustomScriptExtension `
      -TypeHandlerVersion 1.4 `
      -Settings $publicSettings
    
  3. Creare la seconda macchina virtuale e installare IIS seguendo la procedura appena completata.Create the second virtual machine and install IIS using the steps that you just finished. Immettere fabrikamVM come nome e valore di VMName in Set-AzureRmVMExtension.Enter the names of fabrikamVM for the name and for the value of VMName in Set-AzureRmVMExtension.

Creare pool back-end con le macchine virtualiCreate backend pools with the virtual machines

  1. Fare clic su Tutte le risorse e quindi su myAppGateway.Click All resources and then click myAppGateway.
  2. Fare clic su Pool back-end e quindi su Aggiungi.Click Backend pools, and then click Add.
  3. Immettere un nome per contosoPool e aggiungere contosoVM usando Aggiungi destinazione.Enter a name of contosoPool and add contosoVM using Add target.

    Aggiungere i server back-end

  4. Fare clic su OK.Click OK.

  5. Fare clic su Pool back-end e quindi su Aggiungi.Click Backend pools and then click Add.
  6. Creare fabrikamPool con fabrikamVM seguendo i passaggi appena completati.Create the fabrikamPool with the fabrikamVM using the steps that you just finished.

Creare i listener e le regole di routingCreate listeners and routing rules

  1. Fare clic su Listener e quindi su Multisito.Click Listeners and then click Multi-site.
  2. Immettere i valori seguenti per il listener:Enter these values for the listener:

    • contosoListener: per il nome del listener.contosoListener - for the name of the listener.
    • www.contoso.com: sostituire questo esempio di nome host con il proprio nome di dominio.www.contoso.com - replace this host name example with your domain name.
  3. Fare clic su OK.Click OK.

  4. Creare un secondo listener usando il nome fabrikamListener e usare il secondo nome di dominio.Create a second listener using the name of fabrikamListener and use your second domain name. In questo esempio viene usato www.fabrikam.com.In this example, www.fabrikam.com is used.

Le regole vengono elaborate nell'ordine in cui sono elencate e il traffico viene indirizzato usando la prima regola corrispondente indipendentemente dalla specificità.Rules are processed in the order they are listed, and traffic is directed using the first rule that matches regardless of specificity. Se ad esempio si dispone di due regole, una che usa un listener di base e una che usa un listener multisito, entrambe sulla stessa porta, la regola con il listener multisito deve essere elencata prima della regola con il listener di base per funzionare come previsto.For example, if you have a rule using a basic listener and a rule using a multi-site listener both on the same port, the rule with the multi-site listener must be listed before the rule with the basic listener in order for the multi-site rule to function as expected.

In questo esempio si creano due nuove regole e si elimina la regola predefinita che è stata creata al momento della creazione del gateway applicazione.In this example, you create two new rules and delete the default rule that was created when you created the application gateway.

  1. Fare clic su Regole e quindi su Base.Click Rules and then click Basic.
  2. Immettere contosoRule come nome.Enter contosoRule for the name.
  3. Selezionare contosoListener come listener.Select contosoListener for the listener.
  4. Selezionare contosoPool come pool back-end.Select contosoPool for the backend pool.

    Creare una regola basata sul percorso

  5. Fare clic su OK.Click OK.

  6. Creare una seconda regola usando i nomi fabrikamRule, fabrikamListener e fabrikamPool.Create a second rule using the names of fabrikamRule, fabrikamListener, and fabrikamPool.
  7. Eliminare la regola predefinita denominata rule1 facendo clic su di essa e quindi su Elimina.Delete the default rule named rule1 by clicking it, and then clicking Delete.

Creare un record CNAME nel dominioCreate a CNAME record in your domain

Dopo aver creato il gateway applicazione con l'indirizzo IP pubblico, è possibile ottenere l'indirizzo DNS e usarlo per creare un record CNAME nel dominio.After the application gateway is created with its public IP address, you can get the DNS address and use it to create a CNAME record in your domain. Non è consigliabile usare record A perché l'indirizzo VIP può cambiare quando il gateway applicazione viene riavviato.The use of A-records is not recommended because the VIP may change when the application gateway is restarted.

  1. Fare clic su Tutte le risorse e quindi su myAGPublicIPAddress.Click All resources, and then click myAGPublicIPAddress.

    Registrare l'indirizzo DNS del gateway applicazione

  2. Copiare l'indirizzo DNS e usarlo come valore per un nuovo record CNAME nel dominio.Copy the DNS address and use it as the value for a new CNAME record in your domain.

Testare il gateway applicazioneTest the application gateway

  1. Immettere il nome di dominio nella barra degli indirizzi del browser.Enter your domain name into the address bar of your browser. Ad esempio, http://www.contoso.com.Such as, http://www.contoso.com.

    Testare il sito contoso nel gateway applicazione

  2. Sostituire l'indirizzo con l'altro dominio come nell'esempio seguente:Change the address to your other domain and you should see something like the following example:

    Testare il sito fabrikam nel gateway applicazione

Passaggi successiviNext steps

In questo articolo si è appreso come:In this article, you learned how to:

  • Creare un gateway applicazioneCreate an application gateway
  • Creare macchine virtuali per i server back-endCreate virtual machines for backend servers
  • Creare pool back-end con i server back-endCreate backend pools with the backend servers
  • Creare i listener e le regole di routingCreate listeners and routing rules
  • Creare un record CNAME nel dominioCreate a CNAME record in your domain