Azure_Front_Door

Azure Front Door: Content Deliver segur i d’alt rendiment

Durant aquests últims mesos, hem estat desenvolupant un projecte per a un client en el qual havíem de cobrir diverses necessitats en l’arquitectura Azure de la seva pàgina web corporativa.

En aquest cas, la principal premissa era disposar d’un WAF (Web Application Firewall), però què hi ha sobre el contingut? De quins elements disposem per a millorar el lliurament del contingut i així millorar l’experiència de l’usuari amb la web?

Bàsicament teníem dos serveis d’ Azure:

  • Azure Gateway
  • Azure Front Door

Inicialment, pot semblar que l’elecció entre Azure Application Gateway i Azure Front Door és una decisió trivial.

Azure Application Gateway és àmpliament conegut i ha estat en el mercat durant més temps, amb una gran adopció. No obstant això, després d’analitzar a fons les seves característiques i funcionalitats específiques, vam arribar a la conclusió que Azure Front Door era l’opció més adequada per al nostre cas.

Quina va ser la raó per la qual vam triar aquesta opció per a aquest cas?

A continuació, explicarem detalladament els motius que ens van portar a això.

Azure Front Door és un servei ofert per Microsoft Azure que té com a funció gestionar el flux de trànsit i distribuir contingut en aplicacions web i serveis en el núvol. El seu disseny se centra en abordar tres aspectes fonamentals en aquest tipus d’aplicacions:

  • Millorar el rendiment: Treballa una sèrie de característiques en conjunt per optimitzar el lliurament de contingut, reduir la latència i millorar l’experiència de l’usuari.
  • Millorar la disponibilitat: Aprofita la redundància geogràfica, la ruta intel·ligent, la detecció i mitigació de fallades, i la protecció contra atacs. Aquestes capacitats garanteixen una disponibilitat contínua i de confiança de l’aplicació o servei per als usuaris finals.
  • Millorar la Seguretat: Ofereix una protecció completa contra atacs DDoS, certificats SSL/TLS gestionats, autenticació i autorització avançades, filtrat de contingut i un Firewall d’aplicacions web integrat. Aquestes característiques es combinen per mitigar riscos de seguretat, protegir aplicacions i serveis web, i assegurar confidencialitat, integritat i disponibilitat de dades.

Característiques d’Azure front door

Ara, aprofundirem en els detalls per explorar les característiques que ofereix:

1. Ruta Intel·ligent

Front Door utilitza la ruta intel·ligent per dirigir sol·licituds a endpoints propers i de baixa latència. Això maximitza el rendiment de l’aplicació al minimitzar la distància i possibles colls d’ampolla en la xarxa. I en conseqüència, els usuaris experimenten una millora notable en la velocitat de càrrega de l’aplicació, la qual cosa contribueix a una experiència més àgil i satisfactòria.

2. Balanceig de càrrega Global (Global Load Balancing)

Aquesta és una funció integral i crucial per optimitzar la distribució de càrrega en entorns amb múltiples instàncies d’aplicacions. Es refereix a la capacitat de distribuir la càrrega de manera eficient. Optimitzant el rendiment, la disponibilitat i l’escalabilitat de les aplicacions en entorns de múltiples instàncies. En assegurar una distribució equilibrada de les sol·licituds, s’aconsegueix una major eficiència en l’ús dels recursos i una experiència d’usuari millorada en tot moment.

3. Escalabilitat Automàtica

Igual que la majoria dels serveis d’ Azure, Front Door permet la configuració per a ajustar automàticament la capacitat de la nostra infraestructura en funció de la càrrega de treball. Això garanteix una escalabilitat adequada per gestionar les fluctuacions en la demanda i optimitzar els recursos disponibles.

4. Optimització del lliurament de contingut

Front Door utilitza tècniques de caching i compressió per lliurar el contingut estàtic de manera més eficient. Amb el que, a part de reduir els temps de càrrega, també reduirem els costos de computació ja que no cal que les sol·licituds arribin a l’AppService, ja que el contingut el tindrà en cache Azure Front Door.

5. Seguretat Avançada

És un aspecte crucial que va influir significativament en la nostra decisió d’implementar Azure Front Door. Aquest servei ens brinda una capa addicional de protecció en actuar com un únic punt d’entrada a les nostres aplicacions web. En configurar Front Door, podem aprofitar diverses mesures de seguretat, entre les quals s’inclouen:

Regles de WAF (Web Application Firewall)Front Door ens permet establir regles de firewall d’aplicacions web per a protegir les nostres aplicacions contra amenaces comunes. Com a atacs d’injecció SQL, cross-site scripting (XSS) i altres tipus d’atacs a nivell d’aplicació. Aquestes regles ajuden a detectar i bloquejar activitats malicioses, assegurant la integritat i la confidencialitat de les nostres dades.
Protecció contra DDoS (Denial of Service)Azure Front Door ens brinda protecció contra atacs de denegació de servei distribuïts (DDoS). En funcionar com una capa d’entrada, Front Door pot mitigar i filtrar el trànsit no desitjat. Protegint les nostres aplicacions web i garantint la seva disponibilitat fins i tot durant atacs DDoS.
Ús de SSL i TLSFront Door admet la configuració de certificats SSL/TLS per a habilitar connexions segures entre els usuaris i les nostres aplicacions. Això assegura que la informació transmesa estigui encriptada i protegida contra possibles intercepcions o manipulacions no autoritzades.
Protecció contra atacs d’injecció de codiFront Door brinda protecció contra atacs d’injecció de codi, evitant l’execució de codi maliciós en les nostres aplicacions. Mesures de seguretat com a validació d’entrades i prevenció d’execució de codi no autoritzat prevenen atacs i asseguren la integritat d’aplicacions i dades.
Vegem un clar exemple de la utilització d’un únic punt d’entrada, millorant la seguretat:

Si observem detingudament aquestes dues arquitectures en les quals Azure Front Door és present, podem comprendre clarament que la seva funció principal és actuar com l’únic punt d’entrada. Això significa que totes les sol·licituds dels usuaris es dirigeixen primer a Azure Front Door. Aquest s’encarrega de gestionar i redirigir el trànsit cap als diferents serveis o endpoints corresponents.

Arquitectura Genèrica per a Aplicacions Web
Arquitectura_1
Emmagatzematge optimitzat amb classificació de dades lògiques
Aruitectura_2

Avantatges i desavantatges d’Azure Front Door

En el cas que comentàvem al principi d’aquest article, Front Door va ser l’elecció més adequada. Tot i que podria haver estat un altre servei d’ Azure. Vegem els avantatges i els desavantatges d’Azure Front Door:

Avantatges d’Azure Front Door

  • Millora del rendiment: Azure Front Door utilitza ruta intel·ligent i balanceig de càrrega global per a optimitzar el rendiment de l’aplicació i garantir una experiència més ràpida per als usuaris.
  • Millora de la disponibilitat: En equilibrar la càrrega i redirigir les sol·licituds a endpoints disponibles, Front Door millora la disponibilitat de l’aplicació i redueix el risc de temps d’inactivitat.
  • Seguretat avançada: Front Door actua com un punt d’entrada únic. Ofereix funcions de seguretat com firewall d’aplicacions web (WAF) i protecció contra atacs de denegació de servei (DDoS), la qual cosa contribueix a protegir l’aplicació contra amenaces.
  • Optimització del lliurament de contingut: Azure Front Door utilitza tècniques d’emmagatzematge en caixet i compressió per a lliurar contingut estàtic de manera més eficient, la qual cosa redueix els temps de càrrega i optimitza la utilització de recursos.

Desavantatges d’Azure Front Door

  • Costos addicionals: Azure Front Door ofereix diferents nivells de preus (tiers) basats en el trànsit de xarxa i les regles de ruta implementades. Depenent de la configuració i l’ús, pot generar costos addicionals en comparació amb altres solucions. També es veurà afectat per la regió i la quantitat de dades servides en Azure. És recomanable tenir en compte aquests factors en avaluar el cost total d’utilitzar Azure Front Door.
  • Configuració inicial complexa: Configurar i ajustar correctament Front Door pot requerir coneixements tècnics i experiència en l’administració de serveis en el núvol. La configuració inicial pot ser complexa per a aquells que no estan familiaritzats amb la plataforma Azure.
AvantatgesDesavantatges
Millora el rendimentCost addicional
Millora de la disponibilitatConfiguració Inicial Complexa
Seguretat millorada

Què hi ha d’Azure Application Gateway?

Hem esmentat que la nostra elecció va ser Azure Front Door, però que també vam considerar l’ús d’ Azure Application Gateway. Ja que tots dos serveis estan dissenyats per a optimitzar el lliurament de contingut en el núvol.

Podem oferir una descripció general de les seves diferències. Tot i que una comparació detallada de ambdós serveis requeriria un article a part.

Front_Door_Icon

Com hem vist fins ara Azure Front Door s’enfoca a millorar el rendiment, la disponibilitat i la seguretat mitjançant característiques com la ruta intel·ligent, el balanceig de càrrega global, l’escalabilitat automàtica i la seguretat avançada. Està dissenyat per a actuar com un punt d’entrada únic per a les nostres aplicacions web, prioritzant l’optimització del lliurament de contingut.

ApplicationGatewayIcon

D’altra banda, Azure Application Gateway es centra en la ruta d’aplicacions web i el balanceig de càrrega a nivell d’aplicació. Proporciona una solució per a gestionar el trànsit i millorar la seguretat, el rendiment i la disponibilitat de les aplicacions web.

En el nostre projecte, vam triar Azure Front Door a causa del seu enfoc integral en l’optimització del lliurament de contingut, la qual cosa era una prioritat per a nosaltres. L’elecció entre tots dos serveis dependrà dels requeriments i necessitats específiques de cada projecte i les aplicacions web a implementar.

Podem afirmar que el punt fort de Front Door és el contingut, un Content Delivery Network (CDN). A més de ser el balanceig de càrrega (NLB) el punt fort d’ Azure Application Gateway.

En conclusió…

Després de presentar els serveis Azure Gateway i Azure Front Door, analitzem que Azure Front Door és una solució ideal per a cobrir les necessitats d’una pàgina web corporativa. A més de les seves característiques avançades de rendiment, disponibilitat i seguretat en el núvol.

Ofereix routing intel·ligent, balanceig de càrrega global, escalabilitat automàtica i seguretat avançada. A més, optimitza el lliurament de contingut mitjançant caching i compressió. Considerant costos i complexitat d’implementació, com és típic en els serveis d’ Azure.

Es va triar Azure Front Door en lloc d’ Azure Application Gateway. Això va ser a causa de la seva capacitat com Content Delivery Network (CDN). D’altra banda, Azure Application Gateway destaca pel balanceig de càrrega (NLB) i el routing d’aplicacions web.

En resum, Azure Front Door va ser l’elecció adequada. Això és degut a les seves característiques que han millorar la distribució de contingut, el rendiment i la seguretat.

Oriol Fernandez – Product Owner at Itequia