Creare un probe personalizzato per il gateway applicazione di Azure (classico) con PowerShellCreate a custom probe for Azure Application Gateway (classic) by using PowerShell

Questo articolo illustra come aggiungere un probe personalizzato a un gateway applicazione esistente con PowerShell.In this article, you add a custom probe to an existing application gateway with PowerShell. I probe personalizzati sono utili per le applicazioni che dispongono di una pagina di controllo dell'integrità specifica o per quelle che non rispondono in modo corretto all'applicazione Web predefinita.Custom probes are useful for applications that have a specific health check page or for applications that do not provide a successful response on the default web application.

Importante

Azure offre due diversi modelli di distribuzione per creare e usare le risorse: Gestione risorse e la distribuzione classica.Azure has two different deployment models for creating and working with resources: Resource Manager and Classic. Questo articolo illustra l'uso del modello di distribuzione classica.This article covers using the Classic deployment model. Microsoft consiglia di usare il modello di Gestione risorse per le distribuzioni più recenti.Microsoft recommends that most new deployments use the Resource Manager model. Informazioni su come eseguire questa procedura con il modello di Resource Manager.Learn how to perform these steps using the Resource Manager model.

Prerequisito: installare il modulo Azure PowerShellPrerequisite: Install the Azure PowerShell module

Per eseguire i passaggi indicati in questo articolo, è necessario installare e configurare il modulo Azure PowerShell.To perform the steps in this article, you need to install and configure the Azure PowerShell module. Assicurarsi di completare tutte le istruzioni.Be sure to complete all of the instructions. Al termine dell'installazione, accedere ad Azure e selezionare la sottoscrizione.After the installation is finished, sign in to Azure and select your subscription.

Nota

Per completare questi passaggi, è necessario un account Azure.You need an Azure account to complete these steps. Se non si ha un account Azure, è possibile iscriversi per ottenere una versione di valutazione gratuita.If you don't have an Azure account, you can sign up for a free trial.

Creare un gateway applicazioneCreate an application gateway

Per creare un gateway applicazione:To create an application gateway:

  1. Creare una risorsa del gateway applicazione.Create an application gateway resource.
  2. Creare un file XML di configurazione o un oggetto di configurazione.Create a configuration XML file or a configuration object.
  3. Eseguire il commit della configurazione nella risorsa del gateway applicazione appena creata.Commit the configuration to the newly created application gateway resource.

Creare una risorsa del gateway applicazione con un probe personalizzatoCreate an application gateway resource with a custom probe

Per creare il gateway, usare il cmdlet New-AzureApplicationGateway, sostituendo i valori esistenti con quelli personalizzati.To create the gateway, use the New-AzureApplicationGateway cmdlet, replacing the values with your own. La fatturazione per il gateway non viene applicata a partire da questo punto.Billing for the gateway does not start at this point. La fatturazione viene applicata a partire da un passaggio successivo, dopo l'avvio corretto del gateway.Billing begins in a later step, when the gateway is successfully started.

L'esempio seguente mostra come creare un gateway applicazione usando una rete virtuale denominata "testvnet1" e una subnet denominata "subnet-1".The following example creates an application gateway by using a virtual network called "testvnet1" and a subnet called "subnet-1".

New-AzureApplicationGateway -Name AppGwTest -VnetName testvnet1 -Subnets @("Subnet-1")

Per convalidare la creazione del gateway, è possibile usare il cmdlet Get-AzureApplicationGateway.To validate that the gateway was created, you can use the Get-AzureApplicationGateway cmdlet.

Get-AzureApplicationGateway AppGwTest

Nota

Il valore predefinito per InstanceCount è 2, con un valore massimo di 10.The default value for InstanceCount is 2, with a maximum value of 10. Il valore predefinito per GatewaySize è Medium.The default value for GatewaySize is Medium. È possibile scegliere tra Small, Medium e Large.You can choose between Small, Medium, and Large.

VirtualIPs e DnsName vengono visualizzati vuoti perché il gateway non è stato ancora avviato.VirtualIPs and DnsName are shown as blank because the gateway has not started yet. Questi valori vengono creati quando il gateway è in esecuzione.These values are created once the gateway is in the running state.

Configurare un gateway applicazione usando XMLConfigure an application gateway by using XML

Nell'esempio seguente viene usato un file XML per configurare tutte le impostazioni del gateway applicazione ed eseguirne il commit nella risorsa del gateway applicazione.In the following example, you use an XML file to configure all application gateway settings and commit them to the application gateway resource.

Copiare il testo seguente in Blocco note.Copy the following text to Notepad.

<ApplicationGatewayConfiguration xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/windowsazure">
<FrontendIPConfigurations>
    <FrontendIPConfiguration>
        <Name>fip1</Name>
        <Type>Private</Type>
    </FrontendIPConfiguration>
</FrontendIPConfigurations>
<FrontendPorts>
    <FrontendPort>
        <Name>port1</Name>
        <Port>80</Port>
    </FrontendPort>
</FrontendPorts>
<Probes>
    <Probe>
        <Name>Probe01</Name>
        <Protocol>Http</Protocol>
        <Host>contoso.com</Host>
        <Path>/path/custompath.htm</Path>
        <Interval>15</Interval>
        <Timeout>15</Timeout>
        <UnhealthyThreshold>5</UnhealthyThreshold>
    </Probe>
    </Probes>
    <BackendAddressPools>
    <BackendAddressPool>
        <Name>pool1</Name>
        <IPAddresses>
            <IPAddress>1.1.1.1</IPAddress>
            <IPAddress>2.2.2.2</IPAddress>
        </IPAddresses>
    </BackendAddressPool>
</BackendAddressPools>
<BackendHttpSettingsList>
    <BackendHttpSettings>
        <Name>setting1</Name>
        <Port>80</Port>
        <Protocol>Http</Protocol>
        <CookieBasedAffinity>Enabled</CookieBasedAffinity>
        <RequestTimeout>120</RequestTimeout>
        <Probe>Probe01</Probe>
    </BackendHttpSettings>
</BackendHttpSettingsList>
<HttpListeners>
    <HttpListener>
        <Name>listener1</Name>
        <FrontendIP>fip1</FrontendIP>
    <FrontendPort>port1</FrontendPort>
        <Protocol>Http</Protocol>
    </HttpListener>
</HttpListeners>
<HttpLoadBalancingRules>
    <HttpLoadBalancingRule>
        <Name>lbrule1</Name>
        <Type>basic</Type>
        <BackendHttpSettings>setting1</BackendHttpSettings>
        <Listener>listener1</Listener>
        <BackendAddressPool>pool1</BackendAddressPool>
    </HttpLoadBalancingRule>
</HttpLoadBalancingRules>
</ApplicationGatewayConfiguration>

Modificare i valori tra parentesi per gli elementi di configurazione.Edit the values between the parentheses for the configuration items. Salvare il file con estensione XML.Save the file with extension .xml.

L'esempio seguente mostra come usare un file di configurazione per impostare il gateway applicazione per il bilanciamento del carico del traffico HTTP sulla porta pubblica 80 e inviare il traffico di rete alla porta back-end 80 tra due indirizzi IP usando un probe personalizzato.The following example shows how to use a configuration file to set up the application gateway to load balance HTTP traffic on public port 80 and send network traffic to back-end port 80 between two IP addresses by using a custom probe.

Importante

L'elemento del protocollo HTTP o HTTPS deve rispettare la distinzione tra maiuscole e minuscole.The protocol item Http or Https is case-sensitive.

Viene aggiunto un nuovo elemento di configurazione <Probe> per configurare i probe personalizzati.A new configuration item <Probe> is added to configure custom probes.

I parametri di configurazione sono:The configuration parameters are:

ParametroParameter DescrizioneDescription
NomeName Nome di riferimento del probe personalizzato.Reference name for custom probe.
* Protocol* Protocol Protocollo usato. I valori possibili sono HTTP o HTTPS.Protocol used (possible values are HTTP or HTTPS).
Host e PathHost and Path Percorso URL completo richiamato dal gateway applicazione per determinare l'integrità dell'istanza.Complete URL path that is invoked by the application gateway to determine the health of the instance. Se si ha un sito Web http://contoso.com/, ad esempio, il probe personalizzato può essere configurato per "http://contoso.com/path/custompath.htm" in modo che i controlli del probe ottengano una risposta HTTP corretta.For example, if you have a website http://contoso.com/, then the custom probe can be configured for "http://contoso.com/path/custompath.htm" for probe checks to have a successful HTTP response.
IntervalInterval Configura i controlli dell'intervallo di probe, in secondi.Configures the probe interval checks in seconds.
TimeoutTimeout Definisce il timeout del probe per un controllo della risposta HTTP.Defines the probe time-out for an HTTP response check.
UnhealthyThresholdUnhealthyThreshold Numero di risposte HTTP non riuscite necessario per contrassegnare l'istanza back-end come non integra.The number of failed HTTP responses needed to flag the back-end instance as unhealthy.

Nella configurazione <BackendHttpSettings> viene fatto riferimento al nome del probe per assegnare il pool back-end che userà le impostazioni del probe personalizzato.The probe name is referenced in the <BackendHttpSettings> configuration to assign which back-end pool uses custom probe settings.

Aggiungere un probe personalizzato a un gateway applicazione esistenteAdd a custom probe to an existing application gateway

Per modificare la configurazione corrente di un gateway applicazione sono necessari tre passaggi: ottenere il file di configurazione XML corrente, apportare modifiche per avere un probe personalizzato e configurare il gateway applicazione con le nuove impostazioni XML.Changing the current configuration of an application gateway requires three steps: Get the current XML configuration file, modify to have a custom probe, and configure the application gateway with the new XML settings.

  1. Ottenere il file XML usando Get-AzureApplicationGatewayConfig.Get the XML file by using Get-AzureApplicationGatewayConfig. Questo cmdlet esporta il file XML di configurazione, che potrà quindi essere modificato per aggiungere un'impostazione di probe.This cmdlet exports the configuration XML to be modified to add a probe setting.

    Get-AzureApplicationGatewayConfig -Name "<application gateway name>" -Exporttofile "<path to file>"
    
  2. Aprire il file XML in un editor di testo.Open the XML file in a text editor. Aggiungere una sezione <probe> dopo <frontendport>.Add a <probe> section after <frontendport>.

    <Probes>
     <Probe>
         <Name>Probe01</Name>
         <Protocol>Http</Protocol>
         <Host>contoso.com</Host>
         <Path>/path/custompath.htm</Path>
         <Interval>15</Interval>
         <Timeout>15</Timeout>
         <UnhealthyThreshold>5</UnhealthyThreshold>
     </Probe>
    </Probes>
    

    Nella sezione backendHttpSettings del file XML aggiungere il nome del probe, come nell'esempio seguente:In the backendHttpSettings section of the XML, add the probe name as shown in the following example:

     <BackendHttpSettings>
         <Name>setting1</Name>
         <Port>80</Port>
         <Protocol>Http</Protocol>
         <CookieBasedAffinity>Enabled</CookieBasedAffinity>
         <RequestTimeout>120</RequestTimeout>
         <Probe>Probe01</Probe>
     </BackendHttpSettings>
    

    Salvare il file XML.Save the XML file.

  3. Aggiornare la configurazione del gateway applicazione con il nuovo file XML usando Set-AzureApplicationGatewayConfig.Update the application gateway configuration with the new XML file by using Set-AzureApplicationGatewayConfig. Questo cmdlet aggiorna il gateway applicazione con la nuova configurazione.This cmdlet updates your application gateway with the new configuration.

Set-AzureApplicationGatewayConfig -Name "<application gateway name>" -Configfile "<path to file>"

Passaggi successiviNext steps

Per configurare l'offload SSL (Secure Sockets Layer), vedere Configurare un gateway applicazione per l'offload SSL.If you want to configure Secure Sockets Layer (SSL) offload, see Configure an application gateway for SSL offload.

Per configurare un gateway applicazione da usare con un servizio di bilanciamento del carico interno, vedere Creare un gateway applicazione con un servizio di bilanciamento del carico interno (ILB).If you want to configure an application gateway to use with an internal load balancer, see Create an application gateway with an internal load balancer (ILB).