Plataforma de computacion en la nube

49,010 views

Published on

En esta presentación vemos conceptos sobre Cloud Computing y su implementación en Windows Azure y SQ Azure.

Saludos,

Ing. Eduardo Castro, PhD
http://ecastrom.blogspot.com
http://comunidadwindows.org

Published in: Technology, Business
12 Comments
48 Likes
Statistics
Notes
No Downloads
Views
Total views
49,010
On SlideShare
0
From Embeds
0
Number of Embeds
31,226
Actions
Shares
0
Downloads
2
Comments
12
Likes
48
Embeds 0
No embeds

No notes for slide
  • Not new technology
  • Cloud diagram idea inspired by Maria Spinola 8-31-09
  • Artículo de David Chappell: http://download.microsoft.com/download/e/4/3/e43bb484-3b52-4fa8-a9f9-ec60a32954bc/Azure_Services_Platform.pdf
  • We could bring to life the valueprop by putting case study in the slide itself
  • Virtualized Computation provides massive application scalability. Customers can build a combination of web and worker roles, and those roles can be automatically replicated as needed to scale the applications and computational processing power.•Storage Services allow customers to scale to store any amount of data – in any format – for any length of time, only paying for what they use or store.•Services Management takes place in the Fabric Controller, the core of Windows Azure Services Management. The Fabric Controller is where load balancing and application scaling take place. Additionally, the virtualized computational capabilities are performed here.•Security and Control with storage encryption and access authentication as well as over-the-wire encryption secures your data and application. Industry certification is a core part of the Windows Azure roadmap, seeking certifications on compliance with SOX, SAS70, and others. State-of-the-art data centers located around the would – or on your site – host your applications and data securely anywhere you desire, accessible from everywhere you allow.
  • Plataforma de computacion en la nube

    1. 1. Plataformas de Computación en la Nube<br />Ing. Eduardo Castro, PhD<br />ecastro@grupoasesor.net<br />
    2. 2. Agenda<br />Plataforma de computación en la nube<br />Conceptosbásicos<br />Seguridad de computación en la nube<br />Arquitecturas de computación en la nube<br />Aplicacionespreparadaspara la computación en la nube<br />Introducción a servicios de computación en la nube Windows Azure Platform<br />
    3. 3. Evolución de la computación<br />40’s<br />70’s<br />80’s<br />Now<br /><ul><li>Dispersión geográfica
    4. 4. Colaboración
    5. 5. Alto nivel de interconexión entre los usuarios
    6. 6. Crecimiento de las plataformas web
    7. 7. Presión en las empresas por crear centros de datos</li></li></ul><li>Tecnologías relacionadas con Computación en la nube<br />Saas<br />Iaas<br />Paas<br />Widget<br />mash up<br />Virtualization<br />SOA<br />REST<br />Grid computing: Hw resources sharing<br />Web 2.0<br />Internet service Bus<br />
    8. 8. Las tendencias de los negocios cambian la tecnología<br />el negocio se transforma…<br />Mientras la economía<br />experimenta cambios…<br />creando cambios en la tecnología.<br />Tendencias de la economía<br /><ul><li>Recortar costos operaciones y reducir inversiones de capital
    9. 9. Aumentar la competitividad con menor inversión</li></ul>Tendencias del negocio<br /><ul><li>Enfocarse en las actividades de valor agregado
    10. 10. Mejorar la agidad para matenerse competitivo</li></ul>Tendencias de la tecnología<br /><ul><li>Cambio de la tecnología de la información hacia la tecnología del negocio
    11. 11. La tecnología reduce la complejidad de la infraestructura
    12. 12. Globalización</li></li></ul><li>Alineamiento con el negocio es más importante que nunca<br />Control de <br />costos<br />Mayor <br />Innovación<br />Mejorar<br />Productividad<br />Capturar y crear nuevas oportunidades<br />Personal más<br />productivo<br />Balance de costosoperacionales<br />
    13. 13. Transformar hacia un negocio de “servicios”<br />Administración de servicios<br /> Casos de negocio<br />Modelos de compra<br />Aumentar agilidad, retorno de la inversión<br />Modelos de pago flexibles<br />Reducir la complejidad y costos de administración de servicios<br />Entendiendo las implicaciones<br />Aspectos<br />técnicos<br />Negocios<br />
    14. 14. Problemas actuales<br />Aplicaciones aisladas<br />Dimensionamiento de servidores<br />Inversiones<br />Silos =<br />Inflexibility<br />
    15. 15. Sueño o pesadilla?<br />Crecimiento inesperado de clientes<br />
    16. 16. Demandas estacionales<br />“Cada año, tomamos el minuto con mayor demanda de la hora de mayor uso durante el día de mayor actividad y con ese dato planificamos la capacidad de los sistemas”*<br />-- Scott Gulbransen<br />Jefe de Prensa de Intuit <br />* http://news.com.com/2100-1038_3-6177341.html<br />
    17. 17. Aspectos en el desarrollo de aplicaciones<br />70% del desarrollo web no es programación:<br /> Centros de datos<br /> Ancho de banda / Electricidad / Sistemas de enfriamiento<br /> Operaciones<br /> Personal<br />La escalabilidad es difícil y requiere inversiones altas:<br />Inversiones previsoras<br />Invertir antes de presentarse los crecimiento de demanda<br />La carga de demanda puede ser impredecible<br />
    18. 18. La solución: computación web escalable<br />Escalabilidad de capacidad por demanda<br />Convertir los costos fijos en costos flexibles<br />Contar siempre con disponibilidad<br />Confiabilidad en el servicio<br />Modelos de creación de aplicaciones simples y conocidos<br />Reducir el tiempo de puesta en producción<br />Enfocarse en el producto y sus funcionalidades<br />
    19. 19. Conceptos generales de computación en la nube<br />
    20. 20. El valor de la computación en la nube<br />
    21. 21. Crecimiento de demanda en las aplicaciones?<br />Usuarios<br />Capacidad<br />No utilizada<br />Comprar más de todo<br />Servidores<br />Cambiar la arquitectura para soportar escalabilidad<br />Comprar servidor de BD más grande<br />Agregar algunos servidores web<br />
    22. 22. Patrones óptimos para computación en la nube<br />“On and Off “ <br />“Crecimientorápido“ <br />Periodo<br />de inactividad <br />Recursos<br />Recursos<br />Utilización<br />Promedio<br />Uso promedio<br />Tiempo<br />Tiempo<br />Patrones On & off (ej. Trabajo en lotes)<br />La capacidad sobre dimensionada no es utilizada<br />Entrar en producción puede ser difícil<br />Los servicios exitosos necesitan crecer y escalar<br />Mantenerse al día con el crecimiento es un reto para TI <br />Despliegue y entrada en producción es complejo<br />“Crecimiento inesperado“ <br />“Crecimiento predecible“ <br />Recursos<br />Recursos<br />Usopromedio<br />Uso promedio<br />Tiempo<br />Tiempo<br />Crecimiento de demanda inesperado<br />Picos inesperados afectan el rendimiento<br />No se puede adquirir hardware solo para casos extremos<br />Servicios con múltiples tendencias estacionales<br />Se presentan picos debido a la demanda<br />Complejidad de TI y recursos no utilizados<br />
    23. 23. Origen del término “Computación en la nube”<br />“Proviene desde los días en que Internet se ve como una nube … no nos preocupamos por la infraestructura, los correos electrónicos llegan a través e la nube.” – Kevin Marks<br />Primera nube alrededor de los conceptos de redes (abstracción de TCP/IP)<br />Segunda nube alrededor de los documentos (abstracción de datos en la WWW)<br />La nube actualmente abstrae la complejidad de la infraestructura de servidores, datos, aplicaciones y plataformas heterogéneas<br />
    24. 24. Qué es la ‘nube’?<br />La nube – metáfora para Internet<br />‘Computación en la nube’<br />Explotar los recursos ‘que está ahí’<br />Poder computacional escalable<br />Administración de datos y almacenamiento<br />Habilitar servicios<br />Aplicaciones<br />
    25. 25. Qué es computación en la nube?definición inicial <br />“.. Un amplioconjunto de servicios basados en web que permiten que los usuariosobtenganunagamavariadade capacidadesfuncionalesbajo el modelo“pagarpor el uso”, lo cualanteriormenterequería grandes inversiones en hardware, software y habilidades especiales de implementación”<br /> Irving Wladawsky-Berger<br />Chairman Emeritus, IBM Academy of Technology <br />
    26. 26. Quétrae de nuevo?<br />El modelo de recursos computacionales infinitos bajo un modelo por demanda<br />No requiere inversiones iniciales por parte de los usuarios<br />Se paga por el uso de los recursos a medida que se necesita o consumen<br />(extraído de “Above the Clouds: A Berkeley View of Cloud Computing”)<br />
    27. 27. Qué debe proveer la nube?<br />Debe proveer características tales como:<br />Ambiente de ejecución abstracto<br />Sistema de almacenamiento<br />Aprovisionamiento de recursos<br />Ambientes de programación<br />Además: Utilitycomputing<br />Disponible 24/7<br />Se paga por el consumo<br />Administración simple y transparente<br />
    28. 28. Qué ventajas me brinda la nube?<br />Administración de servicio automatizado<br />Usted define las reglas y provee su código<br />La plataforma se apega a las reglas: instala, monitorea y administra su servicio<br />Un ambiente de ejecución poderoso<br />Provee todo el hardware: servidores; balanceadores de carga, firewalls; …<br />Administración de la ejecución y de la virtualización<br />Almacenamiento escalable<br />BLOBS, tablas, colas, base de datos, …<br />Un ambiente de desarrollo poderoso y conocido<br />
    29. 29. Uso de lasaplicaciones en la nubeAlgunosejemplos<br />Unaempresapodría necesitar computación elástica<br />10 instancias 24/7/365<br />1000 instanciasdurante 90 minutos 5 veces al año<br />Un departamentopodríanecesitaragilidad sin afectar a TI<br />Procedimientos de implementaciónmáságiles<br />
    30. 30. Que NO es la ‘Nube’?<br />No es únicamente...alojamiento de aplicaciones<br />Plataformas en la nube<br />Modelo de pago por uso y modelo de suscripción<br />No es únicamente... ‘software como un servicio’<br />No es únicamente una aplicación web alojada remotamente<br />No es únicamente...infraestructura de un tercero<br />Sobrevivir a la Ley de Moore<br />No es únicamente... almacenamiento administrado<br />Ambientes híbridos<br />No es únicamente...un bus de servicios<br />
    31. 31. Qué SI es la ‘Nube’?<br />...es todo esto y la habilidad de construir, implementar, utilizar y administrar aplicaciones que aprovechan y explotan el poder computacional onpremises y off premises<br />
    32. 32. La nube está en todo lugar<br />A medida que la tecnología inalámbrica y las comunicaciones son más poderosas y económicas, surgen más objetos que se conectan directamente a la nube<br />
    33. 33. Crecimiento esperado<br />El cremiento esperado de computación en la nube<br />80% de la compañías en Fortune 1000 invertirán para utilizar servicios en la nube y el 30% invertirá en infraestructura<br />Gartner<br />En este momento los cinco principales motores de búsqueda poseen 2.000.000 de computadoras<br />2012<br />2011<br />Mercado:<br />42 billonesIDC<br />95 billonesMerrylLinch<br />2009<br />33% de la industria de TI está en nube<br />Gartner<br />Data Center de Microsoft en Chicago: 610.000 servidores<br />
    34. 34. Definición formal de Computación en la Nube<br />La computación en la nube es modelo que permite tener acceso a un conjunto de recursos computaciones compartidos, de una forma rápida y sencilla, los cuales pueden ser utilizados en producción con un mínimo esfuerzo administrativo y con poca interacción con el proveedor de servicios. Dentro de estos recursos se encuentran redes, servidores, almacenamiento, aplicaciones y servicios. <br />Este modelo promueve la disponibilidad y está compuesto de cinco características esenciales y cuatro modelos de implementación.<br />NIST, Information Technology Laboratory<br />
    35. 35. Qué está en la ‘Nube’?<br />La Nube<br />Aplicación “Estándar”<br />Una aplicación que adquiero “off theshelf” y ejecuto en mi infraestructura<br />Aplicación<br />“Estándar”<br />Alojada<br />Una aplicación que adquiero “off theshelf” y ejecuto en sitio de hospedaje<br />“Estándar”<br />que utiliza la nube<br />Una aplicación que adquiero y se aloja en la plataforma de la nube<br />“Software como servicio”<br />Una aplicación alojada que se adquiere de un proveedor como un servicio<br />Comprar<br />Construir vs. Comprar<br />Aplicación<br />“Personalizada”<br />Una aplicación que se desarrolla y ejecuta internamente<br />Aplicación<br />“Personalizada”<br />Alojada<br />Una aplicación desarrollada internamente y que se ejecuta en un sitio de hospedaje<br />“Personalizada”<br />Que utiliza la nube<br />Una aplicación desarrollada internamente que utiliza la plataforma de la nube<br />“Plataforma como un servicio”<br />Un ambiente de desarrollo y ejecución que se adquiere de un proveedor<br />Construir<br />
    36. 36. Características fundamentales de computación en la nube<br />Servicio auto gestionado bajo demanda <br />Acceso global<br />Conjunto de recurso disponibles<br />Independencia de localización geográfica<br />Elasticidad rápida<br />Servicio medible y tarifable<br />NIST, Information Technology Laboratory<br />
    37. 37. Modelos de servicios en la nube<br />Cloud Software as a Service (SaaS)<br />Se utilizan las aplicaciones del proveedor a través de la red<br />Cloud Platform as a Service (PaaS)<br />Implementar las aplicaciones desarrolladas internamente en la nube del proveedor<br />Cloud Infrastructure as a Service (IaaS)<br />Alquilar procesamiento, almacenamiento, capacidad de red y otros recursos computaciones<br />
    38. 38. Arquitecturas de los modelos de servicio<br />
    39. 39. Modelos de despliegue <br />Nube privada<br />Implementada internamente o alquilada<br />Nube Comunitaria<br />Infraestructura compartida para una comunidad en específico<br />Nube Pública<br />Se comercializa a las empresas, infraestructura a gran escala<br />Nube híbrida<br />Composición de una o más nubes<br />
    40. 40. Public Cloud<br />Nubeprivada<br />App1<br />App1 & 2<br />Nivel de servicio<br />NubePrivada<br />Dept A<br />Dept B<br />
    41. 41. Nubeprivada y pública<br />Public Cloud<br />App4<br />Nubepública<br />Nivel de servicio<br />App1<br />App2 & 3<br />Nivel de servicio<br />NubePrivada<br />Dept A<br />
    42. 42. La nube<br />NubeDedicada<br />Nube Pública<br />Seguridad<br />Federada en la nube<br />Publica en la nube o internamente<br />Nube<br />Privada<br />Internacional<br />Corporaciones<br />
    43. 43. Características comunes de la computación en la nube<br />Escala masiva<br />Homogeneidad<br />Virtualización<br />Computación elástica<br />Distribución geográfica<br />Orientada a servicios<br />Tecnologías avanzadas de seguridad<br />
    44. 44. Computación en la nube<br />Nubeshíbrida<br />Modelos de<br />implementación<br />NubeComunitaria<br />NubePública<br />Modelos de<br />servicio<br />NubePrivada<br />Características<br />esenciales<br />Software comoServicio (SaaS)<br />PlataformacomoServicio (PaaS)<br />InfraestructuracomoServicio(IaaS)<br />Bajodemanda - autogestionado<br />Características<br />comunes<br />Escala Masiva<br />ComputaciónElástica<br />Acceso Global<br />Elasticidad<br />Homogeneidad<br />DistribuciónGeográfica<br />Virtualización<br />Orientación a Servicios<br />Conjunto de Recursos<br />ServicioMedible<br />Hardware de bajocosto<br />SeguridadAvanzada<br />
    45. 45. Beneficios de computación en la nube<br />La computación en la nube crea nuevas oportunidades<br />Administración de los cambios dinámicos en la demanda<br />No se aplica en todos los casos<br />La nueva puede cambiar a las empresas<br />Reduce el tiempo desde la creación de la idea hasta su realización<br />No se debe sobreestimar<br />La creación de sistemas distribuidas escalables es difícil<br />Las plataformas de computación en la nube reduce dicha complejidad<br />
    46. 46. Principales retos de la computación en la nube<br />
    47. 47. Seguridad en la nube<br />Aspectos importantes a considerar: <br />confianza, múltiples clientes, encriptación, complimiento con estándares y aspectos legales<br />Lasnubes son sistemascomplejosmasivosquepuedenserreducidos a primitivas simples que son replicadas miles de veces en hardware común<br />La seguridad en la nube es manejable<br />Existen tanto ventajas como desventajas<br />
    48. 48. Ventajas con respecto a seguridad<br />La homogeneidad de la nube hace que la auditoría y pruebas de la seguridad sean más sencillas de realizar<br />La nube permite que se automatice la administración de la seguridad<br />Redundancia y alta disponibilidad<br />Prevención y recuperación ante desastres<br />
    49. 49. Principales retos de la seguridad<br />Confianza en el modelo de seguridad del proveedor<br />Contar con soporte para realizar investigaciones<br />Responsabilidad indirecta de administración<br />Las implementaciones propietarias son difíciles de evaluar<br />Pérdida del control físico<br />
    50. 50. Principales componentes de la nube<br />Servicios de aprovisionamiento<br />Servicios de almacenamiento de datos<br />Infraestructura de Procesamiento<br />Servicios de soporte<br />Seguridad de la red y seguridad de perímetro<br />Elementos elásticos: almacenamiento, procesamiento y redes virtuales<br />
    51. 51. Servicios de aprovisionamiento en la nube<br />Ventajas<br />Rápida recuperación y recreación de los servicios<br />Posibilita la disponibilidad<br />Instalar en múltiples centros de datos y múltiples instancias<br />Capacidades de redes globales<br />Retos<br />Impacto en caso de suspensión de los servicios de aprovisionamiento<br />
    52. 52. Servicios de almacenamiento en la nube<br />Ventajas<br />Fragmentación de datos y escalabilidad<br />Replicación automática<br />Zonas de aprovisionamiento de datos (ej, por país)<br />Encriptación local y durante la transmisión<br />Retención automática de datos<br />
    53. 53. Servicios de almacenamiento en la nube<br />Retos<br />Aislamiento de la administración / datos de múltiples clientes<br />Controlador del almacenamiento<br />Un único punto de falla / está la infraestructura comprometida?<br />Exposición de datos y almacenamiento en gobiernos extranjeros<br />
    54. 54. Servicios de soporte<br />Ventajas<br />Controles de seguridad (e.j., autenticación, bitácoras, firewalls…)<br />Retos<br />Integración con las aplicaciones corporativas<br />Necesidad de acreditar los servicios de soporte<br />Actualización inmediata del código<br />
    55. 55. Seguridad de la red y de perímetro<br />Ventajas<br />Protección contra ataques de denegación de servicio distribuidos<br />Seguridad en las redes<br />Seguridad de perímetro (IDS, firewall, autenticación)<br />Retos<br />Creación de zonas de seguridad virtuales con movilidad de las aplicaciones<br />
    56. 56. Ventajas de seguridad en la nube<br />Fragmentación, dispersión y replicación de datos<br />Personal de seguridad dedicado<br />Mayores inversiones en seguridad de infraestructura<br />Tolerancia a fallas y confiabilidad<br />Mayor elasticidad<br />Protección contra ataques de red<br />
    57. 57. Ventajas de la seguridad en la nube<br />Cumplimiento con estándares internacionales<br />Soluciones de recuperación ante desastres<br />Detección en tiempo de real de ataques al sistema<br />Rápida reconstrucción de servicios <br />Capacidades de redes globales<br />
    58. 58. Retos de la seguridad en la nube<br />Datos dispersos y leyes internacionales de privacidad<br />EU Data ProtectionDirective<br />U.S. Safe Harbor program<br />Almacenamiento de datos en un país extranjero<br />Políticas de retención de datos<br />Necesidad de aislamiento de la administración<br />Múltiples empresas compartiendo la misma infraestructura<br />Necesidad de bitácoras<br />Aspectos de propiedad de los datos<br />Garantías de calidad de servicio<br />
    59. 59. Retos de la seguridad en la nube<br />Las nubes son un punto atractivo para los hackers<br />Posibilidad de fallos masivos de red y conectividad<br />Encriptación de datos en la nube<br />Encriptación del acceso a las interfaces de control de recursos<br />Encriptación del acceso administrativo a las instancias que residen en la nube<br />Encriptación del acceso a las aplicaciones<br />Encriptación de los datos dentro de la nube<br />Seguridad de las Nubes Privadas vs Nubes Públicas<br />
    60. 60. Consideraciones Adicionales<br />Consideraciones de mover datos privados a la nube<br />Contratos y políticas de privacidad<br />Uso de SLAs en la nube<br />Planes de contingencia y recuperación ante de desastres de las implementaciones en la nube<br />Cumplimiento de normas internacionales<br />FISMA. Federal Information Security Management Act <br />HIPAA. Health Insurance Portability and Accountability Act  <br />SOX. Sarbanes–Oxley Act<br />PCI. PCI Security Standards Council<br />SAS 70 Audits<br />
    61. 61. Arquitectura de aplicaciones en la nube<br />
    62. 62. Arquitectura de alta escalabilidad<br />Intelligent Network Load Balancer<br />Network Activation<br />M Tiers of N stateless machines w/ Forward Caching<br />Stateless ‘Worker’ Machines<br />Queue Activation<br />Shared Filesystem<br />Partitioned Relational DB<br />Async Dispatch<br />Queue<br />‘Monolithic’<br />State Tier<br />
    63. 63. Arquitectura orientada a la nube<br />Roles de Windows Azure<br />AplicacionesCliente<br />Aplicación Silverlight<br /><ul><li> Funcionalidades de la aplicacación</li></ul>Service Bus <br />WCF<br />Distributed Cache Worker<br />http:// gagame .*<br />Dynamic Worker<br />(tasks uploaded as blobs and sharding)<br />PartitionerWorker<br />SQL Server Local<br />Almacenamiento Windows Azure<br />-- - --- - -<br />-- - --- - -<br />Queues for communication between clients and roles<br />Tables to record server & partition information<br />Blobs to store web and worker role resources<br />Configuración<br />Estadísticas<br />C# instalada localmente<br />SQL Azure<br />Castellan Venue DB<br />Castellan Venue DB<br />Castellan Venue DB<br />Castellan Venue DB’s<br />Castellan Venue DB’s<br />Castellan Venue DB’s<br />TablasComunes<br />Sharding<br />Partition<br />Sharding<br />Partition<br />Sharding<br />Partition<br />...<br />
    64. 64. Ejemplo de aplicación en la nube<br />Source: eleniamapi@yahoo.com<br />
    65. 65. Ejemplo de infraestructura en la nube<br />Source: eleniamapi@yahoo.com<br />
    66. 66. Microsoft Windows Azure Platform<br />
    67. 67. Cómo Microsoft ve la nube<br />Fundamentos<br />Administración<br />automática<br />de servicios<br />Alta<br />disponibilidad<br />Escalabilidad<br />Múltiples<br />clientes<br />Consideraciones<br />Localización<br />On premises<br />Off premises<br />Infraestructura<br />Heterogénea<br />Homogénea<br />Operaciones<br />Inversiones<br />Modelo de negocio<br />Rentado<br />Propietario<br />Propiedad<br />Proveedor<br />Interno<br />Administración<br />
    68. 68. Software + Servicios<br />Cliente<br />PC<br />Phone<br />TV<br />Herramientas y soporte multiplataforma<br />Server<br />Cloud<br />
    69. 69. Servicios en la nube de Microsoft<br />Windows Live<br />Identidad<br />Correo electrónico, Mensajería<br />Office Live<br />Documentos<br />Live Meeting – conferencias web<br />Exchange Online<br />Mensajería empresarial<br />SharePoint Online<br />Administración de recursos y flujos de trabajo<br />Microsoft Dynamics CRM Online<br />Administración de clientes<br />Xbox Live<br />Juegos en línea y entretenimiento<br />BPOS<br />Business Productivity<br />Online Suite<br />
    70. 70. Servicios en la nube de Microsoft<br />Windows Azure<br />Provee un ambiente basado en Windows que permite la ejecución de aplicaciones y almacenamiento de datos. <br />Microsoft SQL Azure<br />Provee servicios de SQL Server en la nube. <br />
    71. 71. La plataforma de Windows Azure<br />Windows Azure<br />SQL Azure<br />Windows Azure platform AppFabric<br />Developer tools<br />
    72. 72. Azure™ Services Platform<br />
    73. 73. Cómo funciona la nube en Windows Azure?<br />Conjunto de servidores conectados<br />En los cuales los desarrolladores pueden:<br />Instalar y ejecutar servicios<br />Almacenar y recuperar información<br />
    74. 74. Azure™ Services Platform<br /><ul><li>Plataforma de Servicios: nuevo paradigma
    75. 75. Disponibilidad “infinita” de recursos
    76. 76. Interoperable: estándares
    77. 77. Reuso de skills
    78. 78. Extensibilidad: Server, Escritorio, Móvil</li></ul>Microsoft Dynamics CRM Services<br />Microsoft SharePoint Services<br />
    79. 79. En resumen<br />Windows Azure esunaplataformaescalable de servicios en la nubeque reside en los centros de datos de Microsoft alrededor del mundo, y proveeunaplataforma simple, confiable y poderosapara la creación de aplicaciones web y servicios<br />
    80. 80. AzurePlataforma de Servicios <br />.NET Services<br />SQL Services<br />Aplicaciones<br />Service Bus<br />Windows Azure<br />Aplicaciones<br />Windows<br />Mobile<br />Windows<br />XP/Vista/7<br />Windows<br />Server<br />Otros…<br />
    81. 81. Ventajas de Windows Azure<br />Microsoft ejecutasuaplicación<br />No existeinversión inicial ni costos adicionales<br />Bajoimpacto en la administración<br />Ejemplo aplicación de actualizaciones y seguridad<br />Escalabilidad por demanda<br />Tolerancia a fallas<br />
    82. 82. Ambiente flexible de ejecución de aplicaciones<br />Promueve servicios y su administración<br />Cree su código, elija el modelo de servicio y presione ENTER<br />Almacenamiento a escala masiva<br />Compute<br />Storage<br />Management<br />
    83. 83. Beneficios de Windows Azure<br /><ul><li>Crear, implementar, escalar y administrar aplicaciones de forma rápida
    84. 84. Evita grandes inversiones de capital
    85. 85. Administración simplificada
    86. 86. Ser más ágil
    87. 87. Extender las aplicaciones existentes
    88. 88. Escalabilidad</li></li></ul><li>Windows Azure automatiza la administración de recursos de TI<br />Seguridad y control<br />Data Centers con la últimatecnología<br />Administración <br />automática de <br />servicios<br />Servicios de almacenamiento<br />Virtualización<br />
    89. 89. Aplicación<br />Cálculo<br />Almacenamiento<br />Application Fabric<br />Config<br />.NET Services<br />SQL Services<br />Applications<br />Live Services<br />Windows Azure<br />Aplicaciones<br />Windows<br />Mobile<br />Windows<br />Vista/XP<br />Windows<br />Server<br />Otros<br />Componentes de Windows Azure<br />
    90. 90. Bloques de construcción Windows Azure<br />Centro de Datos Windows Azure<br />Servicio<br />Web Site<br />(ASPX, ASMX, WCF)<br />Web Site<br />(ASPX, ASMX, WCF)<br />Web Role<br />(ASPX, WCF)<br />LB<br />Tablas<br />Worker Service<br />Worker Role<br />Internet<br />Almacenamiento<br />Colas<br />LB<br />Blobs<br />
    91. 91. Ambiente de desarrollo<br />Azure<br />Partial Trust<br />“Dev Fabric”<br />
    92. 92. Desarrollo de aplicaciones en Windows Azure<br />AMBIENTE DE DESARROLLO CONOCIDO<br />DISEÑADO PARA INTEROPERAR<br />TECNOLOGÍAS YA PROBADAS<br /><ul><li>Desarrollo: Visual Studio
    93. 93. Matenimiento: Depuración local, APIs parabitácoras
    94. 94. Administración: APIs pararealizardespliegue de aplicaciones
    95. 95. Protocolos SOAP y REST
    96. 96. Formatos XML
    97. 97. Soportepara Java, PHP, Python y otros
    98. 98. Visual Studio, ASP.NET, SQL Azure
    99. 99. Windows Azure</li></li></ul><li>Ambiente de desarrollo conocido<br />El ambiente de desarrollo está en el escritorio<br />Soporte para una gama diversa de lenguajes de programación<br />ASP.NET, C#, VB.NET, código nativo, PHP<br />Integración con las herramientas y soporte<br />Integración con Visual Studio, Tools for Eclipse<br />Bitácoras, alertas, …<br />Ejemplos, documentación, MSDN, foros, …<br />
    100. 100. Administración automática de los servicios<br />La abstracción es clave<br />Todos los recursos son lógicos y deben ser declarados en el modelo del servicio<br />Los servicios utilizan el API de la plataforma para mapear los recursos lógicos a recursos físicos<br />La nube reemplaza recursos de forma transparente<br />En caso de alguna falla<br />Cuando se realizan actualizaciones<br />Desarrollo<br />Instalación y ejecución<br />Estabilidad del servicio<br />
    101. 101. Windows Azure para desarrolladores<br />Servicio<br />Portal<br />SDK<br />Almacenamiento<br />Desarrollo<br />Ejecutar<br />Instalar<br />
    102. 102. Roles y escalabilidad<br />Rol<br />Código<br />Configuración<br />
    103. 103. Web Role vs Worker Role<br />Worker Role<br />Web Role<br />System Host<br />IIS Host<br />Código<br />Código<br />
    104. 104. Infraestructura de Windows Azure<br />Portal del neogocio<br />User Code<br />Portal del desarrollador<br />Portal de administración de servicios<br />REST<br />Runtime API<br />VM Setup<br />…<br />…<br />Cluster almacenamiento<br />Cluster de cálculo<br />Cloud VM<br />VS Tools<br />…<br />REST<br />WA SDK<br />Centro Datos MSFT<br />Desktop<br />
    105. 105. Aplicación sencilla en Windows Azure<br />Worker Role<br />Web Role<br />Queue<br />Blob<br />
    106. 106. Balance de carga por medio de instancias<br />Rol<br />Instancia 1<br />http://app.cloudapp.net<br />Instancia 2<br />
    107. 107. Windows Azure Compute Service<br />Las máquinas virtuales son creadas mediante hypervisor optimizado para la nub<br />No es una máquina virtual común<br />Son ejecutadas en Windows Server 2008 64-bit<br />Cada máquina virtual tiene una relación uno a uno con un núcleo de procesador<br />Para los desarrolladores:<br />Es prácticamente un Windows y .NET<br />Existe una interfaz para acceder al agente de Windows Azure, por ejemplo, bitácoras<br />
    108. 108. Windows Azure Compute Service<br />VMs<br />VMs<br />Instancia<br />Worker<br />Role <br />Instancia<br />Web<br />Role <br />HTTP<br />IIS<br />Balance de carga<br />RoleEntryPoint.Start()<br />Agente<br />Agente<br />Windows Azure Fabric<br />Aplicación<br />Almacenamiento<br /> Compute<br />Fabric<br />…<br />
    109. 109. Almacenamiento<br />Instancia<br />Web Role<br />Instancia<br />Worker Role<br />Agente Fabric<br />Agente<br />Fabric<br />Controlador<br />Fabric<br />Windows Azure Fabric<br />
    110. 110. Almacenamiento en la nube<br />Abstracción de tipos de almacenamiento:<br />Datos de usuario de gran tamaño: Blobs, file streams, …<br />Guardar datos: tablas simples, caché, …<br />Comunicación dentro del servicio: colas, cerrojos, …<br />Se da énfasis en:<br />Escala masiva, alta disponibilidad<br />Distribución geográfica y replicación<br />NO es un servicio de base de datos en la nube<br />
    111. 111. Almacenamiento en Windows Azure<br />Tipos de almacenamiento:<br />Blobs: una jerarquía de datos binarios<br />Tablas: entidad de almacenamiento (no son tablas relacionales)<br />Colas: estructuras de colas de alto desempeño<br />Forma de acceso:<br />Datos expuestos mediante una interfaz RESTful<br />Los datos pueden ser accedidos por:<br />Aplicaciones en Windows Azure<br />Cualquier otra aplicación que este conectada a Internet ya sea que ejecuta en la nube on está instalada localmente<br />
    112. 112. Servicio de almacenamiento en Windows Azure<br />HTTP/ HTTPS<br />RESTServicios<br />Blobs<br />Tablas<br />Colas<br />Application<br />Storage<br /> Compute<br />Fabric<br />…<br />
    113. 113. . . .<br />Tabla<br />Tabla<br />Tabla<br />Entidad<br />. . .<br />Entidad<br />Entidad<br />Propiedad<br />Propiedad<br />. . .<br />Propiedad<br />Flexible, no esquematizado<br />Nombre<br />Tipo<br />Valor<br />Almacenamiento en Tablas de Azure<br />
    114. 114. Bases de datos en la nube<br />Análisis del Negocio<br />Reportes<br />Sincronízación de datos<br />Base de datos<br />
    115. 115. SQL AzureUna BD relacional en la nube<br />BD SQL Azure<br />Hub de datos<br />Otros<br />Base de datos realacional como servicio<br />Alta disponibilidad, administración automática<br />Extensión de la plataforma de SQL Server<br />.NET Services<br />SQL Services<br />Applications<br />Live Services<br />Windows Azure<br />Applications<br />Windows<br />Mobile<br />Windows<br />Vista/XP<br />Windows<br />Server<br />Others<br />
    116. 116. Database<br />Base de datos proveída como un servicio<br />Experiencia de desarrollo conocida, utiliza protocolo TDS y T-SQL<br />Alta escalabilidad<br />Creado con base en SQL Server<br />Más que “hospedaje de base de datos”<br />Alta disponibilidad, creación de bases de datos, administración es proveída como un servicio<br />Se paga por lo que se utiliza<br />
    117. 117. Base de Datos SQL Azure<br />Servicio de BD relacional de alta escalabilidad<br />Servicio de bd relacional<br /><ul><li>Tecnología SQL Server
    118. 118. Simétrica
    119. 119. Altamente escalable
    120. 120. Segura</li></ul>BD “como servicio”<br />Browser<br />SOAP/REST<br />HTTP/S<br />ADO.NET/REST - EDM<br />HTTP/S<br />MS<br />Datacenter<br />Windows Azure <br />Compute<br />App Code<br />(ASP.NET)<br />SQL Server Report Server<br />(on-premises)<br /><ul><li>Autoservicio y capacidad por demanda
    121. 121. Simetría con la plataforma de bd interna
    122. 122. Alta disponibilidad y tolerancia a fallas automática
    123. 123. Mantenimiento automática de infraestructura de base de datos
    124. 124. Se paga por lo que se utiliza</li></ul>T-SQL (TDS)<br />T-SQL (TDS)<br />SQL Azure<br />Database<br />- AD Federation (LiveId /AppFabric AC)<br />
    125. 125. SQL Azure Service Provisioning<br /><ul><li>Cada cuenta tiene uno o más servidores
    126. 126. Un portal único de administración
    127. 127. Mecanismo de facturación
    128. 128. Cada servidor tiene una o más base de datos
    129. 129. Contiene información sobre la bd
    130. 130. Unidad de autenticación y seguridad
    131. 131. Unidad de geolocalización
    132. 132. Cada servidor es una agrupación lógica de sus bases de datos
    133. 133. Cada base de datos posee objetos SQL estándar
    134. 134. Usuarios, tablas, vistas, índices, etc…</li></ul>Cuenta<br />Servidor<br />BD<br />
    135. 135. Arquitectura de alto nivel<br />SQL Data Services Gateway Tier<br />Protocol Parser<br />Protocol Parser<br />Protocol Parser<br />Protocol Parser<br />Protocol Parser<br />Protocol Parser<br />Protocol Parser<br />Management Services<br />Management Services<br />Management Services<br />Management Services<br />Management Services<br />Management Services<br />Management Services<br />Partition Services<br />Partition Services<br />Partition Services<br />Partition Services<br />Partition Services<br />Partition Services<br />Partition Services<br />SQL Data Services Back End<br />SQL Server<br />SQL Server<br />SQL Server<br />SQL Server<br />SQL Server<br />SQL Server<br />SQL Server<br />Distributed Data Fabric<br />Distributed Data Fabric<br />Distributed Data Fabric<br />Distributed Data Fabric<br />Distributed Data Fabric<br />Distributed Data Fabric<br />Distributed Data Fabric<br />Mgmt. Services<br />Mgmt. Services<br />Mgmt. Services<br />Mgmt. Services<br />Mgmt. Services<br />Mgmt. Services<br />Mgmt. Services<br />
    136. 136. Topología de red de SQL Azure<br />Aplicación<br />Aplicaciones utilizan bibliotecas SQL estándar: ODBC, ADO.Net, …<br />TDS (tcp:1433)<br />Balanceador de carga con manejo de sesiones<br />Balance de Carga<br />TDS (tcp: 1433)<br />Gateway<br />Gateway<br />Gateway<br />Gateway<br />Gateway<br />Gateway<br />NodoDatos<br />NodoDatos<br />NodoDatos<br />NodoDatos<br />NodoDatos<br />NodoDatos<br />TDS (tcp: 1433)<br />Escalabilidad y altadisponibilidad: Fabric, Failover, Replicación y Balance de Carga<br />
    137. 137. Arquitecturas de aplicaciones en SQL Azure<br />SQL Azure access from outside MS Datacenter <br />(On-premises – ADO.NET)<br />SQL Azure access from within MS Datacenter <br />(Azure compute – ADO.NET)<br />App Code / Tools<br />Application/ Browser<br />SOAP/REST<br />HTTP/S<br />ADO.NET Data Svcs/REST - EF<br />HTTP/S<br />App Code<br />(ASP.NET)<br />Windows Azure<br />T-SQL (TDS)<br />T-SQL (TDS)<br />SQL Azure<br />SQL Azure<br />Code Far<br />Code Near<br />
    138. 138. BD<br />Aplicación<br />BD<br />BD<br />Aplicación<br />BD<br />SQL AzureUtilizar una o muchas bases de datos<br />
    139. 139. Escalabilidad de SQL Azure<br />Tamaño máximo de base de datos<br />1 GB – 5 GB (Web Edition) <br />10 GB – 50 GB (Business Edition)<br />
    140. 140. Sharding<br />Permite la escalabilidad entre bases de datos<br />Creación dinámica de bases de datos<br />Esquemas de particionamiento<br />Vertical<br />Horizontal<br />Dinámica<br />Aleatoria<br />Con base en rangos<br />
    141. 141. SQL Azure Sharding<br />Aplicación<br />ASP.NET<br />Cliente<br />123<br />Capa de Datos<br />Partition<br />Aware<br />Particiones<br />de datos<br />“Shards”<br />
    142. 142. Control de acceso<br />Bus de servicios<br />.NET Services<br />SQL Services<br />Applications<br />?<br />Live Services<br />Windows Azure<br />Applications<br />Windows<br />Mobile<br />Windows<br />Vista/XP<br />Windows<br />Server<br />Others<br />Integración y seguridad<br />
    143. 143. Modelo de negocio<br />Modelo de facturación basado en consumo<br />Compute: Utilizar una máquina por horas<br />Base de datos: Rentar una BD por mes<br />Almacenamiento: Pago por transacción y dato almacenado<br />Todos: Pago por transferencia de datos<br />
    144. 144. Disponibilidad Global<br />Disponibilidad de plataforma<br />41 países 13 monedas en Marzo 2010<br />Localización de centros de datos<br />North Central US<br />South Central US<br />North Europe<br />Southeast Asia<br />
    145. 145. Resumen<br />Las plataformas basadas en la nube han llegado<br />Se están generando nuevos modelos<br />Prepárese para ser parte<br />Cree arquitecturas que sean escalables<br />Con la computación en la nube el tiempo para estar en producción ha sido reducido<br />
    146. 146. Resumen<br />La plataforma de Windows Azure está compuesta por<br />Windows Azure<br />SQL Azure<br />Windows Azure AppFabric<br />La plataforma Windows Azure Platform está diseñada para<br />Ejecutar aplicaciones críticas de negocio<br />Bajar el costo total de propiedad<br />Proveer funcionalidades completas e integradas<br />Soportar interoperabilidad<br />

    ×