Application Gateway-komponenter

En programgateway fungerar som en enda kontaktpunkt för klienter. Den distribuerar inkommande programtrafik över flera serverdelspooler, bland annat virtuella Azure-datorer, vm-skalningsuppsättningar, Azure App Service och lokala/externa servrar. För att distribuera trafik använder en programgateway flera komponenter som beskrivs i den här artikeln.

The components used in an application gateway

IP-adresser för klientdelen

En IP-adress för klientdelen är DEN IP-adress som är associerad med en programgateway. Du kan konfigurera en programgateway så att den har en offentlig IP-adress, en privat IP-adress eller både och. En programgateway stöder en offentlig eller en privat IP-adress. Det virtuella nätverket och den offentliga IP-adressen måste finnas på samma plats som din programgateway. När den har skapats associeras en IP-adress för klientdelen med en lyssnare.

Statisk kontra dynamisk offentlig IP-adress

Azure Application Gateway V2 SKU kan konfigureras för att antingen stödja både statisk intern IP-adress och statisk offentlig IP-adress eller endast statisk offentlig IP-adress. Den kan inte konfigureras för att endast stödja statisk intern IP-adress.

V1-SKU:n kan konfigureras för att stödja statisk eller dynamisk intern IP-adress och dynamisk offentlig IP-adress. Den dynamiska IP-adressen för Application Gateway ändras inte på en gateway som körs. Den kan bara ändras när du stoppar eller startar gatewayen. Det ändras inte vid systemfel, uppdateringar, Azure-värduppdateringar osv.

DNS-namnet som är associerat med en programgateway ändras inte under gatewayens livscykel. Därför bör du använda ett CNAME-alias och peka det på DNS-adressen för programgatewayen.

Lyssnare

En lyssnare är en logisk entitet som söker efter inkommande anslutningsbegäranden. En lyssnare accepterar en begäran om protokollet, porten, värdnamnet och IP-adressen som är associerad med begäran matchar samma element som är associerade med lyssnarkonfigurationen.

Innan du använder en programgateway måste du lägga till minst en lyssnare. Det kan finnas flera lyssnare kopplade till en programgateway och de kan användas för samma protokoll.

När en lyssnare har upptäckt inkommande begäranden från klienter dirigerar programgatewayen dessa begäranden till medlemmar i serverdelspoolen som konfigurerats i regeln.

Lyssnare stöder följande portar och protokoll.

Portar

En port är den där en lyssnare lyssnar efter klientbegäran. Du kan konfigurera portar för v1- och v2-SKU:er enligt nedan.

SKU Portintervall som stöds Undantag
V2 1 till 64999 22
V1 1 till 65502 3389

Protokoll

Application Gateway stöder fyra protokoll: HTTP, HTTPS, HTTP/2 och WebSocket:

Kommentar

HTTP/2-protokollstöd är endast tillgängligt för klienter som ansluter till application gateway-lyssnare. Kommunikationen till serverdelsserverpooler är alltid över HTTP/1.1. Som standard är HTTP/2-stöd inaktiverat. Du kan välja att aktivera den.

  • Ange mellan HTTP- och HTTPS-protokollen i lyssnarkonfigurationen.
  • Stöd för WebSockets- och HTTP/2-protokoll tillhandahålls internt och WebSocket-stöd är aktiverat som standard. Det finns inga inställningar som kan konfigureras av användaren för att selektivt aktivera eller inaktivera WebSocket-stöd. Använd WebSockets med både HTTP- och HTTPS-lyssnare.

Använd en HTTPS-lyssnare för TLS-avslutning. En HTTPS-lyssnare avlastar krypterings- och dekrypteringsarbetet till din programgateway, så att webbservrarna inte belastas av kostnaderna.

Anpassade felsidor

Med Application Gateway kan du skapa anpassade felsidor i stället för att visa standardfelsidor. Du kan använda din egen varumärkesanpassning och layout med hjälp av en anpassad felsida. Application Gateway visar en anpassad felsida när en begäran inte kan nå serverdelen.

Mer information finns i Anpassade felsidor för din programgateway.

Typer av lyssnare

Det finns två typer av lyssnare:

  • Grundläggande. Den här typen av lyssnare lyssnar på en enda domänwebbplats, där den har en enda DNS-mappning till IP-adressen för programgatewayen. Den här lyssnarkonfigurationen krävs när du är värd för en enda plats bakom en programgateway.

  • Flera platser. Den här lyssnarkonfigurationen krävs när du vill konfigurera routning baserat på värdnamn eller domännamn för mer än ett webbprogram på samma programgateway. Den här funktionen gör att du kan konfigurera en mer effektiv topologi för dina distributioner genom att lägga till fler än 100 webbplatser i samma appgateway. Varje webbplats kan dirigeras till en egen serverdelspool. Tänk dig till exempel att de tre domänerna contoso.com, fabrikam.com och adatum.com pekar på appgatewayens IP-adress. Du skulle skapa tre lyssnare för flera platser och konfigurera varje lyssnare för respektive port- och protokollinställning.

    Du kan också definiera värdnamn med jokertecken i lyssnare för flera platser och upp till 5 värdnamn per lyssnare. Mer information finns i värdnamn med jokertecken i lyssnaren.

    Mer information om hur du konfigurerar en lyssnare för flera platser finns i Värd för flera platser i Application Gateway med Hjälp av Azure-portalen.

När du har skapat en lyssnare associerar du den med en routningsregel för begäranden. Den här regeln avgör hur begäran som tas emot på lyssnaren ska dirigeras till serverdelen. Routningsregeln för begäran innehåller också den serverdelspool som ska dirigeras till och HTTP-inställningen där serverdelsporten, protokollet osv. nämns.

Begär routningsregler

En routningsregel för begäran är en nyckelkomponent i en programgateway eftersom den avgör hur trafik dirigeras på lyssnaren. Regeln binder lyssnaren, serverdelsserverpoolen och HTTP-inställningarna för serverdelen.

När en lyssnare accepterar en begäran vidarebefordrar routningsregeln för begäran begäran till serverdelen eller omdirigerar den någon annanstans. Om begäran vidarebefordras till serverdelen definierar routningsregeln för begäran vilken serverdelsserverpool som den ska vidarebefordras till. Routningsregeln för begäran avgör också om rubrikerna i begäran ska skrivas om. En lyssnare kan kopplas till en regel.

Det finns två typer av routningsregler för begäranden:

  • Grundläggande. Alla begäranden på den associerade lyssnaren (till exempel blog.contoso.com/*) vidarebefordras till den associerade serverdelspoolen med hjälp av den associerade HTTP-inställningen.

  • Sökvägsbaserad. Med den här routningsregeln kan du dirigera begäranden på den associerade lyssnaren till en specifik serverdelspool baserat på URL:en i begäran. Om url-sökvägen i en begäran matchar sökvägsmönstret i en sökvägsbaserad regel dirigerar regeln den begäran. Sökvägsmönstret tillämpas endast på URL-sökvägen, inte på dess frågeparametrar. Om URL-sökvägen för en lyssnarbegäran inte matchar någon av de sökvägsbaserade reglerna dirigeras begäran till standardserverdelspoolen och HTTP-inställningarna.

Mer information finns i URL-baserad routning.

Stöd för omdirigering

Med routningsregeln för begäran kan du också omdirigera trafik på programgatewayen. Det här är en allmän omdirigeringsmekanism, så du kan omdirigera till och från valfri port som du definierar med hjälp av regler.

Du kan välja omdirigeringsmålet som en annan lyssnare (som kan hjälpa till att aktivera automatisk HTTP till HTTPS-omdirigering) eller en extern webbplats. Du kan också välja att omdirigeringen ska vara tillfällig eller permanent, eller att lägga till URI-sökvägen och frågesträngen i den omdirigerade URL:en.

Mer information finns i Omdirigera trafik på din programgateway.

Skriva om HTTP-huvuden och URL

Genom att använda omskrivningsregler kan du lägga till, ta bort eller uppdatera HTTP-begärande- och svarshuvuden samt URL-sökväg och frågesträngsparametrar när begäran och svarspaket flyttas mellan klient- och serverdelspoolerna via programgatewayen.

Rubrikerna och URL-parametrarna kan ställas in på statiska värden eller till andra rubriker och servervariabler. Detta hjälper till med viktiga användningsfall, till exempel att extrahera klientens IP-adresser, ta bort känslig information om serverdelen, lägga till mer säkerhet och så vidare.

Mer information finns i Skriva om HTTP-huvuden och URL på din programgateway.

HTTP-inställningar

En programgateway dirigerar trafik till serverdelsservrarna (anges i routningsregeln för begäran som innehåller HTTP-inställningar) med hjälp av portnummer, protokoll och andra inställningar som beskrivs i den här komponenten.

Porten och protokollet som används i HTTP-inställningarna avgör om trafiken mellan programgatewayen och serverdelsservrarna är krypterad (tillhandahåller TLS från slutpunkt till slutpunkt) eller okrypterad.

Den här komponenten används också för att:

  • Avgör om en användarsession ska behållas på samma server med hjälp av den cookiebaserade sessionstillhörigheten.

  • Ta bort medlemmar i serverdelspoolen med hjälp av anslutningsdränering.

  • Associera en anpassad avsökning för att övervaka serverdelshälsan, ange tidsgränsintervallet för begäran, åsidosätta värdnamnet och sökvägen i begäran och ange enkel information med ett klick för att ange inställningar för App Service-serverdelen.

Serverdelspooler

En serverdelspool dirigerar begäran till serverdelsservrar som hanterar begäran. Serverdelspooler kan innehålla:

  • Nätverkskort
  • Skalningsuppsättningar för virtuella datorer
  • Offentliga IP-adresser
  • Interna IP-adresser
  • FQDN
  • Serverdelar för flera klientorganisationer (till exempel App Service)

Application Gateway-medlemmar i serverdelspoolen är inte knutna till en tillgänglighetsuppsättning. En programgateway kan kommunicera med instanser utanför det virtuella nätverk som den finns i. Därför kan medlemmarna i serverdelspoolerna vara över kluster, mellan datacenter eller utanför Azure, så länge det finns IP-anslutning.

Om du använder interna IP-adresser som medlemmar i serverdelspoolen måste du använda peering för virtuella nätverk eller en VPN-gateway. Peering för virtuella nätverk stöds och är fördelaktigt för belastningsutjämning av trafik i andra virtuella nätverk.

En programgateway kan också kommunicera med lokala servrar när de är anslutna via Azure ExpressRoute eller VPN-tunnlar om trafik tillåts.

Du kan skapa olika serverdelspooler för olika typer av begäranden. Skapa till exempel en serverdelspool för allmänna begäranden och sedan en annan serverdelspool för begäranden till mikrotjänsterna för ditt program.

När du har lagt till vm-skalningsuppsättningar som medlem i serverdelspoolen måste du uppgradera instanser av vm-skalningsuppsättningar. Tills du uppgraderar skalningsuppsättningsinstanser är serverdelen inte felfri.

Hälsotillståndsavsökningar

Som standard övervakar en programgateway hälsotillståndet för alla resurser i serverdelspoolen och tar automatiskt bort felaktiga resurser. Den övervakar sedan felaktiga instanser och lägger till dem i den felfria serverdelspoolen när de blir tillgängliga och svarar på hälsoavsökningar.

Förutom att använda standardövervakning av hälsoavsökningar kan du även anpassa hälsoavsökningen så att den passar programmets krav. Anpassade avsökningar ger mer detaljerad kontroll över hälsoövervakningen. När du använder anpassade avsökningar kan du konfigurera ett anpassat värdnamn, URL-sökväg, avsökningsintervall och hur många misslyckade svar som ska accepteras innan du markerar serverdelspoolinstansen som felaktig, anpassade statuskoder och svarstextmatchning osv. Vi rekommenderar att du konfigurerar anpassade avsökningar för att övervaka hälsotillståndet för varje serverdelspool.

Mer information finns i Övervaka hälsotillståndet för din programgateway.

Nästa steg

Skapa en programgateway: