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:
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
- Støtter HTTP, HTTPS, HTTP/2 og WebSocket.
- Støtter Web Application Firewall
- End-to-end request encryption
- Autoscaling, kan dynamisk justere kapasitet ettersom web trafikk endres
Komponenter
Application gateway består av flere komponenter som kombineres for å lage en application gateway.
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