Application Gateway

Har en frontend IP som basert på regler ruter requesten til rett server.

Ruting

Path-base routing

Ruter requests basert på URL. F.eks. send alle requests med /video/* ett sted, og alle med /images/* et annet:
2-application-gateway-routing

Multiple site hosting

Ruter requests basert på hostname. contoso.com gåt til visse servere, fabrikam.com går til andre servere.

Redirection

Man kan redirecte til en annen side, eller fra http til https

Rewrite HTTP headers

Man kan skrive om http headers og legge til ekstra info på veien inn til serverne bak.

Custom error pages

Man kan lage egne error sider istedenfor default, for å vise errors til kunde.

Load balancing

Bruker Round Robin Mechanism for å bestemme hvor requests skal sendes. Om man har behov for "Session stickiness", altså at alle requests fra en klient i samme sesjon rutes til samme server, kan man også konfigurere dette.

Bruker lag 7 av OSI Modellen. Det vil si at den ruter basert på http info, som host names og paths. (Azure Load Balancer bruker til sammenligning lag 4 og ruter basert på IP adresser.)

Features

Komponenter

Application gateway består av flere komponenter som kombineres for å lage en application gateway.

4-application-gateway-components

Front-end IP address

Bruker en Azure Public IP address for å kunne nås fra internett. Kan også ha en privat IP adresse. Kan kun a én av hver.

Listeners

Den som mottar inkommende requests.

Basic

Kan rute reqwuests basert på Path i URL

Multi-site

Kan også rute requests ved å se på hostname til URL

Routing rule

Det som spesifiserer hvor en request skal gå basert på hostname og path elementer.
En regel kan også ha et sett med regler knyttet til seg som kan si noe om kryptering, protokoll (http/https), timeout, session stickiness, health probe (gitt en helth probe URL kan de sjekke om en server i et backend-pool er tilgjengelig)

Back-end pool

En samling av web servere. Man legger inn IP-adresser og port for hver web-server man vi l ha i poolet. Det kan være en VM, app-service, on-premise server etc.
Hvert pool har en egen load balancer som distribuerer ting innad i poolet.

Web application firewall (optional)

Man kan legge på en WAF om man ønsker. Web Application Firewall

Health Probe

Health Probe
Bruker dette for å sende en request til server. Hvis server statuskoden er mellom 200 og 399 er serveren healthy. Om man ikke konfigurere dette selv, vil application Gateway lage en default probe som venter i 30 sekunder før den bestemmer at serveren er utilgjengelig.

Network requirements

Man må plassere AG innad i et VNet.
AG bruker flere private adresser for internt bruk. Dermed må subnettet ha plass til flere adresser enn bare dine instanser.
Eksempel fra Microsoft: Omman skal skalere ut til 4 instanser, lag et /28 stort subnet. (1 instanse er en listener. Mange requests krever flere listeners da dette kan være en bottleneck)

Scaling

Autoscaling

Om man velger dette vil AG scale ut og inn basert på trafikken. Man kan spesifisere en min og maks grense

Manuell scaling

Skaler manuelt