Post on 03-Apr-2020
• Check-In + Presentación de la Capacitación.
• La Nube como Centro de Cómputo: opciones IaaS y PaaS.
• Migración de Aplicaciones Empresariales a Azure.
• Check-Out.
AGENDA
¿Quiénes somos? ¿Quiénes estamos?
¿Cómo será este curso?
Check-In
¿NOS PRESENTAMOS?Experiencias que tenemos en Azure IaaS, PaaS y SaaS
¿QUIÉN LES HABLA?Nos presentamos
Pablo Ariel Di Loreto
Gerente de Proyectos y Prácticas en Algeiba SA.
SOBRE ESTE CURSOSemaforización
Contenido teórico
Links para ampliar información
Demo
Quest
SOBRE ESTE CURSOReglas claras conservan la amistad
• Seamos puntuales para arrancar y finalizar.
• Los celulares y otros dispositivos en silencio. Tu
participación es lo más valioso y sin distracciones.
• ¿Preguntas? ¡Las que quieras! Pero sobre el tema
que estamos viendo…
• Evitemos opiniones personales de cualquier tipo,
como también políticas y religiosas.
• Recordemos que hay personas en forma remota
tomando el curso: ¡vamos a integrarlos!
Virtual Machines + App Services
Tema 1:
Cómputo en la Nube
MODELOS DE EJECUCIÓN DE APPS
Algunas preguntas…
• ¿Qué modelos de ejecución de aplicaciones conocen?
• ¿A qué llamamos “Cómputo”?
• ¿Ejemplos de Cómputo?
Azure App Service
Azure Virtual Machines
MODELOS DE EJECUCIÓN DE APPS
VIRTUAL MACHINESModelo de ejecución IaaS con Máquinas Virtuales
MÁQUINAS VIRTUALESDemo en vivo de Virtual Machines
MÁQUINAS VIRTUALES
• Windows Server 2008 R2
• Windows Server 2012
• Windows Server 2012 R2
• Windows Server 2016
• Windows 7
• Windows 8
• Windows 10
¿Qué Sistemas Operativos Windows soporta Azure?
MÁQUINAS VIRTUALES
• CentOS 6.3+, 7.0+
• CoreOS 494.4.0+
• Debian 7.9+, 8.2+
• Oracle Linux 6.4+, 7.0+
• RHEL 6.7+, 7.1+
• SLES 11 SP3+, SLES 12+ y
• SLES para SAP 11.3+
• openSUSE 13.1+
• Ubuntu 12.04, 14.04, 15.10 y
16.04
¿Qué Sistemas Operativos Linux soporta Azure?
MÁQUINAS VIRTUALES¿Qué Soluciones IaaS soporta Azure?
• SharePoint Farm + HA.
• SQL Server AlwaysOn Cluster.
• Cisco CSR 1000v Deployment.
• Deep Security Manager.
• FortiGateNGFW High Availability.
• WordPress using MySQL Repl.
• XenApp 7.8.
• Y.. ¡Mucho más!
MÁQUINAS VIRTUALESIaaS bajo el modelo Clásico de Azure Service Model (ASM)
• Modelo clásico para VMs, Red y
Almacenamiento.
• Los recursos son desplegados
individualmente (no en grupo).
• No se pueden especificar relaciones
entre los recursos ni orden de
despliegue.
• No hay Role-Based Access Control
(RBAC).
MÁQUINAS VIRTUALES
• Desplegar, administrar y monitorear
todos los Servicios como un grupo.
• Implementación repetida de una
aplicación en forma consistente.
• Plantillas declarativas para definir una
implementación.
• Dependencias entre recursos que se
despliegan para indicar un orden.
• Role-Based Access Control (RBAC).
IaaS bajo el modelo de Azure Resource Manager (ARM)
MÁQUINAS VIRTUALES
Fault Domains
• Grupo de recursos previstos a fallar juntos (mismo
rack / mismo servidor).
• La Fábrica despliega instancias en por lo menos 2
dominios de falla.
Update Domains
• Grupo de recursos que serán actualizados juntos.
• Se especifica en la definición de servicio.
Dominios de Falla y Actualización
MÁQUINAS VIRTUALESDominios de Falla y Actualización
MÁQUINAS VIRTUALESNiveles de Servicio
MÁQUINAS VIRTUALES
¿Qué se incluye?
• Fallas de Hardware de Cómputo: discos, CPU, memoria.
• Fallas del Datacenter: - Network failure, power failure
• Actualizaciones de Hardware y Mantenimiento de Software.
• Tiempo de Inactividad Planificado: preaviso de 6 días, 6
ventana de hora, 25 minutos el tiempo de inactividad.
¿Qué NO se incluye?
• Caidas de VM causadas por terceros y actualizaciones de OS.
Niveles de Servicio
MÁQUINAS VIRTUALESLinks de Interés
• Virtual Machines Documentation | Azure: http://bit.ly/1TStb1u
• Introducción desde cero a Máquinas Virtuales en Azure: http://bit.ly/1zUJ9S3
• Gestión de Actualizaciones de Sistemas Operativos en IaaS y PaaS: http://bit.ly/1NWemuN
APP SERVICEModelo de ejecución PaaS
APP SERVICE
• Oferta de tipo Platform-as-a-Service (PaaS)
• Plataforma única de Servicios en la nube que permite
crear / alojar / probar aplicaciones Web y Mobile para
cualquier dispositivo.
• Permite integrarse fácilmente con aplicaciones SaaS +
aplicaciones on-premises del cliente.
• Está compuesto por 4 tipos de aplicaciones, la cual
cada una tiene un fin específico.
¿Qué es?
APP SERVICETipos de Aplicaciones
APP SERVICEDemo en vivo de Aplicaciones PaaS (Web + API Apps)
APP SERVICE¿Por qué utilizarlo?
• Plataforma totalmente administrada: parcheo automático de OS y Frameworks. Backups y DR.
• Soporte a múltiples lenguages y frameworks: soporte.NET, Node.js, Java, PHP, y Python.
• Despliegue rápido: en pocos segundos la aplicación está online.
• Integración continua: con Visual Studio Team Services, GitHub, o BitBucket.
• Entornos de ensayo y pruebas: verificación del código en ambiente pre-productivo con características
idénticas al productivo. Publicación a producción con “zero downtime”.
• Pruebas en Producción: pruebas en producción con estrategia “A/B testing”.
• Autenticación y Autorización: sin cambios de código. Servicios integrados de autenticación. Soporte a
varios IdP: Azure Active Directory, Facebook, Twitter, Google, and Microsoft Account.
APP SERVICE¿Por qué utilizarlo?
• Conexión con Servicios: con sistemas empresariales o SaaS Apps. Galería de Apps disponible.
• Escala Global: Scale-up y Scale-out disponibles.
• Enterprise-grade: preparado para aplicaciones de misión crítica. Compliance con ISO, SOC, y PCI.
• Azure Marketplace: plantillas con aplicaciones disponible desde la tienda integrada.
• WebJobs: ejecución de programas a través de tareas continuas, planificadas o generadas por eventos.
• Conexiones Híbridas: integración con Virtual Networks.
• Integración con Visual Studio: integración nativa con herramientas de Visual Studio para facilitar la
integración continua y despliegue rápido.
WEB APPSApp Services
WEB APPS
• Cómputo para alojar sitios o aplicaciones web.
• El código puede estar en cualquier language o framework
que esté soportado por Azure App Service.
• Los recursos de cómputo pueden estar en VMs
compartidas o dedicadas, depende del plan elegido.
• El código de la aplicación que se ejecuta está aislado de
otros clientes, sin importar del plan elegido.
¿Qué es?
WEB APPSEscenarios
WEB APPSEscenarios
WEB APPSEscenarios
API APPSApp Services
API APPS
• Permite desarrollar, alojar y consumer APIs en la nube
y on-premises.
• No es necesario cambiar el código de las APIs
existentes para utilizer API Apps.
• Soporte a varios lenguages, incluyendo ASP.NET, C#,
Java, PHP, Node.js y Python.
• Soporte integrado con Swagger API metadata.
¿Qué es?
MOBILE APPSApp Services
MOBILE APPS
• Entorno altamente escalable y global para
aplicaciones móviles.
• Aplicaciones nativas entre varias plataformas.
• Conexión a la red empresarial local.
• Aplicaciones listas para poder trabajar en forma
desconectada (offline) con data-sync.
• Push de notificaciones a millones de clientes en solo
segundos.
¿Qué es?
MOBILE APPS¿Qué es?
LOGIC APPSApp Services
LOGIC APPSDemo en vivo de una LOGIC APP
LOGIC APPS
• Ayuda a resolver escenarios de integración permitiendo
automatizar procesos de negocio.
• Son flujos de trabajo que se inician a partir de un disparador
para luego ejecutar una serie de pasos.
• Cada paso identificado convoca a una API velando por todos
los mecanismos de autenticación y autorizacion.
• Con la API de BizTalk se puede escalar aún más en
escenarios de integración y negocio.
¿Qué es?
LOGIC APPS
• Workflow: proporciona una manera gráfica para modelar
los procesos de negocio como una serie de pasos o un flujo
de trabajo.
• Managed APIs: las Logic Apps necesitan tener acceso a
datos y servicios. Las API Administradas se crean
específicamente para ayudar a conectar y trabajarlos.
• Triggers: algunas APIs Administradas también pueden
actuar como disparadores.
• Actions: paso posterior a un paso disparado.
• BizTalk: escenarios más avanzados.
Conceptos
APP SERVICELinks de Interés
• Escenarios de Web Apps: http://bit.ly/1r4zsPq
• Learning Path de Web Apps: http://bit.ly/1UkubdY
• Learning Path de API Apps: http://bit.ly/1sQGSH8
• Learning path de Mobile Apps: http://bit.ly/1XUmKQc
CONCLUSIONESCómputo en Microsoft Azure
IaaS vs PaaS para AppsRoles y Responsabilidades
IaaS vs PaaS para AppsFacilidad de Uso y Control
IaaS vs PaaS para Apps¿Qué opción elegir?
IaaS es ideal para retrocompatibilidad.
IaaS vs PaaS para Apps¿Qué opción elegir?
PaaS es más rápido, barato y seguro.
AZURE APP SERVICEResumen
Algunos Tips y Recomendaciones
Migración de Aplicaciones
WEB APPS MIGRATION ASSISTANT
• Port Bindings – Web Apps solo soportan puertos 80 para HTTP y Puerto 443 para HTTPS. Otros puertosserán ignorados.
• Authentication – Web Apps soporta Anonymous Authentication por defecto y Forms Authentication cuando está especificado por la aplicación. Windows Authentication puede ser usado integradocon Azure AD y ADFS. Otras formas de autenticación– por ejemplo Basic Authentication – no son soportadas actualmente.
• IIS5 Compatibility Mode – No está soportado.
• SAPI Filters – Web Apps pueden soportar el uso de ISAPI Filters
• Global Assembly Cache (GAC) – La GAC no estasoportada en Web Apps. Si la aplicación referencia a assemblies con las cuales se realizan los deploy en hacia la GAC, se tendrá que hacer el despliegue en la carpeta bin de la Web Apps.
• Application Pools – En Web Apps cada sitio y sussubsitios se ejecutan en el mismo application pool. Si el sitio web tiene multiples subsitios que ejecutandiferentes applications pools, se tendrá que migrara un solo application pool con las mismas opcioneso migrar cada subsitio a un web app separado.
• COM Components – Web Apps no permite la registración de componentes COM en la plataforma. En caso de existir en la aplicación, se debenreescribir y deployar dentro.
¿Qué chequea este asistente?
WEB APPS MIGRATION ASSISTANTCapturas
WEB APPS MIGRATION ASSISTANTCapturas
WEB APPS MIGRATION ASSISTANTCapturas
Momento de Cierre
Check-Out