Paseando por la Nube de Microsoft de Camino hacia Service Fabric

1 Paseando por la Nube de Microsoft de Camino hacia Servi...
Author: Rosa María Lucero Montes
0 downloads 0 Views

1 Paseando por la Nube de Microsoft de Camino hacia Service FabricMicrosoft Azure Paseando por la Nube de Microsoft de Camino hacia Service Fabric Gabriel Grajea Torrado Analista-Programador en Semicrol @gabrielgt

2 Contenido Introducción ¿Qué es Microsoft Azure?Catálogo de Servicios de Azure Infraestructura como Servicio (IaaS) Plataforma como Servicio (PaaS) Patrones de Diseño en la Nube Conclusiones Paseando por la Nube de Microsoft de Camino hacia Service Fabric Gabriel Grajea Torrado · 28/10/2016

3 Introducción Microsoft Azure

4 Presentación Gabriel Grajea Torrado Analista-Programador en SemicrolEspaña Santander Valencia México Ciudad de México Colombia Bogotá Gabriel Grajea Torrado Analista-Programador en Semicrol @gabrielgt Introducción Gabriel Grajea Torrado · 28/10/2016

5 Qué es la Computación en la NubeEs un conjunto de servicios de computación que un proveedor ofrece a través de una red, habitualmente Internet. El usuario se despreocupa de los aspectos técnicos y físicos subyacentes y dedica su atención a utilizar los servicios, pagando únicamente en función de los recursos de la nube que consume. Introducción Gabriel Grajea Torrado · 28/10/2016

6 Qué Servicios Ofrece la NubeSe pueden agrupar en: IaaS: Infraestructure as a Service Infraestructura informática que se aprovisiona y administra a través de la red. Permite escalar rápidamente los recursos. PaaS: Platform as a Service Entorno de desarrollo que permite aprovisionar recursos y desplegar aplicaciones. SaaS: Software as a Service Aplicaciones disponibles a través de la red para su utilización inmediata y directa por los usuarios. Introducción Gabriel Grajea Torrado · 28/10/2016

7 Qué Servicios Ofrece la NubeIntroducción Gabriel Grajea Torrado · 28/10/2016

8 Principales Ventajas de la NubeEconómica: Adquisición de hardware y obsolescencia del mismo Contratación de expertos en TI Aprovechamiento de los recursos, pago por uso Velocidad de Despliegue: No requiere planear capacidad previamente Los servicios se proporcionan como autoservicio de manera inmediata Escalabilidad: aumentar o disminuir los recursos de manera elástica según las necesidades en cada momento Productividad: El personal propio se puede dedicar a tareas de valor añadido, y no perder tiempo con tareas de administración tediosas y repetitivas Rendimiento: hardware actualizado de última generación Confiabilidad: facilita la alta disponibilidad y la recuperación ante desastres Introducción Gabriel Grajea Torrado · 28/10/2016

9 Principales Desventajas de la NubeDependencia: Dependencia del proveedor de servicios y de acceso a Internet Ubicación de los Datos: Los datos están fuera de la empresa, lo cual supone un riesgo adicional de espionaje industrial Normas regulatorias de algunos países. Por ejemplo: la Ley Orgánica de Protección de Datos (LOPD) exige una autorización de la Agencia Española de Protección de Datos para transferir datos de carácter personal a otros países. Los datos de nivel alto, por ejemplo, los datos de salud, no se pueden enviar fuera de la Unión Europea. Introducción Gabriel Grajea Torrado · 28/10/2016

10 Qué es Microsoft Azure

11 Qué es Microsoft Azure Es la nube de MicrosoftOfrece multitud de servicios bajo demanda, autogestionados por el usuario sobre una amplia infraestructura a nivel mundial: IaaS PaaS SaaS Qué es Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

12 Por Qué Confiar en Microsoft AzureAmplia Infraestructura Mundial: Más de 100 centros de datos por todo el mundo con más de 1 millón de servidores Más de 1000 millones de clientes y 20 millones de empresas Qué es Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

13 Certificaciones Múltiples Certificaciones: Certificaciones españolas:Es el proveedor de computación en la nube con más certificaciones No solo protege los datos y la privacidad de los datos sino que es capaz de demostrarlo periódicamente mediante auditorías. Esto es vital en algunos negocios. Certificaciones españolas: Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

14 Cuadrantes Mágicos de GartnerAlmacenamiento en la Nube IaaS PaaS Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

15 Cuadrantes Mágicos de GartnerCUADRANTES MÁGICOS DE GARTNER EN LOS QUE MICROSOFT ES LÍDER Administración del ciclo de vida de desarrollo de las aplicaciones Plataformas de análisis e inteligencia empresarial Infraestructura en la nube como servicio (IaaS), en todo el mundo Centro de participación del cliente CRM Soluciones de almacenamiento de datos y administración de datos para análisis Recuperación ante desastres como servicio (DRaaS) Plataforma de aplicaciones empresariales como servicio, en todo el mundo Administración de contenido empresarial Portales horizontales Administración de identidades y acceso como servicio, en todo el mundo Plataformas de desarrollo de aplicaciones móviles Sistemas de administración de bases de datos operativas Servicios de almacenamiento en la nube pública, en todo el mundo Automatización de fuerza de ventas Software social en el lugar de trabajo Comunicaciones unificadas Conferencia web Infraestructura de virtualización de servidor X86 Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

16 ¿Solo servidores con Windows y aplicaciones de Microsoft?¡Es una gran limitación! Azure desde su nacimiento en 2010 siempre ha dado la posibilidad de usar Linux, Oracle, Ubuntu, Wordpress, Drupal, Django, CakePHP, Java, … Pero desde la llegada de Satya Nadella como CEO, Microsoft ha dado un giro total hacia el software libre con el objetivo de proporcionar las mejores herramientas de desarrollo e infraestructura en la nube para todos los entornos Un tercio de las máquinas virtuales de Azure utilizan Linux Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

17 Ecosistema Heterogéneo de AzureQué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

18 Microsoft Open Source Microsoft ha liberado en GitHub cientos de repositorios de código fuente: Visual Studio Code: IDE multiplataforma ChakraCore: el motor de JavaScript de Edge .Net Core: .Net multiplataforma Powershell: potente interprete de comandos con POO Roslyn: el nuevo compilador de .Net SDK de Microsoft Azure Actualmente Microsoft es la organización con más colaboradores Open Source en GitHub. Herramientas de Windows para Linux y viceversa: SQL Server para Linux Powershell para Linux Bash y apt-get para Windows Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

19 Comparativa de Nubes Azure tiene el doble de regiones que la nube de Amazon (AWS) y seis veces más que la nube de Google (Google Cloud), pero AWS es la nube más grande. Comparación de servicios proporcionados por Azure y AWS: https://azure.microsoft.com/es-es/campaigns/azure-vs-aws/mapping Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

20 Punto de Vista de la FiabilidadEstos son los tiempos de caída de cualquier servicio que detectó CloudHarmony, es solo una cota inferior. Por ejemplo, en 2015 Amazon tuvo una caída de varias horas en Dynamo DB NoSQL que no fue detectada. La mayoría de servicios no tienen ni un solo minuto de caída al año. Qué es Microsoft Azure | Por qué confiar en Microsoft Azure | Comparativa de Nubes Gabriel Grajea Torrado · 28/10/2016

21 Disponibilidad del Último MesNi un minuto de caída en el último mes en los principales servicios de las tres nubes más grandes Qué es Microsoft Azure | Por qué confiar en Microsoft Azure | Comparativa de Nubes Gabriel Grajea Torrado · 28/10/2016

22 Licencias Hay que pagar licencias de los productos que no son gratuitos como si los instaláramos en nuestros servidores On-Premise. Por ejemplo: Windows SQL Server Office Oracle RedHat Excepto: cuando usemos máquinas virtuales a partir de imágenes proporcionadas por Microsoft. En ese caso la licencia está incorporada y se paga por minutos. Ventajas: No hay que comprar una licencia entera para hacer pruebas y no pagamos licencia cuando apagamos la máquina. Tenemos la posibilidad de subir nuestra propia imagen si no nos sale rentable. No hay movilidad de licencias solo para Windows, excepto con la ventaja de Uso Híbrido de Azure y Software Assurance. Revisar las condiciones particulares de cada imagen que utilicemos Qué es Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

23 Uso Híbrido de Azure para WindowsQué es Microsoft Azure | Licencias Gabriel Grajea Torrado · 28/10/2016

24 Casos de Éxito de Microsoft AzureMundial de Futbol de Sudáfrica en 2010 Retransmitido Online por Telecinco Pasaba rápidamente de 4 máquinas virtuales a 150 cuando España estaba jugando para enviar el partido en streaming a más de 1 millón de usuarios Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

25 Casos de Éxito de Microsoft AzurePortal Web de Iberia Express La solución final sobre Azure es una integración heterogénea de tecnologías: HTML5, CSS3, Bootstrap, AngularJS, ASP.NET MVC 4, ASP.NET Web API, CMS.NET UMBRACO, J2EE, WebLogic, … Azure ha permitido combinar e implementar VM, Azure Websites, Azure Web Roles, servicios en la DMZ (IIS +URL Rewriter servicio IaaS), Azure Active Directory, Azure CDN, Azure Storage, Azure SQL con georreplicación, autoescalado de servicios, etc. Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

26 Casos de Éxito de Microsoft AzurePlataforma de Contenidos para los Aficionados del Real Madrid Componentes de la Solución en Azure: Plataforma de participación de los fans Video en streaming Aplicación Móvil Telemetría y Análisis de Datos Campañas de marketing Businnnes Inteligence Tecnologías de Microsoft Utilizadas: Azure Stream Analytics Azure DocumentDB Azure Search Data insights Azure Cloud Services Dynamics Azure ActiveDirectory Dynamics Marketing Azure Media Services VS Team Services Azure Storage Applicaciton Insights Azure App Service Office 365 Azure Data Factory Power BI Qué es Microsoft Azure | Por qué confiar en Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

27 Catálogo de Servicios Microsoft Azure

28 Catálogo de Servicios Supervisión y AdministraciónServicios de Computación/Proceso Servicios de Redes Servicios de Almacenamiento Web y Móvil Bases de Datos Inteligencia y Análisis Internet de las Cosas Integración Empresarial Seguridad + Identidad Herramientas para Desarrolladores Azure Stack Catálogo de Servicios de Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

29 Portal de AdministraciónCatálogo de Servicios Portal de Administración Catálogo de Servicios de Microsoft Azure Gabriel Grajea Torrado · 28/10/2016

30 Infraestructura como ServicioMicrosoft Azure

31 Contenido Azure Resource Manager Redes AlmacenamientoMáquinas Virtuales Demo Infraestructura como Servicio (IaaS) Gabriel Grajea Torrado · 28/10/2016

32 Azure Resource ManagerSe basa en el concepto de Recurso y Grupo de Recursos para facilitar la administración de Azure Originalmente solo existía el Modelo de Implementación Clásica Se basa en plantillas declarativas en JSON en vez de scripts La creación del Grupo de Recursos es el primer paso antes de empezar a crear redes, máquinas, … Siempre que sea posible utilizar el modelo de ARM, no ASM (Azure Service Management) Herramienta interesante: Azure Resource Explorer (https://resources.azure.com) Infraestructura como Servicio (IaaS) Gabriel Grajea Torrado · 28/10/2016

33 Diagrama de un Grupo de RecursosCRP: Proveedor de Recursos de Computación SRP: Proveedor de Recursos de Almacenamiento NRP: Proveedor de Recursos de Red Infraestructura como Servicio (IaaS) | Azure Resource Manager Gabriel Grajea Torrado · 28/10/2016

34 Redes La infraestructura de Azure asume el rol de router entre Internet y la red virtual Las redes virtuales ofrecen: Aislamiento, Acceso a Internet Seguridad de acceso desde Internet mediante los NSG (Grupo de Seguridad de Red) Resolución de nombres Conectividad entre redes VPN para formar una red híbrida Subredes Direcciones IP públicas y privadas Equilibradores de carga Importante elegir bien los segmentos para que no haya colisiones con las de nuestra red local, por si la unimos con una VPN Infraestructura como Servicio (IaaS) Gabriel Grajea Torrado · 28/10/2016

35 Almacenamiento Los servicios son proporcionados por una cuenta de almacenamiento Puede contener cuatro tipos de servicios: Blobs (Binary Large Objets): En bloques: optimizados para streaming: multimedia En anexos: optimizados para añadir al final: logs En páginas: optimizados para acceso aleatorio: discos Tablas NoSQL: filas heterogéneas compuestas por colecciones de atributos clave-valor Colas: mensajería asíncrona Recursos compartidos de archivos: protocolo SMB Infraestructura como Servicio (IaaS) Gabriel Grajea Torrado · 28/10/2016

36 Opciones de ReplicaciónLRS: Almacenamiento con Redundancia Local ZRS: Almacenamiento con Redundancia de Zona GRS: Almacenamiento con Redundancia Geográfica RA-GRS: Almacenamiento con Redundancia Geográfica con Acceso de Lectura Estrategia de replicación LRS ZRS GRS RA-GRS Los datos se replican entre varias instalaciones No Los datos se pueden leer desde la ubicación secundaria al igual que desde la ubicación principal Cantidad de copias de datos mantenidas en nodos independientes 3 6 Infraestructura como Servicio (IaaS) | Almacenamiento Gabriel Grajea Torrado · 28/10/2016

37 Importación / Exportación de Datos“Never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway” Andrew S. Tanenbaum, Computer Networks, 4th ed., p. 91. Transferencia masiva de datos a/desde Azure (TeraBytes) Envío de unidades de disco duro SATA de 3,5’’ cifradas con BitLocker Importación: enviamos los discos con los datos a Azure, cargan los datos en una Cuenta de Almacenamiento y nos los devuelven Exportación: enviamos los discos vacíos y nos los devuelven con los datos que hemos solicitado Para envío masivo puede ser mucho más rápido y rentable que enviarlos por Internet Infraestructura como Servicio (IaaS) | Almacenamiento Gabriel Grajea Torrado · 28/10/2016

38 Máquinas Virtuales Se almacenan en discos VHD en formato HyperVSe pueden crear a partir de imágenes de la galería o de VHDs subidos por el usuario Windows a partir de Server 2008R2 Tamaños predefinidos para escalar verticalmente Posibilidad de crear Conjuntos de Disponibilidad (solo en creación) Posibilidad de crear Conjuntos de Escalado Herramientas de administración unificada Infraestructura como Servicio (IaaS) Gabriel Grajea Torrado · 28/10/2016

39 Diagrama de ArquitecturaEl disco temporal se almacena en una unidad física del host: Utilizar solo para el archivo de paginación y ficheros temporales, no de datos. Los ficheros pueden desaparecer al cambiar de host o reiniciar la máquina. Mejor una cuenta de almacenamiento diferente para los logs. Mejor instalar las aplicaciones en un disco de datos, no en el OS. No hay SLA para una máquina aislada. La replica de datos solo sirve para fallos de hardware. Por lo tanto, hay que hacer copias de seguridad. La máquina no gasta cuando está Desasignada, pero sí cuando está detenida. Infraestructura como Servicio (IaaS) | Máquinas Virtuales Gabriel Grajea Torrado · 28/10/2016

40 Infraestructura como Servicio (IaaS)Creación Máquina Virtual Infraestructura como Servicio (IaaS) Gabriel Grajea Torrado · 28/10/2016

41 Plataforma como ServicioMicrosoft Azure

42 Contenido Servicios en la Nube (Cloud Services)Aplicaciones en la Nube (App Service) Planes del Servicio de Aplicaciones (App Service Plans) Demo de Aplicación Web en la Nube Service Fabric Demos de Service Fabric Comparativa de Servicios de Computación Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

43 Servicios en la Nube (Cloud Services)Servicio totalmente administrado de ejecución de aplicaciones: Web rol: recibe peticiones externas a través de un endpoint, ej: HTTP. Hospedado en IIS Worker rol: no hospedado en IIS Se permite el acceso a la VM que hay por debajo Las actualizaciones del SO corren por cuenta de Azure De momento solo disponible en ASM Escalado sencillo Despliegue azul-verde (blue-green) No almacenar estado en las VM Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

44 Servicios de Aplicaciones (App Services)Aplicaciones Web (Web Apps): web propias o del Marketplace Puede incluir Trabajos Web (Web Jobs) Aplicaciones Móviles (Mobile Aps): backend para apps de móvil: Aplicaciones nativas y multiplataforma con Xamarin o Cordova Autenticación de usuarios Sincronización de datos sin conexión Notificaciones PUSH Aplicaciones Lógicas (Logic Apps): flujos de trabajo en la nube Conexión sencilla a diferentes APIs Repositorio de plantillas Conectores: Facebook, Dropbox, GitHub, … Aplicaciones de API (API Apps): hospedaje de API RESTful APS.NET Web API u otros lenguajes Compatibilidad integrada con Swagger Autenticación: AD, Facebook, Twitter, … Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

45 Plan de Servicio de Aplicaciones (App Service Plan)Máquinas virtuales que hospedan los Servicios de Aplicaciones Conjunto de características y funcionalidades compartidas por los servicios que contiene Tarifas: gratis, compartido, básico, standard y premium Las aplicaciones se escalan a nivel de plan: Cambio de nivel de tarifa Escalado vertical: tamaño de las máquinas virtuales Escalado horizontal: número de instancias Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

46 Servicio de AplicacionesAplicación Web Escalado Automático Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

47 Service Fabric Plataforma de sistemas distribuidos para aplicaciones orientadas a microservicios Se despliega en un cluster de MVs Enorme escalabilidad Alta disponibilidad Persistencia de estado Alta densidad de aplicaciones por máquina Versionado de aplicaciones Actualización gradual Ciclo de vida con estado sin tiempo de inactividad (zero “downtime”) Equilibrado automático de nodos Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

48 Arquitectura de MicroserviciosDividir el software por funcionalidades, no por capas. Servicios pequeños e independientes Código + configuración + estado Se controlan por versiones y se despliegan y escalan de manera independiente Nombres únicos para localizarlos Resistentes a fallos Monolítica en 3 Capas Microservicios User Interface User Interface Business Logic Data Business Logic Data Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

49 Plataforma de Service FabricAzure Windows Server Linux Hosted Clouds Service Fabric Private Clouds High Availability Hyper-Scale Hybrid Operations High Density Microservices Rolling Upgrades Stateful services Low Latency Fast startup & shutdown Container Orchestration & lifecycle management Replication & Failover Simple programming models Load balancing Self-healing Data Partitioning Automated Rollback Health Monitoring Placement Constraints Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

50 Ejemplos de Uso de Service FabricServicio Descripción Azure Database Scale-out relational database Azure DocumentDB No-SQL store for JSON documents Integrated with O365 Azure Power BI BI Pro Data Analysis Services Azure Networking Regional Network Manager (RNM) Azure Compute and Networking Resource Providers for Compute (CRP), Networking (NRP), Storage (SRP) Event Hubs Streaming messaging and event processing Service Bus Service Bus Resource Provider (SBRP) Intune Unified management of PCs and devices on the cloud. Cortana Personal assistant Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

51 Age of Ascent Plataforma como Servicio (PaaS) | Service Fabric | Ejemplos de Uso Gabriel Grajea Torrado · 28/10/2016

52 Age of Ascent Plataforma como Servicio (PaaS) | Service Fabric | Ejemplos de Uso Gabriel Grajea Torrado · 28/10/2016

53 Age of Ascent 32 Microservices web browser or deviceAvatar (stateless) AI Events Gaia (stateless) web browser or device Service Fabric Cluster 32 Microservices routing services Account Player Commerce Crew Alliance physics service aggregate services Spatial (In Space) Trade Inventory Production Navigation Comms game function services Plataforma como Servicio (PaaS) | Service Fabric | Ejemplos de Uso Gabriel Grajea Torrado · 28/10/2016

54 Tipos de MicroserviciosSin Estado (Stateless): O bien no tiene estado o bien el estado es almacenado externamente Por ejemplo: frontales web, enrutadores Con Estado (Stateful): Mantienen estado dentro de Service Fabric mediante Colecciones de Confianza El estado se sincroniza entre todas las replicas del microservicio Las replicas se distribuyen entre los nodos del cluster Los nodos del cluster se reparten entre: Dominios de Fallo (FD) Dominios de Actualización (UD) Por ejemplo: bases de datos, carrito de la compra Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

55 Despliegue de MicroserviciosApp1 App2 Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

56 Colecciones de ConfianzaLas Colecciones de Confianza (Reliable Collections) facilitan la construcción de servicios con estado Evolución de las colecciones de .Net para la nube: Collections Single machine Single threaded Concurrent Multi threaded Reliable Collections Multi machine Replicated (HA) Persistence (durable) Asynchronous Transactional Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

57 Microservicios con EstadoPaquete de Aplicación réplica réplica S S P S S P P = Primario S = Secundario Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

58 Replicación del EstadoLas lecturas se realizan en el primario Las escrituras son replicadas a los secundarios según el quorum establecido Ack Read Value Write P Ack Ack Ack Ack S S Write Write S S Write Write Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

59 Reconfiguración de las RéplicasTipos de reconfiguración: Fallo del primario Eliminar un secundario fallido Añadir una replica recuperada Construir un nuevo secundario Estados de replica: Ninguno Secundario inactivo Secundario activo Primario X Fallo P P S B S S X Fallo S S Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

60 Reconfiguración de NodosP P P P S S S S S S S S P S S S S P S S S S S S Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

61 Microservicio con EstadoService Fabric Microservicio con Estado Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

62 Actores de Confianza (Reliable Actors)Un actor es una unidad aislada e independiente de proceso y estado con ejecución uniproceso. Los actores pueden comunicarse entre si y crear más actores. Adecuado para aplicaciones con muchas pequeñas unidades de proceso independientes. El Actor Runtime activa automáticamente un actor la primera vez que recibe una solicitud para ese identificador de actor. MY ACTOR SERVICE MY SERVICE MY SERVICE METHODS MY REMOTING LISTENER MY SERVICE METHODS MY REMOTING LISTENER MY COMMUNICATION LISTENER MY COMMUNICATION LISTENER ACTOR SERVICE STATEFUL SERVICE ACTOR RUNTIME ACTOR REMOTING LISTENER RELIABLE STATE MANAGER ACTOR STATE LISTENER STATEFUL SERVICE BASE SERVICE CONTEXT STATE PROVIDER SERVICE FABRIC RUNTIME Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

63 Actualización Gradual (Rolling Upgrade)Sin perdida de servicio: “Zero downtime” Se realiza por etapas, en cada etapa se actualizan todos los nodos de un dominio de actualización. Durante la actualización el cluster puede contener una mezcla de versiones antiguas y nuevas ejecutándose simultáneamente, por lo tanto se debe mantener la compatibilidad hacia adelante y hacia detrás de las versiones Durante cada etapa de la actualización se comprueban las políticas de salud Modos de Actualización: Supervisado: En caso de Fallo: Rollback Invalidación Pasar a modo manual Automático sin supervisión Manual sin supervisión Plataforma como Servicio (PaaS) | Service Fabric Gabriel Grajea Torrado · 28/10/2016

64 Microservicio sin Estado Actores de Confianza Actualización GradualService Fabric Microservicio sin Estado Actores de Confianza Actualización Gradual Plataforma como Servicio (PaaS) Gabriel Grajea Torrado · 28/10/2016

65 Comparativa Servicios ComputaciónIaaS PaaS VMs y Conjuntos de Escalado de VMs Service Fabric Servicios en la Nube Servicios de Aplicaciones Mayor Control Rápido Desarrollo Microsoft Azure: Visión General de la Nube de Microsoft y Plataforma como Servicio Gabriel Grajea Torrado · 28/10/2016

66 Patrones de Diseño en la NubeEscrito por el Grupo de Patterns & Practices de Microsoft Identifica 8 áreas problemáticas en el desarrollo de aplicaciones en la nube: Disponibilidad Gestión de datos Diseño e implementación Mensajería Gestión y monitorización del sistema Rendimiento y escalabilidad Resiliencia Seguridad Explica los conocimientos básicos para 10 temas que son necesarios para aplicar los patrones de diseño Recoge 24 patrones de diseño Trae 10 aplicaciones de ejemplo de utilización de los patrones con código fuente incluido Patrones de Diseño en la Nube Gabriel Grajea Torrado · 28/10/2016

67 Compenting Consumers PatternPermite procesar múltiples mensajes de entrada concurrentemente optimizando la productividad, la escalabilidad, la disponibilidad y equilibrar la carga de trabajo. Cuando se produzcan picos de demanda, contestar síncronamente a las peticiones puede saturar el sistema provocando pérdida de servicio. Los mensajes que requieren mucho tiempo de proceso no bloquean el resto de peticiones. Las peticiones de entrada nunca se pierden aunque el sistema esté muy ocupado. Se puede escalar fácilmente aumentando las instancias “consumer”. Patrones de Diseño en la Nube | Ejemplo de Patrón de Diseño Gabriel Grajea Torrado · 28/10/2016

68 Conclusiones Microsoft Azure

69 Conclusiones Patrones de Diseño en la Nube Servicios con EstadoActores de Confianza Servicios con Estado Servicios sin Estado Colecciones de Confianza Servicios de Confianza Service Fabric Plataforma como Servicio (PaaS) Infraestructura como Servicio (IaaS) Microsoft Azure Computación en la Nube Conclusiones Gabriel Grajea Torrado · 28/10/2016

70 Dónde Aprender Más Documentación de Azure: https://azure.microsoft.com/es-es/documentation Microsoft Press: 10 libros gratuitos para descargar sobre Azure Microsoft Virtual Academy: https://mva.microsoft.com Technet Virtual Labs: https://technet.microsoft.com/es-es/virtuallabs Channel 9: https://channel9.msdn.com Eventos de Microsoft, como Global Azure Bootcamp: Libro de Patrones de Diseño para la Nube: es/library/dn aspx Conclusiones Gabriel Grajea Torrado · 28/10/2016

71 Referencias www.semicrol.es www.xataka.com www.fundanet.es azure.microsoft.com (Artículo de Brandon Butler) blogs.technet.microsoft.com mva.microsoft.com msdn.microsoft.com/es-es/library/dn aspx channel9.msdn.com natick.research.microsoft.com open.microsoft.com build.microsoft.com (Presentaciones de Mark Fussell, Vipul Modi y Gopal Kakivaya) wikipedia.org (Diagrama de nube de Sam Johnston. Andrew S. Tanenbaum) fossbytes.com myignite.microsoft.com (Presentación de Jeffrey Richter y Vaclav Turecek) computerhoy.com Conclusiones Gabriel Grajea Torrado · 28/10/2016

72 ¡GRACIAS A TODOS!