Post on 13-Apr-2017
Azure Web Apps - Deep DiveRoberto Gónzalez @robertoggLuis Ruiz @luisruizpavon
Developers at PlainConceptsMADRID · NOV 27-28 · 2015
MADRID · NOV 27-28 · 2015
Agenda1. Introducción2. Creación de slots de despliegue3. Continuous deployment. 4. Trafic Routing (A/B Testing) y Trafic Manager5. Consola Kudu6. Extensions. VSOnline7. Depuración8. Monitorización9. Web Jobs
MADRID · NOV 27-28 · 2015
IntroducciónNos permite a los desarrolladores de manera rápida y sencilla desarrollar, desplegar y administrar sitios web o aplicaciones web.
MADRID · NOV 27-28 · 2015
Deployment slotsNos permite tener diferentes entornos donde desplegar y probar nuestra aplicación web.
Dev –> Test –> Staging -> Producción
MADRID · NOV 27-28 · 2015
Deployment slots - SwapEs una operación que intercambia el contenido entre 2 deployment slots.
Ojo! No es una copia del contenido estático es un intercambio de direcciones IP virtuales por eso es tan rápido y no provoca downtime del servicio.
MADRID · NOV 27-28 · 2015
Deployment slots – Swap IIConfiguraciones que se intercambian:
• General settings - framework version, 32/64-bit, Web sockets• App settings (Se puede configurar)• Connection strings (Se pueden configurar)• Handler mappings• Monitorización y diagnóstico• Contenido de WebJobs
Configuraciones que no se intercambian:
• Endpoints• Custom Domain Names• Certificados SSL ybindings• Configuraciones de escalado• WebJobs schedulers
Continuous deployment
GitHub
Staging
Production
swap
Developer 1 Developer 2
MADRID · NOV 27-28 · 2015
Traffic Routing – (A/B Testing)Podemos espeficicar que porcentaje de tráfico irá a producción y que porcentaje irá a staging.
Esto se puede complementar con Application Insigths
MADRID · NOV 27-28 · 2015
Traffic ManagerSe trata de un servicio de balanceo de red basado en DNS. Básicamente lo que hacemos es definir unos extremos o “endpoints” y en función de la política que definamos dirigirá el tráfico de manera inteligente a los mismos.• PERFORMANCE – Dirige al extremo “más cercano” basado en la latencia.• ROUND-ROBIN – Distribuye equitativamente el tráfico entre todas las localizaciones. Se pueden establecer
pesos.• FAILOVER – Dirige a la localización de “backup” si el primario falla.
https://mysite.scm.azurewebsites.net/
AuthenticatedRuns in same security context as main site
Can access the site files and environment variablesGreat for admin tools!
Kudu – Web Site’s worst kept secret
MADRID · NOV 27-28 · 2015
MonitorizaciónApplication Insights para diagnosticar problemas y monitorizar el uso y performance de nuestras web apps en Azure, IIS o J2EE.
Tambiém podemos registrar eventos, métricas, visitas de páginas, usuarios, “petes”, contadores de rendimiento, tiempo de respuesta…
Host and schedule lightweights job on an existing website
Triggered once, by schedule or run continuously Support:
• batch (.exe/.cmd/.bat)• bash (.sh)• javascript (.js as node.js)• php (.php) • python (.py)
Dashboard Experience
Azure WebJobs
MADRID · NOV 27-28 · 2015
¿Preguntas?