SlideShare una empresa de Scribd logo
Cloud Computing: Introducción & AWS
        23-24 Mayo de 2011, 18:00-21:00
      Dr. Diego Lz. de Ipiña Glz. de Artaza
               dipina@deusto.es
  http://paginaspersonales.deusto.es/dipina
       http://www.slideshare.net/dipina
        http://www.morelab.deusto.es



                      1
Agenda
1.   Introducción a Cloud Computing (30’)
     – Concepto y campos relacionados
     – Diferentes manifestaciones (SaaS, PaaS e IaaS)
     – Ejemplos de servicios, infraestructura y aplicaciones en la nube
2.   Ejemplo de IaaS: Amazon Web Services (AWS) (90’ + 60’)
     –   Introducción
     –   Amazon Elastic Cloud (EC2)
     –   Amazon Simple Storage Service (S3) y CloudFront
     –   Amazon Simple DB y RDS
     –   Desarrollo de una aplicación de ejemplo sobre AWS




                                        2
Misión de la Future Internet (FI)
• Ofrecer a todos los usuarios un entorno
  seguro, eficiente, confiable y robusto, que:
  – Permita un acceso abierto, dinámico y
    descentralizado a la red y a su información y
  – Sea escalable, flexible y adapte su rendimiento a
    las necesidades de los usuarios y su contexto




                        3
Arquitectura de la Internet del Futuro




                  4
Internet de los Servicios

                                           Una multitud de servicios IT conectados,
                                                 que son ofrecidos, comprados,
                                                vendidos, utilizados, adaptados y
                                              compuestos por una red universal de
                                                  proveedores, consumidores y
                                               agregadores de servicios o brokers
                                                      - resultando en -
                                           una nueva manera de ofrecer, utilizar, y
                                               organizar funcionalidad soportada
                                                              por IT

Adapted from SAP Research, 2008, and SEEKDA, 2008



                                       5
Campos de Actuación de la
       Internet de los Servicios
• Cloud computing: virtualización de servicios y
  optimización de recursos tanto en capacidad de
  procesamiento como almacenamiento
• Open service platforms: modularidad de servicios
  para facilitar su integración por usuarios finales
• Autonomic computing: sistemas autogestionados
• Green IT: optimización del consumo energético



                          6
El Futuro del Desarrollo Software




               7
Infraestructura Virtualizada:
          Cloud Computing
Un paradigma de computación emergente donde los datos y servicios
residen en centros de datos muy escalables que pueden ser accedidos
ubicuamente desde cualquier dispositivo conectado a Internet1

                                                        Merrill Lynch:
                                                   Cloud computing market
                                                    opportunity by 2011 =
                                                    $95bn in business and
                                                     productivity apps +
                                                 $65bn in online advertising =
                                                           $160bn




                                                     (1) Source: IBM


                                  8
Cloud Computing es …
• …       capacidad       computacional     y
  almacenamiento       virtualizada  expuesta
  mediante infraestructura agnóstica a la
  plataforma y accedida por Internet
  – Recursos IT compartidos en demanda, creados y
    eliminados eficientemente y de modo escalable a
    través de una variedad de interfaces programáticos
    facturados en base a su uso


                         9
Forrester Research
“A pool of abstracted, highly scalable, and
managed compute infrastructure capable of
hosting end-customer applications and billed
by consumption1”




       1- “Is Cloud Computing Ready for The Enterprise?” Forrester Research, Inc.
                                           10
The “Cloud” = 10X Improvement
• Fácil de usar: hazlo tu mismo remotamente de cualquier
  lugar en cualquier momento
• Escalable: controla tu infraestructura con tu aplicación
• Riesgo: nada que comprar, cancela inmediatamente
• Robustez: basado en gran hardware empresarial
• Coste: paga sólo por lo que uses




                               11
Evolución hacia Cloud Computing
• La coexistencia y limitaciones de cluster
  computing y supercomputing dieron
  lugar a grid computing
• De grid computing progresamos hacia
  utility computing, i.e. Servicios
  computacionales empaquetados como
  agua, electricidad, etc.
• Esto derivó en Cloud Computing, es
  decir, todo como servicio (XaaS) :
    • Plataforma como Servicio
    • Software como Servicio
    • Infraestructura como Servicio



                                         12
Múltiples Descripciones Gráficas
         de la “Cloud”




               13
Múltiples Descripciones Gráficas
         de la “Cloud”




               14
Arquitectura Cloud Computing




             15
Características de Cloud
Tipos de despliegue                      Manifestaciones
 • Cloud privada                         • Cloud Software as a Service (SaaS)
    – Propiedad de o alquilada por una         – Uso de la aplicación del proveedor sobre
      empresa (centros de datos,…)               la red, e.j., Salesforce.com,…
 • Cloud comunitaria                     • Cloud Platform as a Service (PaaS)
    – Infraestructura compartida por           – Despliega aplicaciones creadas por los
      una comunidad específica                   clientes a la nube, e.j. Google App Engine,
 • Cloud pública                                 Microsoft Azure, …
    – Vendida al público, gran escala    • Cloud Infrastructure as a Service (IaaS)
      (ec2, S3,…)                              – Alquilar procesamiento, almacenamiento,
 • Cloud híbrida                                 capacidad de red y otros recursos
                                                 computacionales e.j., EC2 – Elastic
    – Composición de dos o más
                                                 Compute Cloud, S3 – Simple Storage
      clouds
                                                 Service, Simple DB,…


                                          16
Diferentes Manifestaciones




             17
Cloud Computing vs. Centros de
      Datos Tradicionales




              18
Componentes de Cloud Computing




              19
Taxonomía de Cloud Computing




             20
Evolución de Tecnologías de Cloud
           Computing
 • Maduración de tecnología de virtualización
 • La virtualización permite nubes de computación
 • Las nubes de computación demandan nubes de
   almacenamiento
 • Las nubes de almacenamiento y computación crean
   infraestructura cloud
 • La infraestructura cloud da lugar a plataformas y aplicaciones
   cloud
 • Diferentes tipos de cloud dan lugar a Cloud Aggregators
 • Nichos de requisitos dan lugar a Cloud Extenders

                             21
Aplicaciones Cloud
• Corresponden con lo que se denomina como SaaS
• Manifestación de cloud más popular
• Ejemplos: SalesForce, Gmail, Yahoo! Mail, rememberthemilk,
  doodle, Google Docs, DropBox, picnik, Panda Cloud Antivirus,
  scribd, slideshare
• Ventajas: Libre, Fácil, Adopción de consumo
• Desventajas: funcionalidad limitada, no hay control de acceso
  a la tecnología subyacente




                              22
Plataformas Cloud
• Contenedores de aplicaciones
• Entornos cerrados
• Ejemplos: Google App Engine, Microsoft Azure, Heroku,
  Mosso, Engine Yard, Joyent o Force.com
• Ventajas: buenas para desarrolladores, más control que en las
  aplicaciones cloud, configuradas estrechamente
• Desventajas: restringidas a lo que está disponible, otras
  dependencias, dependencia tecnológica




                              23
Infraestructura Cloud
• Proveen nubes de computación y almacenamiento
• Ofrecen capas de virtualización (hardware/software)
• Ejemplos: Amazon EC2, GoGrid, Amazon S3, Nirvanix, Linode,
  Arsys Cloud Flexible, EyeOS
• Ventajas: control completo del entorno y la infraestructura
• Desventajas: precio premium, competencia limitada




                             24
Extensores de la Cloud
• Proveen extensiones a infraestructura y plataformas cloud con
  funcionalidad básica
• Ejemplos: Amazon SimpleDB, Amazon SQS, Google BigTable
• Ventajas: extienden la funcionalidad de las nubes de
  computación y almacenamiento para integrar sistemas
  heredados u otras cloud
• Desventajas: a veces requieren el uso de plataformas o
  infraestructura específica




                              25
Agregadores Cloud
• Se apoyan en varias infraestructuras cloud para su
  gestión
• Ejemplos: RightScale, Appistry
• Ventajas: proveen más opciones para entornos cloud
• Desventajas: dependientes de proveedores de cloud




                         26
¿Qué framework o plataforma
usar para mis aplicaciones Cloud?




               27
Amazon Web Services (AWS)
•   AWS proporciona una infraestructura de servicios elástica donde alojar
    computación, almacenamiento o sistemas empresariales
     – Amazon Elastic Cloud (EC2) – permite configurar y ejecutar un Amazon Machine
       Instance (AMI) – servidores en demanda
     – Amazon Simple Storage Service (S3) – permite guardar y recuperar datos en la nube
     – Amazon SimpleDB – proporciona la funcionalidad de una base de datos sobre S3 –
       basada en pares clave-valor
     – Amazon Simple Queue Service (SQS) – servicio de mensajería para encolar tareas y
       mensajes
     – Amazon Relational Database Service (RDS) – servicio web para crear, operar y escalar
       una base de datos en la nube
     – Amazon CloudFront – copias de tus objetos más populares son cacheados en una red de
       nodos alrededor del mundo
     – …
• Documentación: http://aws.amazon.com/documentation/


                                        28
Amazon Web Services (AWS)




            29
Amazon Web Services (AWS)




            30
Amazon Elastic Compute Cloud: EC2
•   Permite ejecutar varios servidores Linux o Windows virtuales en demanda,
    facilitando tantos ordenadores como necesites para procesar tus datos o ejecutar
    una aplicación
•   Otorga acceso root al sistema operativo de cada servidor, un cortafuegos para
    gestionar el acceso a la red y la libertad para instalar cualquier software
•   Una vez configurado un servidor adecuadamente, se guarda como Amazon Machine
    Image (AMI) que puede ser lanzada para crear máquinas virtuales en demanda
•   La EC2 API (Query o SOAP) ofrece funcionalidad para empezar y parar instancias de
    servidor, aplicar permisos de acceso y red o gestionar tus imágenes de servidor.
     – Cada servidor individual se gestiona usando herramientas Linux o Windows sobre una
       sesión de shell segura.
•   Se factura en función de los recursos consumidos : CPU y datos transferidos
•   Más información en: http://aws.amazon.com/ec2




                                              31
Conceptos EC2
• AMI (Amazon Machine Instance)
    – Basadas en XEN
• Instancia: AMI en ejecución
    – Es necesario crear instancias EBS si queremos pararlas y reiniciarlas
    – Dos IPs: IP pública e IP elástica
• Volúmenes EBS (Elastic Block Storage): almacenamiento para las
  instancias
• Conceptos de credenciales:
    – Access Key ID y Secret Access Key
    – X.509 certificate y clave privada (SOAP y EC2 Tools)
• IP Elástica – asociada a tu cuenta no una instancia, te permite controlar a
  qué instancia o instancias apunta (útil por robustez).
• Conceptos y herramientas para usar EC2 en:
    – http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html

                                          32
EC2: Regiones y Zonas
                                              de Disponibilidad

•   Las instancias en EC2 se pueden colocar en diferentes localizaciones:
     – Las regiones están dispersas geográficamente (ver tabla debajo)
     – Las zonas de disponibilidad son localizaciones diferentes dentro de una Región que
       están aisladas de fallos en otras zonas y facilitan conectividad de red económica, de baja
       latencia a otras zonas de disponibilidad dentro de la Región

                Region                                    Endpoint
                US-East (Northern Virginia) Region        ec2.us-east-1.amazonaws.com

                US-West (Northern California) Region      ec2.us-west-1.amazonaws.com

                EU (Ireland) Region                       ec2.eu-west-1.amazonaws.com

                Asia Pacific (Singapore) Region           ec2.ap-southeast-1.amazonaws.com




                                                     33
CloudWatch
• Amazon CloudWatch es un servicio que proporciona monitorización para
  recursos gestionados por AWS
    – Muestra utilización de recursos como CPU, lecturas y escrituras de disco o
      tráfico de red
        • http://aws.amazon.com/cloudwatch/
             – http://awsdocs.s3.amazonaws.com/AmazonCloudWatch/latest/acw-dg.pdf
             – http://awsdocs.s3.amazonaws.com/AmazonCloudWatch/latest/acw-qrc.pdf

• Elastic Load Balancing distribuye automáticamente el tráfico de aplicación
  entrante entre varias instancias EC2
    – http://aws.amazon.com/elasticloadbalancing/
        • http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-dg.pdf
        • http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-qrc.pdf
• Auto Scaling permite escalar automáticamente hacia arriba o abajo tu
  capacidad EC2 en función de triggers que defines
    – http://aws.amazon.com/autoscaling/
        • http://awsdocs.s3.amazonaws.com/AutoScaling/latest/as-qrc.pdf

                                               34
CloudWatch en Funcionamiento




             35
CloudWatch en Funcionamiento




             36
Elastic Load Balancing en
     Funcionamiento




            37
Autoscaling en Funcionamiento




             38
Amazon Simple Storage Service: S3
• Ofrece espacio de almacenamiento seguro para cualquier
  tipo de datos en los data centers de Amazon
   – Es una alternativa a construir, mantener y utilizar tus propios sistemas
     de almacenamiento
   – No tiene límites sobre cuánta información, por cuánto tiempo y con
     qué ancho de banda puede transferirse.
• Ofrece una simple API agnóstica a la información a guardar
   – Depende de ti qué datos y qué representación interna tienen
   – El modelo de datos interno consta de dos tipos de recursos de
     almacenamiento:
       • Objects: guardan datos y metadatos
       • Buckets: contenedores que pueden contener infinidad de objetos
   – Incorpora mecanismos de control de acceso (ACL) que pueden
     aplicarse a objetos y buckets
                                   39
Amazon Simple Storage Service: S3
 •   Los recursos en S3 se identifican mediante URIs:
      –   http://<s3-repository>.amazonaws.com/<bucket-name>/<folder-
          name>/<s3object-name>
            •   Ejemplo: https:/s3-eu-west-1.amazonaws.com/misimages/oct2010/image1.png
 •   Algunas características de su arquitectura son:
      –   Los objetos S3 no pueden ser manipulados como ficheros estándar
      –   Los cambios sobre ellos tardan en propagarse
      –   Las peticiones a objetos pueden fallar ocasionalmente
      –   Permite guardar versiones
      –   Se deben resolver las direcciones IP de los nombres DNS de S3 periódicamente
      –   Se pueden guardar infinitos objetos de hasta 5GB en tamaño
      –   Se paga por almacenamiento, transferencia y operaciones
 •   Algunos posibles usos de S3:
      –   Compartir grandes ficheros
      –   Como repositorio de back-up de tus ficheros
      –   Sistema de ficheros mapeado sobre S3 (ElasticDrive)
 •   Más información en:
      –   http://aws.amazon.com/s3/,

                                                40
Amazon CloudFront
• Mientras que en Amazon S3 se guardan contenidos (ficheros) con
  CloudFront se garantiza que tus objetos en S3 buckets son servidos
  rápidamente.
    – Lo hace copiando los ficheros en buckets S3 a diferentes edge locations que sirven
      contenidos a los usuarios finales.
    – Tales edge locations se distribuyen por el planeta asegurándose que los contenidos son
      servidos del servidor Amazon más cercano
• Es ventajoso porque el 80-90% del tiempo invertido esperando a una
  respuesta web se debe a la descarga de los componentes de la página:
  imágenes, hojas de estilo, scripts, Flash, etc.
    – La clave es colocar la parte estática de nuestra web en una red de distribución
      de contenidos como Akamai.
• Con CloudFront hay que pagar las transferencias desde S3 a las
  localizaciones de los bordes.
• Más información en: http://aws.amazon.com/cloudfront/
                                           41
¿Cómo usar CloudFront?
•   Las redes de distribución de contenidos tienen servidores distribuidos por Internet y
    determinan la ruta más rápida y corta entre el servidor que aloja el contenido y el usuario
    final
     –   Los 4 sencillos pasos que hay que seguir para utilizar CloudFront han sido extraídos del artículo:
         http://www.labnol.org/internet/setup-content-delivery-network-with-amazon-s3-cloudfront/5446
          1.    Get the S3 Fox add-on for Firefox and log-in to your Amazon S3 account. Now right-click your S3 bucket and
                select "Manage Distributions.“
          2.    Next we’ll associate a CNAME (some easy to remember sub-domain name) with our S3 bucket so it becomes
                easy to link to the files from our web pages. In this example, I use the web address "cache.labnol.org" and
                then click Create Distribution.
          3.    The status will change from "In Progress" to "Deployed". Now copy the resource URL to the clipboard which
                is of the format xyz.cloudfront.net
          4.    Log in to your account on your web hosting service’s website, and go to the DNS management page. Create a
                new CNAME record as shown in the screenshot.




                                                        42
Amazon SimpleDB
•   Almacén de claves/valor: trabaja con los conceptos domain, item y attribute
•   Diseñado para minimizar la complejidad y el coste de mantenimiento de tus datos
•   Guarda pequeñas piezas de información textual en una estructura de base de datos sencilla
    simple de gestionar, modificar y buscar
     –   Ofrece su propio lenguaje de consultas de datos
     –   Ejemplos de consultas sencillas:
           •   ['Date' > '2007-07-01' and Not 'Date' starts-with '2007-07-04']
           •   ['Suburb' = 'Newtown'] or['Price' < '100000'] intersection ['Bedrooms' =
               '3']
•   Si tus aplicaciones están basadas en bases de datos simples, este servicio puede reemplazar a
    tu RDBMS dejándote con una pieza de infraestructura menos que comprar y mantener
•   No exige la especificación de un schema previo, tú puedes modificar la estructura y
    contenidos de tu base de datos cuando quieras
•   Indexa cada pieza almacenada
•   Guarda tu información de modo seguro, y redundante en la red de data centers de Amazon
•   Pagas por almacenamiento, datos transferidos y operaciones
•   Más información en: http://aws.amazon.com/simpledb/

                                                43
Amazon SimpleDB
•   Ofrece tres recursos principales:
     – Dominios: nombre de un contenedor con información relacionada (similar a base de
       datos)
           • Solamente se procesan consultas dentro de un dominio
     – Elementos: es una colección con nombre de los atributos que representan un objeto de
       datos
     – Atributos: es una categoría individual de información guardada dentro de un elemento.
       Identificado por un nombre contiene una colección de valores de tipo string, obligatorio
       que tenga al menos un valor.
•   Es una base de datos sencilla, no un RDBMS:
     –   Los elementos se guardan en una estructura jerárquica, no una tabla
     –   Todos los datos se guardan como texto
     –   Capacidades de consulta limitadas
     –   La consistencia de la información depende de retardos de propagación
     –   Los valores de atributos pueden ser colecciones y alcanzar hasta 1024 bytes
           • SimpleDB está concebido para usarse en conjunción con S3


                                             44
Amazon SimpleDB




      45
Example DataSet con SimpleDB
  Item        Title      Author       Year      Number of Keywords     Rating
  Name                                            Pages

038533349 The Sirens   Kurt        1959         00336    Book        *****
8         of Titan     Vonnegut                          Paperback   5 stars
                                                                     Excellent


080213178 Tropic of    Henry Miller 1934        00318    Book        ****
6         Cancer


157912458 The Right    Tom Wolfe   1979         00304    Book        ****
5         Stuff                                          Hardcover   4 stars
                                                         American


B000T9886 In Between Paul Van      2007                  CD          4 stars
K                    Dyk                                 Trance

B00005JPL   300        Zack        2007                  DVD          ***
W                      Snyder                            Action       3 stars
                                                         Frank Miller Not bad


B000SF3NG Heaven's   Thievery    2002                                *****
K         Gonna Burn Corporation
          Your Eyes

                                           46
Ejemplos de Consultas
Query Expression                     Description                             Result Set
select * from mydomain where Title = Retrieves all items where the attribute 1579124585
'The Right Stuff'                    "Title" equals "The Right Stuff."
select * from mydomain where Year > Retrieves all items where "Year" is  B000T9886K, B00005JPLW,
'1985'                              greater than "1985."                 B000SF3NGK
                                    Although this looks like a numerical
                                    comparison, it is lexicographical.
                                    Because the calendar won't change to
                                    five digits for nearly 8,000 years,
                                    "Year" is not zero padded.
select * from mydomain where Rating Retrieves all items that have at least a 0385333498, 1579124585,
like '****%'                        4 star (****) rating.                    0802131786, B000SF3NGK
                                    The prefix comparison is case-
                                    sensitive and exact and does not
                                    match attributes that only have the "4
                                    star" value, such as item
                                    B000T9886K.
                                    Note: The like operator is similar to
                                    starts-with and only supports % at
                                    the end of the string.
select * from mydomain where Pages Retrieves all items that have less than 1579124585, 0802131786,
< '00320'                           320 pages.
                                    This attribute is zero padded in the
                                    data set and the select expression,
                                    which allows for proper lexicographical
                                    comparison between the strings.
                                    Items without this attribute are not
                                                       47
                                    considered.
Amazon Relational Database
        Service (Amazon RDS)
• Es un servicio web que facilita la instalación, operación y escalabilidad de
  una base de datos relacional en la nube
    – Te da completo acceso a las capacidades de una base de datos MySQL
         • Las aplicaciones que ya funcionan con MySQL también lo harán con Amazon RDS
    – Amazon RDS modifica el software MySQL para programar la creación de back-ups o
      garantizar la escalabilidad, todo ello controlado a través de una API sencilla.
• Solamente se paga por los recursos utilizados.
• Más información en: http://aws.amazon.com/rds
• Herramienta: Amazon RDS Command Line Toolkit
    – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=2928&catego
      ryID=294
• Tutorial en:
  http://docs.amazonwebservices.com/AmazonRDS/latest/GettingStartedG
  uide/
                                              48
Amazon SQS
• Implementa el servicio de mensajería basado
  en colas
• Los mensajes son siempre strings
• Útil para crear trabajos asíncronos y descargar
  de actividad a un web server
• Se paga por mensajes y datos transferidos
• Más información en:
  http://aws.amazon.com/sqs
                       49
Registro y Documentación
• Se puede ver en detalle cómo acceder a AWS:
  – http://www.slideshare.net/ronaldbradford/getting
    -started-with-mysql-in-amazon-web-
    services?src=related_normal&rel=3462501
  – http://docs.amazonwebservices.com/AWSEC2/20
    09-11-30/GettingStartedGuide/
  – http://aws.amazon.com/free/ (Free usage tier)



                        50
AWS Free User Tier
• La condiciones de uso son las siguientes:
    – AWS Free Usage Tier (Per Month):
        • 750 hours of Amazon EC2 Linux Micro Instance usage (613 MB of memory and 32-
          bit and 64-bit platform support) – enough hours to run continuously each month*
        • 750 hours of an Elastic Load Balancer plus 15 GB data processing*
        • 10 GB of Amazon Elastic Block Storage, plus 1 million I/Os, 1 GB of snapshot
          storage, 10,000 snapshot Get Requests and 1,000 snapshot Put Requests*
        • 5 GB of Amazon S3 storage, 20,000 Get Requests, and 2,000 Put Requests*
        • 30 GB per of internet data transfer (15 GB of data transfer “in” and 15 GB of data
          transfer “out” across all services except Amazon CloudFront)*
        • 25 Amazon SimpleDB Machine Hours and 1 GB of Storage**
        • 100,000 Requests of Amazon Simple Queue Service**
        • 100,000 Requests, 100,000 HTTP notifications and 1,000 email notifications
          for Amazon Simple Notification Service**
    – In addition to these services, the AWS Management Console is available at no
      charge to help you build and manage your application on AWS.

                                           51
Proceso para usar AWS EC2
• Vamos a seguir el siguiente workflow para
  aprender a usar EC2, crear instancias y
  conectarnos a ellas, tanto desde Windows
  como UNIX.




                      52
Fase 1: Registro en AWS
• Para utilizar Amazon EC2, necesitas una cuenta
  Amazon AWS
   – Ir a http://aws.amazon.com/ec2 y hacer click en Sign Up
     for Amazon EC2.
   – Seguir las instrucciones de pantalla
• Pasarás a estar suscrito también a Amazon Simple
  Storage and Amazon Virtual Private Cloud
   – Recibirás una llamada donde introducir el PIN que te
     asignan vía web


                             53
Fase 1: Registro en AWS




          54
Fase 1: Registro en AWS




          55
Fase 1: Registro en AWS




          56
Fase 1: Registro en AWS




          57
Fase 1: Registro en AWS




          58
Fase 1: Obteniendo los
       Identificadores de Acceso
• Vete a http://aws.amazon.com/account/, logueate,
  haz click en Security Credentials y recupera:
   – Access Key ID y Access Key, pestaña Access Keys
   – Account number se ve en la parte derecha, superior de la
     página de Security Credentials
   – X.509 Private Key File (pestaña X.509 Certificates)
   – X.509 Certificate File (pestaña KeyPairs)
• Los siguientes pantallazos muestran cómo obtener
  estos datos
   – Guárdalos en ficheros para luego usarlos en tus
     aplicaciones
                             59
Fase 1: Obteniendo los
Identificadores de Acceso




           60
Fase 1: Obteniendo los
Identificadores de Acceso




           61
Fase 1: Registrarse para EC2 y S3
•    Acceder a la consola de administración de AWS en:
     http://aws.amazon.com/console
    –       Logearse o
    –       Registrarse
        •      Durante el registro se solicitan los datos de cargo bancario
        •      Recibirás un email de confirmación tanto para EC2 como S3
              –    Alternativamente puedes registrarte individualmente en los
                   diferentes productos yendo al enlace Products y seleccionando el
                   servicio concreto en: http://aws.amazon.com/account/




                                        62
Fase 1: Registrarse para EC2 y S3




               63
Fase 1: Registrarse para EC2 y S3




               64
Fase 2: Lanzar una Instancia de
                 EC2
• Iniciar el “dashboard”, panel de control de AWS
  Console y realizar los siguientes pasos:
   https:/console.aws.amazon.com
   1.       Pulsar el botón de nueva instancia
   2.       Seleccionar una instancia concreta
        •      Fedora LAMP Web Server para ejemplo completo (ami-f04f6484)
        •      Instancia AMI de Windows básica
        •      Instancia AMI de UNIX básica
   3.       Generar o reutilizar un par de claves
   4.       Guardar las claves
   5.       Configurar el firewall
   6.       Revisar los detalles de la instancia desplegada
   7.       Lanzar la instancia y comprobar que está en ejecución
                                       65
Paso 2.1: Lanzar una Nueva
         Instancia




            66
Paso 2.2: Seleccionar la instancia
         (ami-f04f6484)




                67
Paso 2.3: Configurar la Instancia




               68
Paso 2.4: Asignar Par de Claves




              69
Paso 2.5: Configurar el Firewall




               70
Paso 2.6: Revisar los Detalles de la
      Instancia Configurada




                 71
Paso 2.7: Lanzar la Instancia y
      Operar sobre Ella




              72
Detalles de la Instancia Creada




              73
Fase 2: Lanzando Otras Instancias
•    Vamos a lanzar otra instancia en Windows y otra en UNIX con
     soporte EBS:
     1.   Accede a AWS Management Console:
          http://aws.amazon.com/console/ y regístrate
     2.   Desde EC2 Console Dashboard, haz click en Launch Instance
     3.   Elige un AMI, vamos a trabajar bien con Fedora 8 Core o Microsoft
          Windows Server 2008
          a.   Selecciona y acepta los detalles de la instancia
          b.   Crea un par de claves, que es un credencial utilizado para conectarse a una instancia
          c.   Crea un grupo de seguridad que define reglas de firewall para tu instancia
     4.   Revisa tus configuraciones y pulsa el botón Launch




                                                   74
Fase 3: Accediendo a la instancia
vía web (Servidor LAMP Fedora)




               75
Fase 3: Modificando la Página por
            Defecto
• Pasos a seguir en cliente UNIX:
  1. Logeo en el servidor remoto:
     ssh -i <instancia> root@public_dns
        –   ssh –i ami-f04f6484 root@ec2-79-125-61-
            32.eu-west-1.compute.amazonaws.com
  2. Vamos al directorio htdocs
     cd /home/webuser/helloworld/htdocs
  3. Modificamos la página index.php (ver
     contenido siguiente trasparencia)

                         76
Fase 3: Ejemplo de contenido para
           index.php
<html>
   <head>
        <title>Nuestro propio Servidor Web</title>
        <meta http-equiv="Content-Type" content="text/html; charset-ISO-
   8859-1">
   </head>
   <body>
        <h1>Nuestro propio Servidor Web ejecut&aacute;ndose en AWS</h1>
        <p>Una demostraci&oacute;n del curso de Amazon Web Services.
   Universidad de Deusto.</p>
        <p>Ejemplo adaptado de
                 <a href="http://www.slideshare.net/ronaldbradford/getting-
   started-with-mysql-in-amazon-web-services">
                          http://www.slideshare.net/ronaldbradford/getting-
   started-with-mysql-in-amazon-web-services
                 </a>
        </p>
   </body>
</html>

                                 77
Fase 3: Herramientas para Conectarse
  a Instancia UNIX desde Windows
 • Software necesario (cygwin también valdría):
    – Putty – Putty es un terminal cliente de SSH, descargable de:
      http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
    – PuttyGen – programa que convierte la clave privada de Amazon al
      formato PPK usado por putty
        • Se descarga de la misma página que putty
    – WinSCP – cliente de SFTP y SSH para Windows que permite la
      transferencia segura de ficheros entre ordenadores. Soporta los
      protocols SSH, FTP y SCP.
        • Se descarga desde: http://sourceforge.net/projects/winscp/
 • Tutorial detallado en:
    – http://it.toolbox.com/blogs/managing-infosec/connecting-to-amazon-
      aws-from-windows-to-a-linux-ami-30656

                                      78
Fase 3: Conectándose a UNIX AMI desde
   Windows – Conversión de Clave para putty
• Cargar el fichero LAMPServerFedora.pem y pulsar en Save
  Private Key que guardará un fichero con extensión ppk que usa putty




                                79
Fase 3: Conectándose a UNIX AMI desde
     Windows – Logeo en Windows con putty
1.   Arrancar putty
2.   Introducir el nombre público DNS del servidor (ec2-79-125-61-32.eu-west-
     1.compute.amazonaws.com)
3.   Ir a al menú ssh->Auth->Browse y cargar clave privada LAMPServerFedora.ppk
4.   Loguéate como root




                                       80
Fase 3: Accediendo a ficheros en UNIX AMI desde
Windows – Edición de index.php con WinSCP




                       81
Página Final en Instancia EC2




             82
Fase 3: Conectándose a una
         Instancia de Windows
• Obteniendo la contraseña
   – Haz click con el botón derecho del ratón sobre la instancia Windows y
     selecciona “Get Windows Password”
   – Aparece el diálogo Retrieve Default Windows Administrator
     Password, pega ahí la private key obtenida antes, parte del fichero de
     claves entre BEGIN RSA PRIVATE KEY y END RSA PRIVATE KEY
   – Selecciona descrifrar clave
   – Conectarse a la instancia usando Remote Desktop Connection
       • Start  All Programs  Accessories
       • Introduce el nombre DNS de la instancia
       • Logéate como Administrator/<password-recuperada>




                                   83
Fase 4: Terminar Instancia
• No es lo mismo “parar” (stop) que “terminar”
  (terminate) en AWS
  – Cuando terminas una instancia no la puedes
    reiniciar, ¡dejas de pagar!
  – Sólo la puedes parar si tiene un EBS asociado
• Para terminar una instancia en la AWS
  Console, haz click con el botón derecho del
  ratón y selecciona terminate

                         84
Probando S3




    85
Probando SimpleDB
• Scratchpad for SimpleDB es una aplicación web que
  permite usar Amazon SimpleDB sin necesidad de
  realizar programación
   – http://developer.amazonwebservices.com/connect/entry.j
     spa?externalID=1137
• Te permite:
   –   Crear dominios
   –   Poblarlos con datos
   –   Consultarlos
   –   Modificarlos
   –   Borrar el dominio     86
Probando SimpleDB




        87
Probando RDS
• Para utilizarlo hay que seguir los siguientes pasos:


   1.       Ir a http://aws.amazon.com/rds y registrarte con Amazon RDS
   2.       Lanzar la instancia y rellenar los datos de tamaño, tipo de base de
            datos, nombre y clave de usuario
   3.       Asignar accesos a la instancia de la base de datos, se utiliza CIDR
            (Classless Inter-Domain Routing) para indicar sólo una dirección IP o
            un conjunto de direcciones desde las que se permite la conexión
        •      Acceso total: 0.0.0.0/0
   4.       Conectarse a la instancia usando la herramienta mysql, en la
            descripción de la instancia en AWS Console aparecerá el string de
            conexión
        •      mysql -h <nombre-host-amazon-rds> -u <username> -p
   5.       Terminar la instancia para que88
                                           dejen de facturarnos por su uso
Probando SQS
• El Simple Queue Service (SQS) puede probarse con una
  sencilla herramienta: JavaScript Scratchpad for Amazon SQS
   – http://developer.amazonwebservices.com/connect/entry.j
      spa?externalID=1254&categoryID=122




                            89
Probando CloudFront
• Ejemplo de uso desde consola de
  administración de Amazon




                     90
Desregistro de un Servicio
• Para cancelar un servicio:
  – Firma en AWS
  – Haz click en Your Account y luego en Account
    Activity.
  – Selecciona View/Edit Service debajo del servicio
    que quieres cancelar
  – Haz click en el enlace cancel this service.



                         91
Calculadora de Costes en Amazon
• La siguiente herramienta te permite estimar
  costes de consumo de servicios en Amazon:
  – http://calculator.s3.amazonaws.com/calc5.html
• Además, desde la página
  http://aws.amazon.com/account, se puede
  acceder al menú “Account Activity” que ilustra
  el gasto actual incurrido.


                        92
APIs web: SOAP vs. REST
    SOAP: Simple Object Access Protocol                       REST: Represantional State Transfer
•     Define cómo dos objetos en diferentes               •    Estilo de arquitectura software para
      procesos pueden comunicarse por medio de                 sistemas de hypermedia distribuidos como
      intercambio de datos XML.                                la WWW.
       •   Deriva de un protocolo creado por David              •   Introducido en la tésis doctoral de Roy
           Winer en 1998, llamado XML-RPC.                          Fielding en el año 2000.
•     Fue creado por Microsoft, IBM, y otros y            •    Se refiere a una colección de principios de
      actualmente se encuentra bajo el auspicio                arquitectura de red, que marcan cómo
      de la W3C.                                               definir e invocar los recursos.
•     Su arquitectura consiste en varias capas de         •    El término se usa a veces para describir una
      especificaciones para formato de mensajes:               simple interfaz que transmite datos de un
       •   Message Exchange Patterns (MEP)                     dominio específico por HTTP sin capas
                                                               adicionales como SOAP o uso de cookies.
       •   Protocolos de transporte (SMTP y
           HTTP/S)                                        •    Los sistemas que cumplen los principios
                                                               marcados por Fielding suelen ser referidos
       •   Modelos de procesado de mensajes                    como sistemas RESTful.
       •   Protocolo de extensibilidad
       •   WS-*                                      93
Programación en AWS
•   Interfaces REST:
     – Utilizan componentes estándar de peticiones HTTP para representar la acción de la API a
       ejecutar:
          •   Métodos HTTP: describen la acción a ejecutar por la petición
          •   Universal Resource Identifier (URI): identifican el recurso sobre el que se va a ejecutar la acción
          •   Cabeceras de petición: ofrecen más metadatos sobre la petición o el peticionario
          •   Cuerpo de la petición: transfieren los datos que nutrirán la acción a ejecutar por el servicio
•   Interfaces Query:
     – También hacen uso del protocolo HTTP para representar acciones de la API, pero lo
       hacen a través de parámetros (pares nombre valor) que indican la acción y los datos que
       nutrirán tal acción.
     – Se suelen indicar en la URI de una petición GET o el cuerpo de un POST
     – Esta interfaz es considerada como REST-like no RESTful, no es un enfoque puro de REST
       sino que explota HTTP
•   Interfaces SOAP


                                                    94
APIs Disponibles por Servicio AWS

      Service   REST API        Query API   SOAP API

S3                Yes              No         Yes

EC2               No               Yes        Yes

SQS               Yes              Yes        Yes

FPS               No               Yes        Yes

SimpleDB          No               Yes        Yes

RDS               No               Yes        Yes




                           95
Revisión APIs de los Principales
               Servicios
•   EC2:
     –     http://aws.amazon.com/documentation/ec2/ (mirar quick reference card)
     –     http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/
•   S3:
     –     http://aws.amazon.com/documentation/s3/
     –     http://docs.amazonwebservices.com/AmazonS3/latest/gsg/index.html?WorkingWithS3.html
     –     http://docs.amazonwebservices.com/AmazonS3/2006-03-01/API/
•   SimpleDB:
     –     http://aws.amazon.com/documentation/simpledb/
     –     http://docs.amazonwebservices.com/AmazonSimpleDB/latest/GettingStartedGuide/index.html
     –     http://docs.amazonwebservices.com/AmazonSimpleDB/latest/DeveloperGuide/
•   SQS Documentation:
     –     http://aws.amazon.com/documentation/sqs/
     –     http://docs.amazonwebservices.com/AWSSimpleQueueService/latest/APIReference/
•   RDS
     –     http://aws.amazon.com/documentation/rds
     –     http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/

                                                  96
Invocación de Servicios Web AWS
• Recetas para el uso de la API SOAP desde Java:
   – Recipe 27.5 Getting Set Up with Amazon's Web Services
     API
      • http://g168.net/txt/servlet/0596005725_jsvltjspckbk-chp-27-sect-
        5.html#jsvltjspckbk-CHP-27-SECT-5
   – Recipe 27.6 Creating a JavaBean to Connect with Amazon
      • http://g168.net/txt/servlet/0596005725_jsvltjspckbk-chp-27-sect-
        6.html#jsvltjspckbk-CHP-27-SECT-6
   – Recipe 27.7 Using a Servlet to Connect with Amazon
      • http://g168.net/txt/servlet/0596005725_jsvltjspckbk-chp-27-sect-
        7.html


                                 97
AWS SDK for Java
•   Ofrece una API basada en Java para acceder a los servicios de infraestructura de
    AWS, haciendo sencillo el desarrollo de aplicaciones que usan las características de
    la nube AWS: eficiente en costes, escalable y robusta
     – Descargar de: http://aws.amazon.com/sdkforjava, incluye:
           • AWS Java Library
           • Ejemplos de código
           • Soporte para Eclipse
•   Soporta los siguientes servicios: Amazon Elastic Compute Cloud (EC2), Amazon
    Simple Storage Service (S3), Amazon Virtual Private Cloud, Amazon SimpleDB,
    Amazon Relational Database Service, Amazon Simple Notification Service, Amazon
    Simple Queue Service, Amazon Elastic MapReduce, Amazon CloudWatch, Elastic
    Load Balancing, Auto Scaling
•   Documentación:
     –   http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3586
     –   http://developer.amazonwebservices.com/connect/entry.jspa?externalID=848&categoryID=152



                                               98
Usando AWS SDK for Java
• Se puede obtener documentación detallada en:
    – http://docs.amazonwebservices.com/AWSJavaSDK/latest/javadoc/
• Antes de empezar, debes registrarte en cada servicio que quieras utilizar.
• Necesitas obtener tus credenciales de seguridad de:
  http://aws.amazon.com/security-credentials
    – Previamente puede que tengas que firmar en
      http://aws.amazon.com/products
    – Los credenciales son un par de claves públicas y privadas que contienen:
        • Access Key ID
        • Secret Access Key
• Revisar ejemplos en carpeta examples/aws



                                       99
Herramientas para Usar Amazon
• ScratchPad for SimpleDB y SQS
    – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1137&catego
      ryID=189
    – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1254
• ElasticDrive – http://www.elasticdrive.com/
• ElasticFox –
  http://developer.amazonwebservices.com/connect/entry.jspa?externalID=
  609
• S3 Fox – plugin para Firefox, http://www.s3fox.net/
• Amazon EC2 API Tools
    – Programas de línea de comandos para intermediar con Amazon EC2
    – Sirven para registrar, lanzar instancias, manipular grupos de seguridad
      y más
        • http://developer.amazonwebservices.com/connect/entry.jspa?ext
          ernalID=351&categoryID=88
                                        100
Caso práctico de Álbum de Fotos
• Álbum de fotos que permite subir fotos, organizarlas y
  visualizarlas
• Arquitectura tradicional:




                              101
Caso práctico de Álbum de Fotos
• Solución Cloud con: S3, SDB, SQS y CloudFront




• Ejemplo descrito en:
   – http://www.slideshare.net/javasymposium/developing-with-amazon-
     web-services-highly-scalable-services-that-are-someone-elses-
     headache-to-maintain-and-develop
                                  102
Caso práctico de Álbum de Fotos




              103
Pasos
1. Seleccionar AMI de bitnami con Tomcat
   1.   Tomcat instalado en directorio /opt/bitnami/apache-
        tomcat/webapps
2. Preparar .war con ficheros HMTL (formularios) y código
   PhotoManager
3. PhotoManager usa S3 para guardar imagen, SimpleDB para
   sus metadatos y SQS para URI de imagen de la que generar
   thumbnail
4. Preparar ejecutable que toma datos de la cola SQS, genera
   thumbnail, modifica S3 añadiendo thumbnail object,
   modifica item de foto añadiendo URI de foto

                                  104
Despliegue de Django en EC2
• Seguir los pasos indicados en:
  – http://www.dottostring.com/2009/10/django-
    deployment-on-amazon-ec2-step-by-step-tutorial/




                       105
Soporte para Otros Lenguajes
• Existe soporte para otros lenguajes como
  Python, Ruby, PHP o .NET
  – PHP: Tarzan AWS
    (http://code.google.com/p/tarzan-aws/)
     • http://www.slideshare.net/federicof/cloudify-your-
       applications-with-amazon-web-
       services?src=related_normal&rel=3462501
• Más información en:
  – http://developer.amazonwebservices.com

                           106
Ventajas de Cloud Computing
• Ahorros de costes en IT empresariales
    – Ordenadores de bajo coste para los usuarios
    – Costes más bajos en infraestructura IT
    – Costes de software más bajos
• Mejora del rendimiento global
    – Elasticidad para conseguir una escalabilidad superior
•   Menos problemas en mantenimiento
•   Actualizaciones inmediatas de software
•   Capacidad de almacenamiento ilimitada
•   Incremento de la seguridad de los datos (safety)
                               107
Desventajas de Cloud Computing
•   Requiere una conexión a Internet continua y rápida
•   Puede ofrecer bastante latencia
•   Características disponibles todavía limitadas
•   Falta de confianza
     – Los datos guardados pueden ser accedidos por otros
     – Nuestros datos ya no están en la empresa
     – Problemas legales (LODP): Safe Harbor
• Dependencia tecnológica en otras compañías ajenas
     – Si la nube pierde los datos, ¡estás perdido!

                                108
Conclusiones
•   Cloud Computing nos ofrece un nuevo paradigma para alojar nuestros sistemas de
    información, aplicaciones y datos en la nube de Internet
     – Son muchas las ventajas potenciales de este enfoque
          • Ahorro de costes, pago por uso
          • Escalabilidad exponencial
     – PERO también muchos los riesgos para su implantación global inmediata
          • Falta de control sobre nuestros datos y sistemas
          • Relativa baja madurez de los productos que hacen posible Cloud Computing
•   Ahora están surgiendo las herramientas y plataformas, pero tenemos que trabajar
    en patrones de diseño para asegurarnos buenas prácticas en Cloud Computing
•   El futuro inmediato de los sistemas de información empresarial combinará los
    enfoques tradicionales, donde los sistemas y datos se ejecutan en infraestructura
    propia, con un paulatino e incremental despliegue de datos y aplicaciones a la
    nube.




                                                  109
Referencias
• Cloud Computing – Disruptive Innovation & Enabling Technology
    – http://blog.gogrid.com/2008/08/20/presentation-cloud-computing-disruptive-
      innovation-enabling-technology
• Cloud Computing and Amazon Web Services
    – http://www.slideshare.net/aditya_n_jha/cloud-computing-and-amazon-web-services-
      presentation
• Architecting for the Cloud: Best Practices
    – http://www.slideshare.net/AmazonWebServices/aws-architectingdesantislondon
• Are You Ready for Computing in the Cloud?
    – http://www.informit.com/articles/article.aspx?p=1234970
• Is Cloud Computing Ready for the Enterprise?
    – http://www.3tera.com/download/Forrester-Cloud-computing-report080307.pdf




                                          110
Referencias
• Amazon Web Services
    – http://aws.amazon.com/
• Developing With Amazon Web Services - Highly Scalable Services that
  are Someone Else's Headache to Maintain and Develop
    – http://www.slideshare.net/javasymposium/developing-with-amazon-web-services-
      highly-scalable-services-that-are-someone-elses-headache-to-maintain-and-develop
• How to Setup Amazon S3 with CloudFront as a Content Delivery Network
    – http://www.labnol.org/internet/setup-content-delivery-network-with-amazon-s3-
      cloudfront/5446/




                                           111
Cloud Computing: Introducción & AWS
        23-24 Mayo de 2011, 18:00-21:00
      Dr. Diego Lz. de Ipiña Glz. de Artaza
               dipina@deusto.es
  http://paginaspersonales.deusto.es/dipina
       http://www.slideshare.net/dipina
        http://www.morelab.deusto.es



                      112

Más contenido relacionado

La actualidad más candente

AWS Technical Essentials Day
AWS Technical Essentials DayAWS Technical Essentials Day
AWS Technical Essentials Day
Amazon Web Services
 
Intro to AWS: EC2 & Compute Services
Intro to AWS: EC2 & Compute ServicesIntro to AWS: EC2 & Compute Services
Intro to AWS: EC2 & Compute Services
Amazon Web Services
 
Aws certified solutions architect
Aws certified solutions architectAws certified solutions architect
Aws certified solutions architect
Syed Measum Haider Bokhari
 
AWS
AWSAWS
AWS
ARYA TM
 
Aws 101 A walk-through the aws cloud (2013)
Aws 101  A walk-through the aws cloud (2013)Aws 101  A walk-through the aws cloud (2013)
Aws 101 A walk-through the aws cloud (2013)
Martin Yan
 
AWS Services Overview
AWS Services OverviewAWS Services Overview
AWS Services Overview
Amazon Web Services LATAM
 
AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...
AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...
AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...
Amazon Web Services Korea
 
Amazon EC2 and Amazon VPC Hands-on Workshop
Amazon EC2 and Amazon VPC Hands-on WorkshopAmazon EC2 and Amazon VPC Hands-on Workshop
Amazon EC2 and Amazon VPC Hands-on Workshop
Amazon Web Services
 
AWS Lambda Features and Uses
AWS Lambda Features and UsesAWS Lambda Features and Uses
AWS Lambda Features and Uses
GlobalLogic Ukraine
 
Introduction au Cloud Computing
Introduction au Cloud ComputingIntroduction au Cloud Computing
Introduction au Cloud Computing
Marc Rousselet
 
El Cloud Computing & Amazon Web Services
El Cloud Computing & Amazon Web ServicesEl Cloud Computing & Amazon Web Services
El Cloud Computing & Amazon Web Services
cloudimpulsion
 
Le cloud computing
Le cloud computingLe cloud computing
Le cloud computing
Arafet BOUSSAID
 
AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...
AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...
AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...
Amazon Web Services LATAM
 
Aws ppt
Aws pptAws ppt
Aws ppt
RamyaG50
 
Introduction to Amazon Web Services (AWS)
Introduction to Amazon Web Services (AWS)Introduction to Amazon Web Services (AWS)
Introduction to Amazon Web Services (AWS)
Garvit Anand
 
Amazon EC2 Masterclass
Amazon EC2 MasterclassAmazon EC2 Masterclass
Amazon EC2 Masterclass
Amazon Web Services
 
IBM App Connect - Let Your Apps Work For You
IBM App Connect - Let Your Apps Work For YouIBM App Connect - Let Your Apps Work For You
IBM App Connect - Let Your Apps Work For You
IBM Integration
 
Introduction au Cloud computing
Introduction au Cloud computingIntroduction au Cloud computing
Introduction au Cloud computing
Philippe Scoffoni
 
Intro to AWS: Security
Intro to AWS: SecurityIntro to AWS: Security
Intro to AWS: Security
Amazon Web Services
 
Welcome to the AWS Cloud
Welcome to the AWS CloudWelcome to the AWS Cloud
Welcome to the AWS Cloud
Amazon Web Services
 

La actualidad más candente (20)

AWS Technical Essentials Day
AWS Technical Essentials DayAWS Technical Essentials Day
AWS Technical Essentials Day
 
Intro to AWS: EC2 & Compute Services
Intro to AWS: EC2 & Compute ServicesIntro to AWS: EC2 & Compute Services
Intro to AWS: EC2 & Compute Services
 
Aws certified solutions architect
Aws certified solutions architectAws certified solutions architect
Aws certified solutions architect
 
AWS
AWSAWS
AWS
 
Aws 101 A walk-through the aws cloud (2013)
Aws 101  A walk-through the aws cloud (2013)Aws 101  A walk-through the aws cloud (2013)
Aws 101 A walk-through the aws cloud (2013)
 
AWS Services Overview
AWS Services OverviewAWS Services Overview
AWS Services Overview
 
AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...
AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...
AWS의 다양한 Compute 서비스(EC2, Lambda, ECS, Batch, Elastic Beanstalk)의 특징 이해하기 - 김...
 
Amazon EC2 and Amazon VPC Hands-on Workshop
Amazon EC2 and Amazon VPC Hands-on WorkshopAmazon EC2 and Amazon VPC Hands-on Workshop
Amazon EC2 and Amazon VPC Hands-on Workshop
 
AWS Lambda Features and Uses
AWS Lambda Features and UsesAWS Lambda Features and Uses
AWS Lambda Features and Uses
 
Introduction au Cloud Computing
Introduction au Cloud ComputingIntroduction au Cloud Computing
Introduction au Cloud Computing
 
El Cloud Computing & Amazon Web Services
El Cloud Computing & Amazon Web ServicesEl Cloud Computing & Amazon Web Services
El Cloud Computing & Amazon Web Services
 
Le cloud computing
Le cloud computingLe cloud computing
Le cloud computing
 
AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...
AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...
AWS Webinar Series Latinoamérica: Cómo salir de su datacenter y modernizar la...
 
Aws ppt
Aws pptAws ppt
Aws ppt
 
Introduction to Amazon Web Services (AWS)
Introduction to Amazon Web Services (AWS)Introduction to Amazon Web Services (AWS)
Introduction to Amazon Web Services (AWS)
 
Amazon EC2 Masterclass
Amazon EC2 MasterclassAmazon EC2 Masterclass
Amazon EC2 Masterclass
 
IBM App Connect - Let Your Apps Work For You
IBM App Connect - Let Your Apps Work For YouIBM App Connect - Let Your Apps Work For You
IBM App Connect - Let Your Apps Work For You
 
Introduction au Cloud computing
Introduction au Cloud computingIntroduction au Cloud computing
Introduction au Cloud computing
 
Intro to AWS: Security
Intro to AWS: SecurityIntro to AWS: Security
Intro to AWS: Security
 
Welcome to the AWS Cloud
Welcome to the AWS CloudWelcome to the AWS Cloud
Welcome to the AWS Cloud
 

Similar a Cloud Computing Amazon

Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL) Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL)
Diego López-de-Ipiña González-de-Artaza
 
Cloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológicaCloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológica
Diego López-de-Ipiña González-de-Artaza
 
Curso Cloud Computing, Parte 1: Amazon Web Services
Curso Cloud Computing, Parte 1: Amazon Web ServicesCurso Cloud Computing, Parte 1: Amazon Web Services
Curso Cloud Computing, Parte 1: Amazon Web Services
Diego López-de-Ipiña González-de-Artaza
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nube
GersonReyes11
 
Cloud computing y reducción de costes
Cloud computing y reducción de costesCloud computing y reducción de costes
Cloud computing y reducción de costes
Nexica
 
20110630 nexica cloud_computing_y_relación_de_costes
20110630 nexica cloud_computing_y_relación_de_costes20110630 nexica cloud_computing_y_relación_de_costes
20110630 nexica cloud_computing_y_relación_de_costes
MICProductivity
 
To Cloud or not To Cloud, That is the question!
To Cloud or not To Cloud, That is the question!To Cloud or not To Cloud, That is the question!
To Cloud or not To Cloud, That is the question!
Diego López-de-Ipiña González-de-Artaza
 
Arquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegueArquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegue
kimberlymuoz5
 
Arquitectura de la nube: modelos de servicio y despliegue.
Arquitectura de la nube: modelos de servicio y despliegue.Arquitectura de la nube: modelos de servicio y despliegue.
Arquitectura de la nube: modelos de servicio y despliegue.
FranklinGomez38
 
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudbex
 
Arquitectura de nube cap. 3
Arquitectura de nube  cap. 3Arquitectura de nube  cap. 3
Arquitectura de nube cap. 3
DollyIras
 
Capitulo 3 informacion en la nube
Capitulo 3 informacion en la nubeCapitulo 3 informacion en la nube
Capitulo 3 informacion en la nube
YohanaOsorto
 
Cloud computing
Cloud computingCloud computing
Cloud computing
gloria095
 
Presentacion computacion la nube
Presentacion computacion la nubePresentacion computacion la nube
Presentacion computacion la nube
MirlaClarixaRomeroSa
 
Cloud Computing (Open Source)
Cloud Computing (Open Source)Cloud Computing (Open Source)
Cloud Computing (Open Source)
Victor M. Fernández
 
ITSM for Cloud Services
ITSM for Cloud ServicesITSM for Cloud Services
ITSM for Cloud Services
EXIN
 
Orbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nubeOrbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nube
MACARENAV10
 
Orbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nubeOrbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nube
FRANCISCOU10
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nube
IrisChicas1
 
Computacion en la nube
Computacion en la nubeComputacion en la nube
Computacion en la nube
yamyenriquez30
 

Similar a Cloud Computing Amazon (20)

Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL) Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL)
 
Cloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológicaCloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológica
 
Curso Cloud Computing, Parte 1: Amazon Web Services
Curso Cloud Computing, Parte 1: Amazon Web ServicesCurso Cloud Computing, Parte 1: Amazon Web Services
Curso Cloud Computing, Parte 1: Amazon Web Services
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nube
 
Cloud computing y reducción de costes
Cloud computing y reducción de costesCloud computing y reducción de costes
Cloud computing y reducción de costes
 
20110630 nexica cloud_computing_y_relación_de_costes
20110630 nexica cloud_computing_y_relación_de_costes20110630 nexica cloud_computing_y_relación_de_costes
20110630 nexica cloud_computing_y_relación_de_costes
 
To Cloud or not To Cloud, That is the question!
To Cloud or not To Cloud, That is the question!To Cloud or not To Cloud, That is the question!
To Cloud or not To Cloud, That is the question!
 
Arquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegueArquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegue
 
Arquitectura de la nube: modelos de servicio y despliegue.
Arquitectura de la nube: modelos de servicio y despliegue.Arquitectura de la nube: modelos de servicio y despliegue.
Arquitectura de la nube: modelos de servicio y despliegue.
 
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
 
Arquitectura de nube cap. 3
Arquitectura de nube  cap. 3Arquitectura de nube  cap. 3
Arquitectura de nube cap. 3
 
Capitulo 3 informacion en la nube
Capitulo 3 informacion en la nubeCapitulo 3 informacion en la nube
Capitulo 3 informacion en la nube
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Presentacion computacion la nube
Presentacion computacion la nubePresentacion computacion la nube
Presentacion computacion la nube
 
Cloud Computing (Open Source)
Cloud Computing (Open Source)Cloud Computing (Open Source)
Cloud Computing (Open Source)
 
ITSM for Cloud Services
ITSM for Cloud ServicesITSM for Cloud Services
ITSM for Cloud Services
 
Orbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nubeOrbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nube
 
Orbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nubeOrbe unda-vaca-computacion-iii-nube
Orbe unda-vaca-computacion-iii-nube
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nube
 
Computacion en la nube
Computacion en la nubeComputacion en la nube
Computacion en la nube
 

Último

Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
ViriEsteva
 
Mi Comunidad En El Sector Monterrey-Poste Blanco
Mi Comunidad En El Sector Monterrey-Poste BlancoMi Comunidad En El Sector Monterrey-Poste Blanco
Mi Comunidad En El Sector Monterrey-Poste Blanco
Ruth Noemí Soto Villegas
 
Eureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de CienciasEureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de Ciencias
arianet3011
 
Business Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business TechBusiness Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business Tech
johnyamg20
 
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdfFEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
Jose Luis Jimenez Rodriguez
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
israelsouza67
 
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdfDESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
JonathanCovena1
 
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdfCronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
RicardoValdiviaVega
 
Prueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infanciaPrueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infancia
LudmilaOrtega3
 
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptxCONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CARMENSnchez854591
 
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsadUrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
JorgeVillota6
 
Gracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdfGracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdf
Ani Ann
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
JimmyDeveloperWebAnd
 
Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.
https://gramadal.wordpress.com/
 
POESÍA POR EL DIA DEL PADREEEEEEEEEE.pdf
POESÍA POR EL DIA DEL PADREEEEEEEEEE.pdfPOESÍA POR EL DIA DEL PADREEEEEEEEEE.pdf
POESÍA POR EL DIA DEL PADREEEEEEEEEE.pdf
karlavasquez49
 
Hablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes CuadernilloHablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes Cuadernillo
Mónica Sánchez
 
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBALMATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
Ana Fernandez
 
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdfEvaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
EfranMartnez8
 
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Juan Martín Martín
 
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdfp4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
DavidCamiloMosquera
 

Último (20)

Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
 
Mi Comunidad En El Sector Monterrey-Poste Blanco
Mi Comunidad En El Sector Monterrey-Poste BlancoMi Comunidad En El Sector Monterrey-Poste Blanco
Mi Comunidad En El Sector Monterrey-Poste Blanco
 
Eureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de CienciasEureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de Ciencias
 
Business Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business TechBusiness Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business Tech
 
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdfFEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
 
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdfDESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
 
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdfCronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
 
Prueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infanciaPrueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infancia
 
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptxCONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
 
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsadUrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
 
Gracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdfGracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdf
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
 
Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.
 
POESÍA POR EL DIA DEL PADREEEEEEEEEE.pdf
POESÍA POR EL DIA DEL PADREEEEEEEEEE.pdfPOESÍA POR EL DIA DEL PADREEEEEEEEEE.pdf
POESÍA POR EL DIA DEL PADREEEEEEEEEE.pdf
 
Hablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes CuadernilloHablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes Cuadernillo
 
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBALMATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
 
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdfEvaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
 
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
 
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdfp4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
 

Cloud Computing Amazon

  • 1. Cloud Computing: Introducción & AWS 23-24 Mayo de 2011, 18:00-21:00 Dr. Diego Lz. de Ipiña Glz. de Artaza dipina@deusto.es http://paginaspersonales.deusto.es/dipina http://www.slideshare.net/dipina http://www.morelab.deusto.es 1
  • 2. Agenda 1. Introducción a Cloud Computing (30’) – Concepto y campos relacionados – Diferentes manifestaciones (SaaS, PaaS e IaaS) – Ejemplos de servicios, infraestructura y aplicaciones en la nube 2. Ejemplo de IaaS: Amazon Web Services (AWS) (90’ + 60’) – Introducción – Amazon Elastic Cloud (EC2) – Amazon Simple Storage Service (S3) y CloudFront – Amazon Simple DB y RDS – Desarrollo de una aplicación de ejemplo sobre AWS 2
  • 3. Misión de la Future Internet (FI) • Ofrecer a todos los usuarios un entorno seguro, eficiente, confiable y robusto, que: – Permita un acceso abierto, dinámico y descentralizado a la red y a su información y – Sea escalable, flexible y adapte su rendimiento a las necesidades de los usuarios y su contexto 3
  • 4. Arquitectura de la Internet del Futuro 4
  • 5. Internet de los Servicios Una multitud de servicios IT conectados, que son ofrecidos, comprados, vendidos, utilizados, adaptados y compuestos por una red universal de proveedores, consumidores y agregadores de servicios o brokers - resultando en - una nueva manera de ofrecer, utilizar, y organizar funcionalidad soportada por IT Adapted from SAP Research, 2008, and SEEKDA, 2008 5
  • 6. Campos de Actuación de la Internet de los Servicios • Cloud computing: virtualización de servicios y optimización de recursos tanto en capacidad de procesamiento como almacenamiento • Open service platforms: modularidad de servicios para facilitar su integración por usuarios finales • Autonomic computing: sistemas autogestionados • Green IT: optimización del consumo energético 6
  • 7. El Futuro del Desarrollo Software 7
  • 8. Infraestructura Virtualizada: Cloud Computing Un paradigma de computación emergente donde los datos y servicios residen en centros de datos muy escalables que pueden ser accedidos ubicuamente desde cualquier dispositivo conectado a Internet1 Merrill Lynch: Cloud computing market opportunity by 2011 = $95bn in business and productivity apps + $65bn in online advertising = $160bn (1) Source: IBM 8
  • 9. Cloud Computing es … • … capacidad computacional y almacenamiento virtualizada expuesta mediante infraestructura agnóstica a la plataforma y accedida por Internet – Recursos IT compartidos en demanda, creados y eliminados eficientemente y de modo escalable a través de una variedad de interfaces programáticos facturados en base a su uso 9
  • 10. Forrester Research “A pool of abstracted, highly scalable, and managed compute infrastructure capable of hosting end-customer applications and billed by consumption1” 1- “Is Cloud Computing Ready for The Enterprise?” Forrester Research, Inc. 10
  • 11. The “Cloud” = 10X Improvement • Fácil de usar: hazlo tu mismo remotamente de cualquier lugar en cualquier momento • Escalable: controla tu infraestructura con tu aplicación • Riesgo: nada que comprar, cancela inmediatamente • Robustez: basado en gran hardware empresarial • Coste: paga sólo por lo que uses 11
  • 12. Evolución hacia Cloud Computing • La coexistencia y limitaciones de cluster computing y supercomputing dieron lugar a grid computing • De grid computing progresamos hacia utility computing, i.e. Servicios computacionales empaquetados como agua, electricidad, etc. • Esto derivó en Cloud Computing, es decir, todo como servicio (XaaS) : • Plataforma como Servicio • Software como Servicio • Infraestructura como Servicio 12
  • 13. Múltiples Descripciones Gráficas de la “Cloud” 13
  • 14. Múltiples Descripciones Gráficas de la “Cloud” 14
  • 16. Características de Cloud Tipos de despliegue Manifestaciones • Cloud privada • Cloud Software as a Service (SaaS) – Propiedad de o alquilada por una – Uso de la aplicación del proveedor sobre empresa (centros de datos,…) la red, e.j., Salesforce.com,… • Cloud comunitaria • Cloud Platform as a Service (PaaS) – Infraestructura compartida por – Despliega aplicaciones creadas por los una comunidad específica clientes a la nube, e.j. Google App Engine, • Cloud pública Microsoft Azure, … – Vendida al público, gran escala • Cloud Infrastructure as a Service (IaaS) (ec2, S3,…) – Alquilar procesamiento, almacenamiento, • Cloud híbrida capacidad de red y otros recursos computacionales e.j., EC2 – Elastic – Composición de dos o más Compute Cloud, S3 – Simple Storage clouds Service, Simple DB,… 16
  • 18. Cloud Computing vs. Centros de Datos Tradicionales 18
  • 19. Componentes de Cloud Computing 19
  • 20. Taxonomía de Cloud Computing 20
  • 21. Evolución de Tecnologías de Cloud Computing • Maduración de tecnología de virtualización • La virtualización permite nubes de computación • Las nubes de computación demandan nubes de almacenamiento • Las nubes de almacenamiento y computación crean infraestructura cloud • La infraestructura cloud da lugar a plataformas y aplicaciones cloud • Diferentes tipos de cloud dan lugar a Cloud Aggregators • Nichos de requisitos dan lugar a Cloud Extenders 21
  • 22. Aplicaciones Cloud • Corresponden con lo que se denomina como SaaS • Manifestación de cloud más popular • Ejemplos: SalesForce, Gmail, Yahoo! Mail, rememberthemilk, doodle, Google Docs, DropBox, picnik, Panda Cloud Antivirus, scribd, slideshare • Ventajas: Libre, Fácil, Adopción de consumo • Desventajas: funcionalidad limitada, no hay control de acceso a la tecnología subyacente 22
  • 23. Plataformas Cloud • Contenedores de aplicaciones • Entornos cerrados • Ejemplos: Google App Engine, Microsoft Azure, Heroku, Mosso, Engine Yard, Joyent o Force.com • Ventajas: buenas para desarrolladores, más control que en las aplicaciones cloud, configuradas estrechamente • Desventajas: restringidas a lo que está disponible, otras dependencias, dependencia tecnológica 23
  • 24. Infraestructura Cloud • Proveen nubes de computación y almacenamiento • Ofrecen capas de virtualización (hardware/software) • Ejemplos: Amazon EC2, GoGrid, Amazon S3, Nirvanix, Linode, Arsys Cloud Flexible, EyeOS • Ventajas: control completo del entorno y la infraestructura • Desventajas: precio premium, competencia limitada 24
  • 25. Extensores de la Cloud • Proveen extensiones a infraestructura y plataformas cloud con funcionalidad básica • Ejemplos: Amazon SimpleDB, Amazon SQS, Google BigTable • Ventajas: extienden la funcionalidad de las nubes de computación y almacenamiento para integrar sistemas heredados u otras cloud • Desventajas: a veces requieren el uso de plataformas o infraestructura específica 25
  • 26. Agregadores Cloud • Se apoyan en varias infraestructuras cloud para su gestión • Ejemplos: RightScale, Appistry • Ventajas: proveen más opciones para entornos cloud • Desventajas: dependientes de proveedores de cloud 26
  • 27. ¿Qué framework o plataforma usar para mis aplicaciones Cloud? 27
  • 28. Amazon Web Services (AWS) • AWS proporciona una infraestructura de servicios elástica donde alojar computación, almacenamiento o sistemas empresariales – Amazon Elastic Cloud (EC2) – permite configurar y ejecutar un Amazon Machine Instance (AMI) – servidores en demanda – Amazon Simple Storage Service (S3) – permite guardar y recuperar datos en la nube – Amazon SimpleDB – proporciona la funcionalidad de una base de datos sobre S3 – basada en pares clave-valor – Amazon Simple Queue Service (SQS) – servicio de mensajería para encolar tareas y mensajes – Amazon Relational Database Service (RDS) – servicio web para crear, operar y escalar una base de datos en la nube – Amazon CloudFront – copias de tus objetos más populares son cacheados en una red de nodos alrededor del mundo – … • Documentación: http://aws.amazon.com/documentation/ 28
  • 31. Amazon Elastic Compute Cloud: EC2 • Permite ejecutar varios servidores Linux o Windows virtuales en demanda, facilitando tantos ordenadores como necesites para procesar tus datos o ejecutar una aplicación • Otorga acceso root al sistema operativo de cada servidor, un cortafuegos para gestionar el acceso a la red y la libertad para instalar cualquier software • Una vez configurado un servidor adecuadamente, se guarda como Amazon Machine Image (AMI) que puede ser lanzada para crear máquinas virtuales en demanda • La EC2 API (Query o SOAP) ofrece funcionalidad para empezar y parar instancias de servidor, aplicar permisos de acceso y red o gestionar tus imágenes de servidor. – Cada servidor individual se gestiona usando herramientas Linux o Windows sobre una sesión de shell segura. • Se factura en función de los recursos consumidos : CPU y datos transferidos • Más información en: http://aws.amazon.com/ec2 31
  • 32. Conceptos EC2 • AMI (Amazon Machine Instance) – Basadas en XEN • Instancia: AMI en ejecución – Es necesario crear instancias EBS si queremos pararlas y reiniciarlas – Dos IPs: IP pública e IP elástica • Volúmenes EBS (Elastic Block Storage): almacenamiento para las instancias • Conceptos de credenciales: – Access Key ID y Secret Access Key – X.509 certificate y clave privada (SOAP y EC2 Tools) • IP Elástica – asociada a tu cuenta no una instancia, te permite controlar a qué instancia o instancias apunta (útil por robustez). • Conceptos y herramientas para usar EC2 en: – http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html 32
  • 33. EC2: Regiones y Zonas de Disponibilidad • Las instancias en EC2 se pueden colocar en diferentes localizaciones: – Las regiones están dispersas geográficamente (ver tabla debajo) – Las zonas de disponibilidad son localizaciones diferentes dentro de una Región que están aisladas de fallos en otras zonas y facilitan conectividad de red económica, de baja latencia a otras zonas de disponibilidad dentro de la Región Region Endpoint US-East (Northern Virginia) Region ec2.us-east-1.amazonaws.com US-West (Northern California) Region ec2.us-west-1.amazonaws.com EU (Ireland) Region ec2.eu-west-1.amazonaws.com Asia Pacific (Singapore) Region ec2.ap-southeast-1.amazonaws.com 33
  • 34. CloudWatch • Amazon CloudWatch es un servicio que proporciona monitorización para recursos gestionados por AWS – Muestra utilización de recursos como CPU, lecturas y escrituras de disco o tráfico de red • http://aws.amazon.com/cloudwatch/ – http://awsdocs.s3.amazonaws.com/AmazonCloudWatch/latest/acw-dg.pdf – http://awsdocs.s3.amazonaws.com/AmazonCloudWatch/latest/acw-qrc.pdf • Elastic Load Balancing distribuye automáticamente el tráfico de aplicación entrante entre varias instancias EC2 – http://aws.amazon.com/elasticloadbalancing/ • http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-dg.pdf • http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-qrc.pdf • Auto Scaling permite escalar automáticamente hacia arriba o abajo tu capacidad EC2 en función de triggers que defines – http://aws.amazon.com/autoscaling/ • http://awsdocs.s3.amazonaws.com/AutoScaling/latest/as-qrc.pdf 34
  • 37. Elastic Load Balancing en Funcionamiento 37
  • 39. Amazon Simple Storage Service: S3 • Ofrece espacio de almacenamiento seguro para cualquier tipo de datos en los data centers de Amazon – Es una alternativa a construir, mantener y utilizar tus propios sistemas de almacenamiento – No tiene límites sobre cuánta información, por cuánto tiempo y con qué ancho de banda puede transferirse. • Ofrece una simple API agnóstica a la información a guardar – Depende de ti qué datos y qué representación interna tienen – El modelo de datos interno consta de dos tipos de recursos de almacenamiento: • Objects: guardan datos y metadatos • Buckets: contenedores que pueden contener infinidad de objetos – Incorpora mecanismos de control de acceso (ACL) que pueden aplicarse a objetos y buckets 39
  • 40. Amazon Simple Storage Service: S3 • Los recursos en S3 se identifican mediante URIs: – http://<s3-repository>.amazonaws.com/<bucket-name>/<folder- name>/<s3object-name> • Ejemplo: https:/s3-eu-west-1.amazonaws.com/misimages/oct2010/image1.png • Algunas características de su arquitectura son: – Los objetos S3 no pueden ser manipulados como ficheros estándar – Los cambios sobre ellos tardan en propagarse – Las peticiones a objetos pueden fallar ocasionalmente – Permite guardar versiones – Se deben resolver las direcciones IP de los nombres DNS de S3 periódicamente – Se pueden guardar infinitos objetos de hasta 5GB en tamaño – Se paga por almacenamiento, transferencia y operaciones • Algunos posibles usos de S3: – Compartir grandes ficheros – Como repositorio de back-up de tus ficheros – Sistema de ficheros mapeado sobre S3 (ElasticDrive) • Más información en: – http://aws.amazon.com/s3/, 40
  • 41. Amazon CloudFront • Mientras que en Amazon S3 se guardan contenidos (ficheros) con CloudFront se garantiza que tus objetos en S3 buckets son servidos rápidamente. – Lo hace copiando los ficheros en buckets S3 a diferentes edge locations que sirven contenidos a los usuarios finales. – Tales edge locations se distribuyen por el planeta asegurándose que los contenidos son servidos del servidor Amazon más cercano • Es ventajoso porque el 80-90% del tiempo invertido esperando a una respuesta web se debe a la descarga de los componentes de la página: imágenes, hojas de estilo, scripts, Flash, etc. – La clave es colocar la parte estática de nuestra web en una red de distribución de contenidos como Akamai. • Con CloudFront hay que pagar las transferencias desde S3 a las localizaciones de los bordes. • Más información en: http://aws.amazon.com/cloudfront/ 41
  • 42. ¿Cómo usar CloudFront? • Las redes de distribución de contenidos tienen servidores distribuidos por Internet y determinan la ruta más rápida y corta entre el servidor que aloja el contenido y el usuario final – Los 4 sencillos pasos que hay que seguir para utilizar CloudFront han sido extraídos del artículo: http://www.labnol.org/internet/setup-content-delivery-network-with-amazon-s3-cloudfront/5446 1. Get the S3 Fox add-on for Firefox and log-in to your Amazon S3 account. Now right-click your S3 bucket and select "Manage Distributions.“ 2. Next we’ll associate a CNAME (some easy to remember sub-domain name) with our S3 bucket so it becomes easy to link to the files from our web pages. In this example, I use the web address "cache.labnol.org" and then click Create Distribution. 3. The status will change from "In Progress" to "Deployed". Now copy the resource URL to the clipboard which is of the format xyz.cloudfront.net 4. Log in to your account on your web hosting service’s website, and go to the DNS management page. Create a new CNAME record as shown in the screenshot. 42
  • 43. Amazon SimpleDB • Almacén de claves/valor: trabaja con los conceptos domain, item y attribute • Diseñado para minimizar la complejidad y el coste de mantenimiento de tus datos • Guarda pequeñas piezas de información textual en una estructura de base de datos sencilla simple de gestionar, modificar y buscar – Ofrece su propio lenguaje de consultas de datos – Ejemplos de consultas sencillas: • ['Date' > '2007-07-01' and Not 'Date' starts-with '2007-07-04'] • ['Suburb' = 'Newtown'] or['Price' < '100000'] intersection ['Bedrooms' = '3'] • Si tus aplicaciones están basadas en bases de datos simples, este servicio puede reemplazar a tu RDBMS dejándote con una pieza de infraestructura menos que comprar y mantener • No exige la especificación de un schema previo, tú puedes modificar la estructura y contenidos de tu base de datos cuando quieras • Indexa cada pieza almacenada • Guarda tu información de modo seguro, y redundante en la red de data centers de Amazon • Pagas por almacenamiento, datos transferidos y operaciones • Más información en: http://aws.amazon.com/simpledb/ 43
  • 44. Amazon SimpleDB • Ofrece tres recursos principales: – Dominios: nombre de un contenedor con información relacionada (similar a base de datos) • Solamente se procesan consultas dentro de un dominio – Elementos: es una colección con nombre de los atributos que representan un objeto de datos – Atributos: es una categoría individual de información guardada dentro de un elemento. Identificado por un nombre contiene una colección de valores de tipo string, obligatorio que tenga al menos un valor. • Es una base de datos sencilla, no un RDBMS: – Los elementos se guardan en una estructura jerárquica, no una tabla – Todos los datos se guardan como texto – Capacidades de consulta limitadas – La consistencia de la información depende de retardos de propagación – Los valores de atributos pueden ser colecciones y alcanzar hasta 1024 bytes • SimpleDB está concebido para usarse en conjunción con S3 44
  • 46. Example DataSet con SimpleDB Item Title Author Year Number of Keywords Rating Name Pages 038533349 The Sirens Kurt 1959 00336 Book ***** 8 of Titan Vonnegut Paperback 5 stars Excellent 080213178 Tropic of Henry Miller 1934 00318 Book **** 6 Cancer 157912458 The Right Tom Wolfe 1979 00304 Book **** 5 Stuff Hardcover 4 stars American B000T9886 In Between Paul Van 2007 CD 4 stars K Dyk Trance B00005JPL 300 Zack 2007 DVD *** W Snyder Action 3 stars Frank Miller Not bad B000SF3NG Heaven's Thievery 2002 ***** K Gonna Burn Corporation Your Eyes 46
  • 47. Ejemplos de Consultas Query Expression Description Result Set select * from mydomain where Title = Retrieves all items where the attribute 1579124585 'The Right Stuff' "Title" equals "The Right Stuff." select * from mydomain where Year > Retrieves all items where "Year" is B000T9886K, B00005JPLW, '1985' greater than "1985." B000SF3NGK Although this looks like a numerical comparison, it is lexicographical. Because the calendar won't change to five digits for nearly 8,000 years, "Year" is not zero padded. select * from mydomain where Rating Retrieves all items that have at least a 0385333498, 1579124585, like '****%' 4 star (****) rating. 0802131786, B000SF3NGK The prefix comparison is case- sensitive and exact and does not match attributes that only have the "4 star" value, such as item B000T9886K. Note: The like operator is similar to starts-with and only supports % at the end of the string. select * from mydomain where Pages Retrieves all items that have less than 1579124585, 0802131786, < '00320' 320 pages. This attribute is zero padded in the data set and the select expression, which allows for proper lexicographical comparison between the strings. Items without this attribute are not 47 considered.
  • 48. Amazon Relational Database Service (Amazon RDS) • Es un servicio web que facilita la instalación, operación y escalabilidad de una base de datos relacional en la nube – Te da completo acceso a las capacidades de una base de datos MySQL • Las aplicaciones que ya funcionan con MySQL también lo harán con Amazon RDS – Amazon RDS modifica el software MySQL para programar la creación de back-ups o garantizar la escalabilidad, todo ello controlado a través de una API sencilla. • Solamente se paga por los recursos utilizados. • Más información en: http://aws.amazon.com/rds • Herramienta: Amazon RDS Command Line Toolkit – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=2928&catego ryID=294 • Tutorial en: http://docs.amazonwebservices.com/AmazonRDS/latest/GettingStartedG uide/ 48
  • 49. Amazon SQS • Implementa el servicio de mensajería basado en colas • Los mensajes son siempre strings • Útil para crear trabajos asíncronos y descargar de actividad a un web server • Se paga por mensajes y datos transferidos • Más información en: http://aws.amazon.com/sqs 49
  • 50. Registro y Documentación • Se puede ver en detalle cómo acceder a AWS: – http://www.slideshare.net/ronaldbradford/getting -started-with-mysql-in-amazon-web- services?src=related_normal&rel=3462501 – http://docs.amazonwebservices.com/AWSEC2/20 09-11-30/GettingStartedGuide/ – http://aws.amazon.com/free/ (Free usage tier) 50
  • 51. AWS Free User Tier • La condiciones de uso son las siguientes: – AWS Free Usage Tier (Per Month): • 750 hours of Amazon EC2 Linux Micro Instance usage (613 MB of memory and 32- bit and 64-bit platform support) – enough hours to run continuously each month* • 750 hours of an Elastic Load Balancer plus 15 GB data processing* • 10 GB of Amazon Elastic Block Storage, plus 1 million I/Os, 1 GB of snapshot storage, 10,000 snapshot Get Requests and 1,000 snapshot Put Requests* • 5 GB of Amazon S3 storage, 20,000 Get Requests, and 2,000 Put Requests* • 30 GB per of internet data transfer (15 GB of data transfer “in” and 15 GB of data transfer “out” across all services except Amazon CloudFront)* • 25 Amazon SimpleDB Machine Hours and 1 GB of Storage** • 100,000 Requests of Amazon Simple Queue Service** • 100,000 Requests, 100,000 HTTP notifications and 1,000 email notifications for Amazon Simple Notification Service** – In addition to these services, the AWS Management Console is available at no charge to help you build and manage your application on AWS. 51
  • 52. Proceso para usar AWS EC2 • Vamos a seguir el siguiente workflow para aprender a usar EC2, crear instancias y conectarnos a ellas, tanto desde Windows como UNIX. 52
  • 53. Fase 1: Registro en AWS • Para utilizar Amazon EC2, necesitas una cuenta Amazon AWS – Ir a http://aws.amazon.com/ec2 y hacer click en Sign Up for Amazon EC2. – Seguir las instrucciones de pantalla • Pasarás a estar suscrito también a Amazon Simple Storage and Amazon Virtual Private Cloud – Recibirás una llamada donde introducir el PIN que te asignan vía web 53
  • 54. Fase 1: Registro en AWS 54
  • 55. Fase 1: Registro en AWS 55
  • 56. Fase 1: Registro en AWS 56
  • 57. Fase 1: Registro en AWS 57
  • 58. Fase 1: Registro en AWS 58
  • 59. Fase 1: Obteniendo los Identificadores de Acceso • Vete a http://aws.amazon.com/account/, logueate, haz click en Security Credentials y recupera: – Access Key ID y Access Key, pestaña Access Keys – Account number se ve en la parte derecha, superior de la página de Security Credentials – X.509 Private Key File (pestaña X.509 Certificates) – X.509 Certificate File (pestaña KeyPairs) • Los siguientes pantallazos muestran cómo obtener estos datos – Guárdalos en ficheros para luego usarlos en tus aplicaciones 59
  • 60. Fase 1: Obteniendo los Identificadores de Acceso 60
  • 61. Fase 1: Obteniendo los Identificadores de Acceso 61
  • 62. Fase 1: Registrarse para EC2 y S3 • Acceder a la consola de administración de AWS en: http://aws.amazon.com/console – Logearse o – Registrarse • Durante el registro se solicitan los datos de cargo bancario • Recibirás un email de confirmación tanto para EC2 como S3 – Alternativamente puedes registrarte individualmente en los diferentes productos yendo al enlace Products y seleccionando el servicio concreto en: http://aws.amazon.com/account/ 62
  • 63. Fase 1: Registrarse para EC2 y S3 63
  • 64. Fase 1: Registrarse para EC2 y S3 64
  • 65. Fase 2: Lanzar una Instancia de EC2 • Iniciar el “dashboard”, panel de control de AWS Console y realizar los siguientes pasos: https:/console.aws.amazon.com 1. Pulsar el botón de nueva instancia 2. Seleccionar una instancia concreta • Fedora LAMP Web Server para ejemplo completo (ami-f04f6484) • Instancia AMI de Windows básica • Instancia AMI de UNIX básica 3. Generar o reutilizar un par de claves 4. Guardar las claves 5. Configurar el firewall 6. Revisar los detalles de la instancia desplegada 7. Lanzar la instancia y comprobar que está en ejecución 65
  • 66. Paso 2.1: Lanzar una Nueva Instancia 66
  • 67. Paso 2.2: Seleccionar la instancia (ami-f04f6484) 67
  • 68. Paso 2.3: Configurar la Instancia 68
  • 69. Paso 2.4: Asignar Par de Claves 69
  • 70. Paso 2.5: Configurar el Firewall 70
  • 71. Paso 2.6: Revisar los Detalles de la Instancia Configurada 71
  • 72. Paso 2.7: Lanzar la Instancia y Operar sobre Ella 72
  • 73. Detalles de la Instancia Creada 73
  • 74. Fase 2: Lanzando Otras Instancias • Vamos a lanzar otra instancia en Windows y otra en UNIX con soporte EBS: 1. Accede a AWS Management Console: http://aws.amazon.com/console/ y regístrate 2. Desde EC2 Console Dashboard, haz click en Launch Instance 3. Elige un AMI, vamos a trabajar bien con Fedora 8 Core o Microsoft Windows Server 2008 a. Selecciona y acepta los detalles de la instancia b. Crea un par de claves, que es un credencial utilizado para conectarse a una instancia c. Crea un grupo de seguridad que define reglas de firewall para tu instancia 4. Revisa tus configuraciones y pulsa el botón Launch 74
  • 75. Fase 3: Accediendo a la instancia vía web (Servidor LAMP Fedora) 75
  • 76. Fase 3: Modificando la Página por Defecto • Pasos a seguir en cliente UNIX: 1. Logeo en el servidor remoto: ssh -i <instancia> root@public_dns – ssh –i ami-f04f6484 root@ec2-79-125-61- 32.eu-west-1.compute.amazonaws.com 2. Vamos al directorio htdocs cd /home/webuser/helloworld/htdocs 3. Modificamos la página index.php (ver contenido siguiente trasparencia) 76
  • 77. Fase 3: Ejemplo de contenido para index.php <html> <head> <title>Nuestro propio Servidor Web</title> <meta http-equiv="Content-Type" content="text/html; charset-ISO- 8859-1"> </head> <body> <h1>Nuestro propio Servidor Web ejecut&aacute;ndose en AWS</h1> <p>Una demostraci&oacute;n del curso de Amazon Web Services. Universidad de Deusto.</p> <p>Ejemplo adaptado de <a href="http://www.slideshare.net/ronaldbradford/getting- started-with-mysql-in-amazon-web-services"> http://www.slideshare.net/ronaldbradford/getting- started-with-mysql-in-amazon-web-services </a> </p> </body> </html> 77
  • 78. Fase 3: Herramientas para Conectarse a Instancia UNIX desde Windows • Software necesario (cygwin también valdría): – Putty – Putty es un terminal cliente de SSH, descargable de: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html – PuttyGen – programa que convierte la clave privada de Amazon al formato PPK usado por putty • Se descarga de la misma página que putty – WinSCP – cliente de SFTP y SSH para Windows que permite la transferencia segura de ficheros entre ordenadores. Soporta los protocols SSH, FTP y SCP. • Se descarga desde: http://sourceforge.net/projects/winscp/ • Tutorial detallado en: – http://it.toolbox.com/blogs/managing-infosec/connecting-to-amazon- aws-from-windows-to-a-linux-ami-30656 78
  • 79. Fase 3: Conectándose a UNIX AMI desde Windows – Conversión de Clave para putty • Cargar el fichero LAMPServerFedora.pem y pulsar en Save Private Key que guardará un fichero con extensión ppk que usa putty 79
  • 80. Fase 3: Conectándose a UNIX AMI desde Windows – Logeo en Windows con putty 1. Arrancar putty 2. Introducir el nombre público DNS del servidor (ec2-79-125-61-32.eu-west- 1.compute.amazonaws.com) 3. Ir a al menú ssh->Auth->Browse y cargar clave privada LAMPServerFedora.ppk 4. Loguéate como root 80
  • 81. Fase 3: Accediendo a ficheros en UNIX AMI desde Windows – Edición de index.php con WinSCP 81
  • 82. Página Final en Instancia EC2 82
  • 83. Fase 3: Conectándose a una Instancia de Windows • Obteniendo la contraseña – Haz click con el botón derecho del ratón sobre la instancia Windows y selecciona “Get Windows Password” – Aparece el diálogo Retrieve Default Windows Administrator Password, pega ahí la private key obtenida antes, parte del fichero de claves entre BEGIN RSA PRIVATE KEY y END RSA PRIVATE KEY – Selecciona descrifrar clave – Conectarse a la instancia usando Remote Desktop Connection • Start  All Programs  Accessories • Introduce el nombre DNS de la instancia • Logéate como Administrator/<password-recuperada> 83
  • 84. Fase 4: Terminar Instancia • No es lo mismo “parar” (stop) que “terminar” (terminate) en AWS – Cuando terminas una instancia no la puedes reiniciar, ¡dejas de pagar! – Sólo la puedes parar si tiene un EBS asociado • Para terminar una instancia en la AWS Console, haz click con el botón derecho del ratón y selecciona terminate 84
  • 86. Probando SimpleDB • Scratchpad for SimpleDB es una aplicación web que permite usar Amazon SimpleDB sin necesidad de realizar programación – http://developer.amazonwebservices.com/connect/entry.j spa?externalID=1137 • Te permite: – Crear dominios – Poblarlos con datos – Consultarlos – Modificarlos – Borrar el dominio 86
  • 88. Probando RDS • Para utilizarlo hay que seguir los siguientes pasos: 1. Ir a http://aws.amazon.com/rds y registrarte con Amazon RDS 2. Lanzar la instancia y rellenar los datos de tamaño, tipo de base de datos, nombre y clave de usuario 3. Asignar accesos a la instancia de la base de datos, se utiliza CIDR (Classless Inter-Domain Routing) para indicar sólo una dirección IP o un conjunto de direcciones desde las que se permite la conexión • Acceso total: 0.0.0.0/0 4. Conectarse a la instancia usando la herramienta mysql, en la descripción de la instancia en AWS Console aparecerá el string de conexión • mysql -h <nombre-host-amazon-rds> -u <username> -p 5. Terminar la instancia para que88 dejen de facturarnos por su uso
  • 89. Probando SQS • El Simple Queue Service (SQS) puede probarse con una sencilla herramienta: JavaScript Scratchpad for Amazon SQS – http://developer.amazonwebservices.com/connect/entry.j spa?externalID=1254&categoryID=122 89
  • 90. Probando CloudFront • Ejemplo de uso desde consola de administración de Amazon 90
  • 91. Desregistro de un Servicio • Para cancelar un servicio: – Firma en AWS – Haz click en Your Account y luego en Account Activity. – Selecciona View/Edit Service debajo del servicio que quieres cancelar – Haz click en el enlace cancel this service. 91
  • 92. Calculadora de Costes en Amazon • La siguiente herramienta te permite estimar costes de consumo de servicios en Amazon: – http://calculator.s3.amazonaws.com/calc5.html • Además, desde la página http://aws.amazon.com/account, se puede acceder al menú “Account Activity” que ilustra el gasto actual incurrido. 92
  • 93. APIs web: SOAP vs. REST SOAP: Simple Object Access Protocol REST: Represantional State Transfer • Define cómo dos objetos en diferentes • Estilo de arquitectura software para procesos pueden comunicarse por medio de sistemas de hypermedia distribuidos como intercambio de datos XML. la WWW. • Deriva de un protocolo creado por David • Introducido en la tésis doctoral de Roy Winer en 1998, llamado XML-RPC. Fielding en el año 2000. • Fue creado por Microsoft, IBM, y otros y • Se refiere a una colección de principios de actualmente se encuentra bajo el auspicio arquitectura de red, que marcan cómo de la W3C. definir e invocar los recursos. • Su arquitectura consiste en varias capas de • El término se usa a veces para describir una especificaciones para formato de mensajes: simple interfaz que transmite datos de un • Message Exchange Patterns (MEP) dominio específico por HTTP sin capas adicionales como SOAP o uso de cookies. • Protocolos de transporte (SMTP y HTTP/S) • Los sistemas que cumplen los principios marcados por Fielding suelen ser referidos • Modelos de procesado de mensajes como sistemas RESTful. • Protocolo de extensibilidad • WS-* 93
  • 94. Programación en AWS • Interfaces REST: – Utilizan componentes estándar de peticiones HTTP para representar la acción de la API a ejecutar: • Métodos HTTP: describen la acción a ejecutar por la petición • Universal Resource Identifier (URI): identifican el recurso sobre el que se va a ejecutar la acción • Cabeceras de petición: ofrecen más metadatos sobre la petición o el peticionario • Cuerpo de la petición: transfieren los datos que nutrirán la acción a ejecutar por el servicio • Interfaces Query: – También hacen uso del protocolo HTTP para representar acciones de la API, pero lo hacen a través de parámetros (pares nombre valor) que indican la acción y los datos que nutrirán tal acción. – Se suelen indicar en la URI de una petición GET o el cuerpo de un POST – Esta interfaz es considerada como REST-like no RESTful, no es un enfoque puro de REST sino que explota HTTP • Interfaces SOAP 94
  • 95. APIs Disponibles por Servicio AWS Service REST API Query API SOAP API S3 Yes No Yes EC2 No Yes Yes SQS Yes Yes Yes FPS No Yes Yes SimpleDB No Yes Yes RDS No Yes Yes 95
  • 96. Revisión APIs de los Principales Servicios • EC2: – http://aws.amazon.com/documentation/ec2/ (mirar quick reference card) – http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/ • S3: – http://aws.amazon.com/documentation/s3/ – http://docs.amazonwebservices.com/AmazonS3/latest/gsg/index.html?WorkingWithS3.html – http://docs.amazonwebservices.com/AmazonS3/2006-03-01/API/ • SimpleDB: – http://aws.amazon.com/documentation/simpledb/ – http://docs.amazonwebservices.com/AmazonSimpleDB/latest/GettingStartedGuide/index.html – http://docs.amazonwebservices.com/AmazonSimpleDB/latest/DeveloperGuide/ • SQS Documentation: – http://aws.amazon.com/documentation/sqs/ – http://docs.amazonwebservices.com/AWSSimpleQueueService/latest/APIReference/ • RDS – http://aws.amazon.com/documentation/rds – http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/ 96
  • 97. Invocación de Servicios Web AWS • Recetas para el uso de la API SOAP desde Java: – Recipe 27.5 Getting Set Up with Amazon's Web Services API • http://g168.net/txt/servlet/0596005725_jsvltjspckbk-chp-27-sect- 5.html#jsvltjspckbk-CHP-27-SECT-5 – Recipe 27.6 Creating a JavaBean to Connect with Amazon • http://g168.net/txt/servlet/0596005725_jsvltjspckbk-chp-27-sect- 6.html#jsvltjspckbk-CHP-27-SECT-6 – Recipe 27.7 Using a Servlet to Connect with Amazon • http://g168.net/txt/servlet/0596005725_jsvltjspckbk-chp-27-sect- 7.html 97
  • 98. AWS SDK for Java • Ofrece una API basada en Java para acceder a los servicios de infraestructura de AWS, haciendo sencillo el desarrollo de aplicaciones que usan las características de la nube AWS: eficiente en costes, escalable y robusta – Descargar de: http://aws.amazon.com/sdkforjava, incluye: • AWS Java Library • Ejemplos de código • Soporte para Eclipse • Soporta los siguientes servicios: Amazon Elastic Compute Cloud (EC2), Amazon Simple Storage Service (S3), Amazon Virtual Private Cloud, Amazon SimpleDB, Amazon Relational Database Service, Amazon Simple Notification Service, Amazon Simple Queue Service, Amazon Elastic MapReduce, Amazon CloudWatch, Elastic Load Balancing, Auto Scaling • Documentación: – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3586 – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=848&categoryID=152 98
  • 99. Usando AWS SDK for Java • Se puede obtener documentación detallada en: – http://docs.amazonwebservices.com/AWSJavaSDK/latest/javadoc/ • Antes de empezar, debes registrarte en cada servicio que quieras utilizar. • Necesitas obtener tus credenciales de seguridad de: http://aws.amazon.com/security-credentials – Previamente puede que tengas que firmar en http://aws.amazon.com/products – Los credenciales son un par de claves públicas y privadas que contienen: • Access Key ID • Secret Access Key • Revisar ejemplos en carpeta examples/aws 99
  • 100. Herramientas para Usar Amazon • ScratchPad for SimpleDB y SQS – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1137&catego ryID=189 – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1254 • ElasticDrive – http://www.elasticdrive.com/ • ElasticFox – http://developer.amazonwebservices.com/connect/entry.jspa?externalID= 609 • S3 Fox – plugin para Firefox, http://www.s3fox.net/ • Amazon EC2 API Tools – Programas de línea de comandos para intermediar con Amazon EC2 – Sirven para registrar, lanzar instancias, manipular grupos de seguridad y más • http://developer.amazonwebservices.com/connect/entry.jspa?ext ernalID=351&categoryID=88 100
  • 101. Caso práctico de Álbum de Fotos • Álbum de fotos que permite subir fotos, organizarlas y visualizarlas • Arquitectura tradicional: 101
  • 102. Caso práctico de Álbum de Fotos • Solución Cloud con: S3, SDB, SQS y CloudFront • Ejemplo descrito en: – http://www.slideshare.net/javasymposium/developing-with-amazon- web-services-highly-scalable-services-that-are-someone-elses- headache-to-maintain-and-develop 102
  • 103. Caso práctico de Álbum de Fotos 103
  • 104. Pasos 1. Seleccionar AMI de bitnami con Tomcat 1. Tomcat instalado en directorio /opt/bitnami/apache- tomcat/webapps 2. Preparar .war con ficheros HMTL (formularios) y código PhotoManager 3. PhotoManager usa S3 para guardar imagen, SimpleDB para sus metadatos y SQS para URI de imagen de la que generar thumbnail 4. Preparar ejecutable que toma datos de la cola SQS, genera thumbnail, modifica S3 añadiendo thumbnail object, modifica item de foto añadiendo URI de foto 104
  • 105. Despliegue de Django en EC2 • Seguir los pasos indicados en: – http://www.dottostring.com/2009/10/django- deployment-on-amazon-ec2-step-by-step-tutorial/ 105
  • 106. Soporte para Otros Lenguajes • Existe soporte para otros lenguajes como Python, Ruby, PHP o .NET – PHP: Tarzan AWS (http://code.google.com/p/tarzan-aws/) • http://www.slideshare.net/federicof/cloudify-your- applications-with-amazon-web- services?src=related_normal&rel=3462501 • Más información en: – http://developer.amazonwebservices.com 106
  • 107. Ventajas de Cloud Computing • Ahorros de costes en IT empresariales – Ordenadores de bajo coste para los usuarios – Costes más bajos en infraestructura IT – Costes de software más bajos • Mejora del rendimiento global – Elasticidad para conseguir una escalabilidad superior • Menos problemas en mantenimiento • Actualizaciones inmediatas de software • Capacidad de almacenamiento ilimitada • Incremento de la seguridad de los datos (safety) 107
  • 108. Desventajas de Cloud Computing • Requiere una conexión a Internet continua y rápida • Puede ofrecer bastante latencia • Características disponibles todavía limitadas • Falta de confianza – Los datos guardados pueden ser accedidos por otros – Nuestros datos ya no están en la empresa – Problemas legales (LODP): Safe Harbor • Dependencia tecnológica en otras compañías ajenas – Si la nube pierde los datos, ¡estás perdido! 108
  • 109. Conclusiones • Cloud Computing nos ofrece un nuevo paradigma para alojar nuestros sistemas de información, aplicaciones y datos en la nube de Internet – Son muchas las ventajas potenciales de este enfoque • Ahorro de costes, pago por uso • Escalabilidad exponencial – PERO también muchos los riesgos para su implantación global inmediata • Falta de control sobre nuestros datos y sistemas • Relativa baja madurez de los productos que hacen posible Cloud Computing • Ahora están surgiendo las herramientas y plataformas, pero tenemos que trabajar en patrones de diseño para asegurarnos buenas prácticas en Cloud Computing • El futuro inmediato de los sistemas de información empresarial combinará los enfoques tradicionales, donde los sistemas y datos se ejecutan en infraestructura propia, con un paulatino e incremental despliegue de datos y aplicaciones a la nube. 109
  • 110. Referencias • Cloud Computing – Disruptive Innovation & Enabling Technology – http://blog.gogrid.com/2008/08/20/presentation-cloud-computing-disruptive- innovation-enabling-technology • Cloud Computing and Amazon Web Services – http://www.slideshare.net/aditya_n_jha/cloud-computing-and-amazon-web-services- presentation • Architecting for the Cloud: Best Practices – http://www.slideshare.net/AmazonWebServices/aws-architectingdesantislondon • Are You Ready for Computing in the Cloud? – http://www.informit.com/articles/article.aspx?p=1234970 • Is Cloud Computing Ready for the Enterprise? – http://www.3tera.com/download/Forrester-Cloud-computing-report080307.pdf 110
  • 111. Referencias • Amazon Web Services – http://aws.amazon.com/ • Developing With Amazon Web Services - Highly Scalable Services that are Someone Else's Headache to Maintain and Develop – http://www.slideshare.net/javasymposium/developing-with-amazon-web-services- highly-scalable-services-that-are-someone-elses-headache-to-maintain-and-develop • How to Setup Amazon S3 with CloudFront as a Content Delivery Network – http://www.labnol.org/internet/setup-content-delivery-network-with-amazon-s3- cloudfront/5446/ 111
  • 112. Cloud Computing: Introducción & AWS 23-24 Mayo de 2011, 18:00-21:00 Dr. Diego Lz. de Ipiña Glz. de Artaza dipina@deusto.es http://paginaspersonales.deusto.es/dipina http://www.slideshare.net/dipina http://www.morelab.deusto.es 112

Notas del editor

  1. Message:The future consists of services (the boxes on the ring) and users of services (the others).All interaction is free without central controlStandards are needed for the interactionsIs there a need for a platform / infrastructure to coordinate interactions?SAP Services mantra: Services will become tradable, composed from services of different providers, be offered, delivered &amp; executed automatically &amp; supported by ITThe Internet of Services will offercustomized &amp; personalized servicescommunity involvement to improve services, both for providers &amp; consumers of services seamless &amp; smooth adaptation and integration of services into the user environment These network infrastructures need to support an Internet of dynamically combined services with worldwide service delivery platforms and flexibly enable the creation of opportunities for new market entrant. The &apos;third party generated service&apos; is emerging as a trend supporting the move towards user-centric services, as shown by the advances in Service-Oriented-Architectures and in service front-ends as the interface to users and communities. Virtualisation of resources remains an important research driver enabling the delivery of networked services independently from the underlying platform, an important issue for service providers. Advances in these domains also require breakthroughs in software engineering methods and architectures addressing complexity in distributed, heterogeneous and dynamically composed environments, as well as non-functional requirements.