Descubriendo windows azure

2,094 views

Published on

Descubriendo windows azure

Published in: Technology
  • Be the first to comment

Descubriendo windows azure

  1. 1. Windows Azure Introducción a la “nube”
  2. 2. Windows Azure. Javier Suárez Ruiz @jsuarezruiz
  3. 3. Índice ¿Qué vamos a ver? Arquitectura y Herramientas Roles Storage Virtual Machines WebSites Media Services Migración de Aplicaciones Web Preguntas y Respuestas
  4. 4. Para Microsoft, la nube es sencillamente utilizar la computación para permitir escalabilidad y conectar una gran variedad de dispositivos.
  5. 5. Casos de uso
  6. 6. Patrones Cloud Computing Computación Inactividad Aplicaciones que trabajan y se paran de manera predecible, alternando periodos de inactividad con periodos de trabajo intenso. No es posible determinar cuándo van a producirse ni de qué dimensión serán, por lo que dimensionar la infraestructura apropiada no es posible con el esquema tradicional. ComputaciónComputación Se sabe de antemano que la demanda va a multiplicarse enormemente en determinadas épocas. Con una implementación tradicional se desperdiciaría capacidad y generaría gran complejidad para el departamento de TI. Computación El éxito de servicios necesita poder crecer / escalar No se puede provisionar de hardware lo suficientemente rápido
  7. 7. Ventajas del Cloud
  8. 8. Desventajas del Cloud
  9. 9. Cloud Computing
  10. 10. Windows
  11. 11. Datacenters
  12. 12. Windows Azure para desarrolladores .Net
  13. 13. ¿Qué es un servicio Cloud?
  14. 14. ¿Qué podemos ejecutar?
  15. 15. En tiempo de ejecución cada Rol puede ejecutar una o más instancias Una instancia de rol es un conjunto de código, configuración y datos locales, implementado en una máquina virtual. Los Roles se definen en un servicio hospedado Un rol especifica: Tamaño de la VM Communication Endpoints Local storage resources etc.
  16. 16. Llamado por el Fabric al inicio; permite realizar tareas de inicialización. Reporta el estado Busy al balanceador de carga mientras no devuelva true. Lógica principal – puede hacer cualqueir cosa, típicamente un ciclo infinito. Nunca debería terminarse. OnStop() Llamado cuando el rol va a ser apagado (salida exitosa) 30 segundos para hacer limipieza.
  17. 17. Todos los roles extienden de RoleEntryPoint Los roles indican su estado medinte RoleEnvironment
  18. 18. .NET 3.5 sp1 / 4.0 / 4.5 Orientado a procesamineto en segundo plano y hosting de servicios no-HTTP.
  19. 19. Http(s) Web/Worker Hybrid Opcionalmente puede implementar RoleEntryPoint
  20. 20. Service Definition (*.csdef) Service Configuration (*.cscfg) El código se empaqueta bajo la extensión (*.cspkg) Encrypted(Zipped(Code + *.csdef)) == *.cspkg
  21. 21. Azure Data Management
  22. 22. Azure Data Management
  23. 23. SQL Server en una máquina Virtual
  24. 24. Escenarios comunes
  25. 25. Azure Data Management
  26. 26. Windows Azure SQL Database
  27. 27. Herramientas familiares
  28. 28. Federación SQL
  29. 29. SQL Reporting
  30. 30. SQL Data Sync SQL Server (On-Premises)
  31. 31. Azure Data Management
  32. 32. Lenguajes, lenguajes, lenguajes…
  33. 33. Azure Table Storage • PaaS • Clave-Valor • REST API • Geo replication • Simple • Altamente escalable • Costo-efectivo • No-relacional • Jerárquico
  34. 34. Table Storage. Conceptos básicos
  35. 35. Azure Data Management
  36. 36. Azure Blob Storage • Almacenamiento no estructurado • Managed service • Cientos de gigabytes por blob • 100TB por cuenta de almacenamiento • REST API • Geo-replication para la recuperación de desastres
  37. 37. Conceptos básicos de Blob Storage
  38. 38. SQL Database. Tarifas de facturación Tamaño Price Per Database Per Month 0 to 100 MB Flat $4.995 > 100 to 1 GB Flat $9.99 > 1GB to 10 GB $9.99 for first GB, $3.99 per additional GB > 10 GB to 50 GB $45.954 for first 10 GB, $1.998 for each additional GB > 50 GB to 150 GB $145.874 for first 50 GB, $0.999 for each additional GB
  39. 39. Windows Azure. Máquinas Virtuales
  40. 40. Disponibilidad durante la Vista Previa
  41. 41. Tamaños de Máquinas Virtuales Cada disco persistente de datos puede ser de 1TB Tamaño VM CPU Memoria Ancho de Banda # Discos de Datos Extra Small Shared 768 MB 5 (Mbps) 1 Small 1 1.75 GB 100 (Mbps) 2 Medium 2 3.5 GB 200 (Mbps) 4 Large 4 7 GB 400 (Mbps) 8 Extra Large 8 14 GB 800 (Mbps) 16
  42. 42. Aprovisionamiento Inicial en la Nube >_ Cloud Boot VM
  43. 43. Creando su propio Servidor / VHD
  44. 44. Virtual Machines • Control total sobre la imagen del SO. • Posibilidad de subir sus imágenes personalizadas de WS08R2 Enterprise. • Un operador puede reiniciar, re-imagear y acceder vía Remote Desktop • Mantiene el beneficio de la gestión automatizada de servicio, incluyenedo las mejoras al modelo de servicio descriptas en las diapositivas siguientes.
  45. 45. Data Center
  46. 46. VM con unidad persistente
  47. 47. VM con unidad persistente
  48. 48. VM con unidad persistente
  49. 49. VM con unidad persistente
  50. 50. > 500 miles Replicación
  51. 51. Windows Azure Web Sites web sites en segundos start simple Comienzo simple y rápido, escalando según necesidades. code smart Con asp, asp.net, php or node.js, develop bajo Windows, OSX o Linux go live Despliegue en segundos. Fácil de supervisar.
  52. 52. Multi-tenant. Cuotas diarias Multi-tenant. Sin cuotas Dedicated VMs. Sin cuotas
  53. 53. Windows Azure Web Sites
  54. 54. Start Simple Comience con 10 sitios web gratuitos Se puede crear nuevos sitios en cuestión de segundos Fácil de administrar Balanceo de carga automático y almacenamiento compartido en todas las instancias Escala hacia fuera o hacia arriba a las instancias reservadas para mejorar el rendimiento y la escala
  55. 55. Code Smart Utilice ASP.NET, ASP, PHP, o Node.js SQL Azure o bases de datos MySQL Desarrollo con VS y WebMatrix Compatible con cualquier herramienta de desarrollo Web en cualquier plataforma (Windows, OSX, Linux)
  56. 56. Go Live Integrado con Team Foundation Server (TFS) y Git Acceso rápido a los registros de solicitudes, peticiones y diagnósticos
  57. 57. Popular open source apps Se pueden lanzar con pocos clic plataformas como WordPress, Joomla!, Drupal, DotNetNuke o Umbraco Continuous development Despligue directo desde repositorio, usandoGit o Team Foundation Service. Modern web apps Perfecto si su aplicación se compone de lado del cliente marcado y scripting, scripting del lado del servidor y base de datos. Escenarios Web Sites Apps that require advanced administration Aplicaciones en la nubeque requieran de acceso como admin, remote desktop o permisos elevados Cloud Services Multi-tier applications Aplicaciones en la nube con múltiples capas (ej. caching middle tier, asynchronous background processes like order processing) usando Web y Worker Roles Apps that require advanced networking Windows Azure Connect o Windows Azure Virtual Network Porting existing line of business apps Eliga una imagen de la galería o suba su propioVHD. Enterprise server applications Ejecute sus aplicaciones empresariales existentes en la nube, como SQL Server, SharePoint Server o Active Directory. Windows o Linux Compatibilidad con Windows Server, junto con versiones de la comunidad y comerciales de Linux. Conecte máquinas virtuales con servicios en la nube para aprovechar al máximo los servicios PaaS. Virtual Machines
  58. 58. Exploding
  59. 59. Expansión compleja
  60. 60. Rápido y sencillo Media Services permite a las empresas de contenidos y a proveedores de soluciones una forma más rápida y fácil de construir los flujos de trabajo de medios en Windows Azure, una plataforma en la nube escalable. Abierto y flexible Media Services permite soluciones personalizadas para crear, gestionar y distribuir el contenido en todos los dispositivos y plataformas que le interesan. Ahorra costes Media Services proporciona una infraestructura escalable, fiable y rentable que le permite centrarse en su negocio principal y las características que diferencian sus productos. Windows Azure Media Services
  61. 61. ¿Qué queremos decir por “servicios de medios”?
  62. 62. Media Services APIs y SDKs REST API para todas las plataformas, utilizando OData 3.0 Puede contar con sus propias bibliotecas de cliente utilizando la API REST y llamadas HTTP estándar (GET, POST, PUT, DELETE) Link: http://msdn.microsoft.com/en-us/library/hh973618 .NET library Link: http://www.windowsazure.com/en-us/develop/net/how-to-guides/media-services/ Nuget package: https://nuget.org/packages/windowsazure.mediaservices En un futuro - JAVA
  63. 63. Preview Release: Visión General • On-demand media workflows • Consumo mediante HTTP y subida mediante UDP via Aspera • Encoding mediante Windows Azure Media Encoder y/o Partner Encoders – Partner “Media Processor” .NET SDK para habilitar la integración con 3rd party (Digital Rapids) • Conversiones mediante IIS Transform Manager – MP4-To-Smooth – Smooth-to-HLS conversion • Encryption packaging with PlayReady, license delivery* • On-demand con soporte a HLS, Flash y Smooth Streaming • Streaming via Azure CDN o 3rd Party CDN • ODATA REST API y SDK para .NET
  64. 64. Juegos Olímpicos de Londres 2012 • • • • • • • • •
  65. 65. ¿Y ahora qué? ¿?
  66. 66. Mover una aplicación a la nube • Primer paso: – Lograr que la aplicación se ejecute en la nube sin perder ninguna funcionalidad • Segundo paso: – Mejorar la aplicación haciendo uso de las funcionalidades disponibles en Azure
  67. 67. Primer paso: Llegar a la nube • 1) Plantear el diagrama con la estructura de la aplicación actual
  68. 68. Primer paso: Llegar a la nube • 1) Plantear el diagrama con la estructura de la aplicación actual – Frontal Web
  69. 69. Primer paso: Llegar a la nube • 2) Establecer los objetivos y requerimientos – Que acceda a los mismos datos que versión on-premises – Quitar dependencias con AD – ¿Que información de diagnostico deseamos que obtenga? – ¿Cómo realizar la autenticación y seguridad? – ……..
  70. 70. Primer paso: Llegar a la nube • 3) Plantear la arquitectura de a aplicación tras migrar a la nube
  71. 71. Primer paso: Llegar a la nube • 4) Analizar la aplicación existente para determinar que piezas necesitamos cambiar al migrar a la nube On Premises Azure Código de la aplicación Trasladarlo a roles SQL Server SQL Azure Enterprise Library Application Blocks Enterprise Library Applications Blocks ASP.NET Profiles (Profile Provider que utiliza SQL Server) Guardar información de Profile en: • SQL Azure • Windows Azure Table Storage Autenticación y Autorización mediante Active Directory Autenticación y Autorización basada en Claims
  72. 72. Primer paso: Llegar a la nube • 5) Empezar a migrar – Crear el «web role» – Realizar modificaciones en web.config para utilizar nuevo sistema de autenticación – Crear las nuevas BD’s o sistemas de almacenamiento • SQL Azure • Windows Azure Storage – Migrar los datos – Modificar el código de la aplicación para que vaya a buscar los datos a la nueva ubicación • Modificar string de conexión para que apunte a BD en SQL Azure • Modificar código de acceso a datos para que utilice Azure Storage
  73. 73. Primer paso: Llegar a la nube • 6) Establecer los métodos de configuración y despliegue – Nº de instancias de role, Upgrade Domains, Fault Domains – Crear scripts de despliegue – Utilizar «Mock» Issuer – ….
  74. 74. Primer paso: Llegar a la nube • 7) Analizar los costes de la aplicación actual y como podríamos mejorar – En menor coste • En base a que conceptos me van a cobrar y cuanto • Estimar los costes – Mejorar rendimiento y escalabilidad
  75. 75. Segundo paso: Mejorar la aplic. • Automatizar el despliegue – Crear Task de MSBuild que llamen a scripts de PowerShell • Usar Windows Azure Storage en vez de SQL Azure – Evaluar la posibildad de utilizar Azure Storage en vez de SQL Azure (más barato) – ¿Qué cambios sería necesario realizar en el código de la aplicación?
  76. 76. Segundo paso: Mejorar la aplic. • Migrar los procesos de servicio en background que tengamos on-premises a worker roles de Azure On premises Cloud
  77. 77. Segundo paso: Mejorar la aplic. • Sacar el máximo partido del Worker Role – Dependiendo de sus necesidades de computación – Periodicidad con la que se ejecuta
  78. 78. PowerShell Automatización
  79. 79. ¿Windows Azure Mobile Services?
  80. 80. Tamaños de instancias Windows Azure Unidades de cómputodefinidas Tamaños variables de instancia para manejar las cargas complejas de trabajo
  81. 81. MSDN • Acceso gratuito a Windows Azure Professional y Premium. • Diseñado para acelerar el desarrollo. • Se requiere una tarjeta de crédito por motivos de seguridad. :
  82. 82. Preguntas y respuestas. ¿Dudas? P&R
  83. 83. Windows Azure. Gracias por vuestro tiempo!

×