SlideShare una empresa de Scribd logo
Mi experiencia con Amazon AWS EC2 y S3




                           Alejandro E Brito Monedero
                           @ae_bm
Agenda
–   Hablemos de AWS
–   AWS + Yo
–   Extras
–   Un poco de ec2-command-line
–   Preguntas
–   Referencias y créditos
AWS es ...
●   Proveedor IaaS (A.K.A la nube)
●   Modelo pay as you go
●   Virtualización con Xen
●   Otra forma de “pensar” la arquitectura de
    aplicaciones
●   Gestión de recursos de infraestructura a
    través de un API
Quienes lo usan
Fin de la parte de marketing
Conceptos importantes
●   Región
        –   Zona geográfica donde están ubicados un
             conjunto de AZs
        –   Cada región es independiente de las otras
●   Availability Zone (AZ)
        –   Es un datacenter
        –   Varios AZs conforman una región
        –   Los AZs de una región están interconectados
             por enlaces de baja latencia
Conceptos importantes
●   Amazon Machine Image (AMI)
●   Amazon Elastic Compute Cloud (EC2)
       –   Servicio Web que ofrece capacidad de
            computo
●   Amazon Simple Storage Service S3
       –   Almacén de datos no estructurados con alta
             disponibilidad y durabilidad
●   Amazon Elastic Block Store (EBS)
       –   Volúmenes de almacenamiento persistentes
            para usar con instancias EC2
Instancias EC2
●   Máquinas virtuales
       –   Compartes la máquina física con otras
            instancias
       –   No se puede controlar en que máquina física
            está la instancia (ciertas condiciones
            aplican)
       –   No te encariñes a la instancia, que sea 'cloud'
            no lo hace infalible
Instancias EC2
●   2 tipos de imágenes (AMI):
       –   Instance store
               ●   Al principio era el único tipo de instancia
               ●   Imagen de tamaño limitado y guardada en S3
               ●   Actualizar el AMI es un pain in the 4$$
               ●   Se pierde cualquier cambio no este
                     almacenado en un volumen EBS
               ●   Se puede migrar la imagen entre regiones (^_^)
               ●   Si la imagen es muy grande puede tardar en
                     iniciar
Instancias EC2
●   2 tipos de imágenes (AMI):
       –   EBS-backed
              ●   Se puede detener / iniciar la instancia
                      –   No olvidar lo que pasa con los discos efímeros
              ●   Se puede cambiar el tipo de instancia
                      –   Escalado vertical
              ●   La imagen es un snapshot del volumen raíz
                   EBS en S3
              ●   No se puede migrar la imagen entre regiones
Instancias EC2 - Tipos de almacenamiento
●   Unidades de disco efímeras
        –   Disco de la máquina física
        –   El mejor I/O que se puede tener
        –   Si se apaga / bloquea / detiene la instancia
              dile adiós a tus datos (;_;)
●   EBS (discos persistentes)
        –   SAN
        –   Más lentos que los discos efímeros
        –   RAID 1
        –   Snapshots incrementales guardados en S3
             (^_^)
Cosas que hice
●   Disclaimer: Todo esto es mejorable, no es 'the
    netflix way' (-_-)
       –   Sólo probando / jugando se hace experiencia
●   Economía de guerra
       –   Misión hacer todo lo más barato posible
●   Migración de un hosting dedicado a AWS
       –   DNS con un TTL de 300 por si la cosa no iba
            bien
Cosas que hice
●   Cada máquina frontend tenia una Elastic IP
        –   No tocas los DNS
        –   Ahora también existe Amazon Route 53
●   Para enviar correo usaba gmail como smarthost
        –   No puedes cambiar los registros PTR de
             Amazon
        –   Ahora hay Amazon SES
●   AMIs del tipo Instance Store por cada rol
        –   Ahora con instancias tipo EBS +
             CloudFormation + User Data Scripts +
             devops magic debería ser más flexible
Cosas que hice
●   Firewall
        –   Usas los Security groups
        –   Ahora los security groups se pueden
             administrar usando el portal WEB
        –   Una IP externa autorizada para hacer SSH
        –   Recomendado por los expertos
                ●   Sólo permitir ssh desde un security group
                     especial
                        –   Asociado a una instancia iniciada bajo demanda
Cosas que hice
●   Backups
       –   Un volumen EBS en donde se hacían
            respaldos incrementales diarios
               ●   rsync + hard links magic
       –   Snapshots a S3 del volumen EBS 'respaldo'
       –   Pude omitir este salto intermedio, pero
            siempre pienso en la consistencia de los
            datos y eso causa insomnio (;_;)
       –   xfs_freeze, db flush dmsetup, etc, son amigos
Cosas que hice
●   Monitoring
       –   Munin
       –   Zabbix
       –   Puedes usar CloudWatch para empezar
       –   Who watches the watchmen?
               ●   “Free uptime monitoring”
●   Deploy en 1 AZ
       –   Shame on me (-_-)
       –   No comments
       –   Se deberían hacer deploys multi AZ (Hasta
            donde lleguen los $$)
Cosas que hice
●   El almacenamiento (FUN part)
       –   LVM con EBSs como PVs
       –   1 LV en 1 VG en 1 EBS
       –   Aumentaba de tamaño las particiones con una
            mezcla de vudú, vgextend, pvmove, etc.
       –   Seguro sería muy lento y I/O unfriendly
            intentarlo con EBSs muy grandes
Cosas que hice
●   El almacenamiento (FUN part)
       –   ¿Cómo mejorarlo? 'brainstorming' (en especial
            con BBDD)
               ●   Pensando en una mezcla de RAID, LVM, XFS o
                    afines si tuviera muchos discos
               ●   ¿Se pueden hacer snapshots S3 de varios
                    volúmenes EBS en el mismo instante de
                    tiempo?
               ●   Usar glusterfs o afines
               ●   Hacer los respaldos en nodos secundarios
       –   Si tu app maneja el concepto de S3 te
             ahorrarías muchos de estos 'hacks'
Cosas nuevas de Amazon AWS
●   DNS Route 53
●   Cloudfront como CDN
●   Amazon SES
●   ELB para hacer balanceo de carga (¿Usarán
    HAProxy?) (^_^)
●   Métricas con Cloudwatch
●   Escalado horizontal automático
●   SQS
●   DynamoDB
Cosas nuevas de Amazon AWS
●   Identity and Access Management (IAM)
        –   Varios perfiles de usuarios con distintos
             permisos
        –   Permite delegar, delegar, ... delegar
        –   Más tiempo libre (^_^)
●   Usar spot instances para tener más instancias
    workers a precios de solidarios
●   BBDD Oracle, MySQL, MS-SQL gestionadas por
    Amazon
●   Etc (sacan cosas nuevas a cada rato)
●   Algo divertido: buscar 'Amazon Mechanical Turk'
Observaciones
●   Para tener una app en AWS y que aproveche
    la 'cloud'
       –   Necesitas a los developers, developers,
            developers, developers ...
       –   Los consejos de siempre
               ●   Ser 'fault tolerant'
               ●   Diseñar / hacer aplicaciones lo más 'stateless'
                    posible
               ●   Etc
●   El performance de red y EBS en AWS es
    variable
Observaciones
●   El HW físico aún existe
        –   A veces Amazon te informara que tiene que
              hacer mantenimiento en donde esta tu VM
        –   Otras veces el host físico hace que tu VM no
             funcione bien.
                ●   Solución: inicia una nueva instancia y termina la
                     que esta fallando
●   Con AWS lo que obtienes es una
    infraestructura dinámica y flexible, cuando no
    puedes montar tu propia 'cloud'
Lo escuche y lo olvide. Lo vi y lo entendí. Lo hice
                   y lo aprendí
                     Confucio
Créditos
 Imágenes
  –   openclipart.org/detail/2229/cloud-&-rainbow-by-
       gmcglinn
  –   www.re-cycledair.com/wp-
       content/uploads/2012/04/heroku-Logo-1.jpg
  –   www.instantpulp.com
  –   www.lomejordelface.com/wp-
       content/uploads/2011/09/piictu.jpg
  –   www.urbecom.com/blog/wp-
       content/uploads/2012/02/Logo-de-Amazon.-q.jpg
Créditos
 Imágenes
  –   wuaki.tv
  –   www.elandroidelibre.com/wp-
       content/uploads/2012/03/Instagram-Logo.jpg
  –   www.appsmashups.com/wp-
       content/uploads/2012/01/netflix.jpg
  –   www.flickr.com/photos/mcquinn/2302823476/sizes/
       m/in/photostream/
  –   www.marketingdirecto.com/wp-
       content/uploads/2012/02/pinterest12.jpg
Referencias
 Enlaces de interés
  –   alestic.com/
  –   https://github.com/boto/boto
  –   docs.amazonwebservices.com/general/latest/gr/Get
       TheTools.html
  –   aws.amazon.com/documentation/
  –   aws.amazon.com/articles/
  –   aws.amazon.com/resources/webinars/
Referencias
 Enlaces de interés
  –   aws.amazon.com/whitepapers/
  –   aws.amazon.com/architecture/
  –   reinvent.awsevents.com/
  –   docs.amazonwebservices.com/AWSEC2/latest/Use
       rGuide/FAQ_Regions_Availability_Zones.html
  –   https://forums.aws.amazon.com/thread.jspa?
        threadID=22830
Un estudiante pregunta:
      - ¿Qué es lo más valioso del mundo?

             El maestro respondió:
        - La cabeza de un gato muerto.

       El estudiante sorprendido pregunta:
-¿Por qué es la cabeza de un gato muerto la cosa
             más valiosa del mundo?

             El maestro respondió:
      - Porque nadie puede ponerle precio.

Más contenido relacionado

La actualidad más candente

Servicios de Storage en AWS
Servicios de Storage en AWSServicios de Storage en AWS
Servicios de Storage en AWS
Amazon Web Services LATAM
 
EC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidad EC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidad
Amazon Web Services LATAM
 
Servicios de Bases de Datos administradas en AWS
Servicios de Bases de Datos administradas en AWS Servicios de Bases de Datos administradas en AWS
Servicios de Bases de Datos administradas en AWS
Amazon Web Services LATAM
 
Analizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWSAnalizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWS
Amazon Web Services LATAM
 
Creando su primera aplicación Big Data en AWS
Creando su primera aplicación Big Data en AWSCreando su primera aplicación Big Data en AWS
Creando su primera aplicación Big Data en AWS
Amazon Web Services LATAM
 
EC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidadEC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidad
Amazon Web Services LATAM
 
Servicios de Storage de AWS
Servicios de Storage de AWSServicios de Storage de AWS
Servicios de Storage de AWS
Amazon Web Services LATAM
 
Planeando la recuperación de desastres en la nube con AWS
Planeando la recuperación de desastres en la nube con AWSPlaneando la recuperación de desastres en la nube con AWS
Planeando la recuperación de desastres en la nube con AWS
Amazon Web Services LATAM
 
DevOps en AWS
DevOps en AWS DevOps en AWS
Amazon EC2 Container Service a Profundidad
Amazon EC2 Container Service a ProfundidadAmazon EC2 Container Service a Profundidad
Amazon EC2 Container Service a Profundidad
Amazon Web Services LATAM
 
AWS para torpes - Introducción a AWS
AWS para torpes - Introducción a AWSAWS para torpes - Introducción a AWS
AWS para torpes - Introducción a AWS
Alvaro García Loaisa
 
Instancias Amazon EC2 a profundidad
Instancias Amazon EC2 a profundidadInstancias Amazon EC2 a profundidad
Instancias Amazon EC2 a profundidad
Amazon Web Services LATAM
 
AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...
AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...
AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...
Amazon Web Services
 
Docker ECS en AWS
Docker ECS en AWS Docker ECS en AWS
Docker ECS en AWS
Amazon Web Services LATAM
 
Webinar: Ask the Architect - Servicios de Storage de AWS
Webinar: Ask the Architect - Servicios de Storage de AWSWebinar: Ask the Architect - Servicios de Storage de AWS
Webinar: Ask the Architect - Servicios de Storage de AWS
Amazon Web Services LATAM
 
Webinar: Comenzando con los servicios de AWS
Webinar: Comenzando con los servicios de AWSWebinar: Comenzando con los servicios de AWS
Webinar: Comenzando con los servicios de AWS
Amazon Web Services LATAM
 
Creando su datacenter virtual
Creando su datacenter virtualCreando su datacenter virtual
Creando su datacenter virtual
Amazon Web Services LATAM
 
Analizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWSAnalizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWS
Amazon Web Services LATAM
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
Amazon Web Services LATAM
 
SQL Server 2014 en ambientes hibridos
SQL Server 2014 en ambientes hibridosSQL Server 2014 en ambientes hibridos
SQL Server 2014 en ambientes hibridos
Eduardo Castro
 

La actualidad más candente (20)

Servicios de Storage en AWS
Servicios de Storage en AWSServicios de Storage en AWS
Servicios de Storage en AWS
 
EC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidad EC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidad
 
Servicios de Bases de Datos administradas en AWS
Servicios de Bases de Datos administradas en AWS Servicios de Bases de Datos administradas en AWS
Servicios de Bases de Datos administradas en AWS
 
Analizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWSAnalizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWS
 
Creando su primera aplicación Big Data en AWS
Creando su primera aplicación Big Data en AWSCreando su primera aplicación Big Data en AWS
Creando su primera aplicación Big Data en AWS
 
EC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidadEC2: Cómputo en la nube a profundidad
EC2: Cómputo en la nube a profundidad
 
Servicios de Storage de AWS
Servicios de Storage de AWSServicios de Storage de AWS
Servicios de Storage de AWS
 
Planeando la recuperación de desastres en la nube con AWS
Planeando la recuperación de desastres en la nube con AWSPlaneando la recuperación de desastres en la nube con AWS
Planeando la recuperación de desastres en la nube con AWS
 
DevOps en AWS
DevOps en AWS DevOps en AWS
DevOps en AWS
 
Amazon EC2 Container Service a Profundidad
Amazon EC2 Container Service a ProfundidadAmazon EC2 Container Service a Profundidad
Amazon EC2 Container Service a Profundidad
 
AWS para torpes - Introducción a AWS
AWS para torpes - Introducción a AWSAWS para torpes - Introducción a AWS
AWS para torpes - Introducción a AWS
 
Instancias Amazon EC2 a profundidad
Instancias Amazon EC2 a profundidadInstancias Amazon EC2 a profundidad
Instancias Amazon EC2 a profundidad
 
AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...
AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...
AWS Summit Bogotá Track Avanzado: Sin servidores: Mobile backend como servici...
 
Docker ECS en AWS
Docker ECS en AWS Docker ECS en AWS
Docker ECS en AWS
 
Webinar: Ask the Architect - Servicios de Storage de AWS
Webinar: Ask the Architect - Servicios de Storage de AWSWebinar: Ask the Architect - Servicios de Storage de AWS
Webinar: Ask the Architect - Servicios de Storage de AWS
 
Webinar: Comenzando con los servicios de AWS
Webinar: Comenzando con los servicios de AWSWebinar: Comenzando con los servicios de AWS
Webinar: Comenzando con los servicios de AWS
 
Creando su datacenter virtual
Creando su datacenter virtualCreando su datacenter virtual
Creando su datacenter virtual
 
Analizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWSAnalizando el TCO para migrar a AWS
Analizando el TCO para migrar a AWS
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
 
SQL Server 2014 en ambientes hibridos
SQL Server 2014 en ambientes hibridosSQL Server 2014 en ambientes hibridos
SQL Server 2014 en ambientes hibridos
 

Similar a Mi experiencia con Amazon AWS EC2 y S3

Implementando DRP en AWS
Implementando DRP en AWSImplementando DRP en AWS
Implementando DRP en AWS
Amazon Web Services LATAM
 
Clase Maestra EC2
Clase Maestra EC2Clase Maestra EC2
Clase Maestra EC2
Amazon Web Services LATAM
 
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...Amazon Web Services
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
Amazon Web Services LATAM
 
Softonic Labs - Web Escalable
Softonic Labs - Web EscalableSoftonic Labs - Web Escalable
Softonic Labs - Web Escalable
Alex Puig
 
Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018
Gonzalo Vásquez
 
Desarrollo en la nube
Desarrollo en la nubeDesarrollo en la nube
Desarrollo en la nube
Javier Nievas
 
Comenzando con aplicaciones serverless en AWS
Comenzando con aplicaciones serverless en AWSComenzando con aplicaciones serverless en AWS
Comenzando con aplicaciones serverless en AWS
Amazon Web Services LATAM
 
Experiencias con PostgreSQL en AWS
Experiencias con PostgreSQL en AWSExperiencias con PostgreSQL en AWS
Experiencias con PostgreSQL en AWS
Alejandro E Brito Monedero
 
Amazon AWS - Instances EC2
Amazon AWS - Instances EC2Amazon AWS - Instances EC2
Amazon AWS - Instances EC2
Seidor Technologies Peru
 
AWS Summits América Latina 2015- Bases de Datos en AWS
AWS Summits América Latina 2015- Bases de Datos en AWSAWS Summits América Latina 2015- Bases de Datos en AWS
AWS Summits América Latina 2015- Bases de Datos en AWS
Amazon Web Services LATAM
 
Sobrevolando AWS
Sobrevolando AWSSobrevolando AWS
Sobrevolando AWS
Marco Torres
 
VMs de alto rendimiento para SQL Server en AWS y Azure
VMs de alto rendimiento para SQL Server en AWS y AzureVMs de alto rendimiento para SQL Server en AWS y Azure
VMs de alto rendimiento para SQL Server en AWS y Azure
SpanishPASSVC
 
Big Data: Arquitectura y mejores prácticas en AWS
Big Data: Arquitectura y mejores prácticas en AWSBig Data: Arquitectura y mejores prácticas en AWS
Big Data: Arquitectura y mejores prácticas en AWS
Amazon Web Services LATAM
 
Big Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWSBig Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWS
Amazon Web Services LATAM
 
AWS CloudFormation en 5 Minutos
AWS CloudFormation en 5 MinutosAWS CloudFormation en 5 Minutos
AWS CloudFormation en 5 Minutos
OSOCO
 
AWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de aws
AWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de awsAWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de aws
AWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de aws
Amazon Web Services
 
AWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de aws
AWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de awsAWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de aws
AWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de awsAmazon Web Services LATAM
 
Ansible + AWS: Cómo administrar tu infraestructura de AWS con Ansible
Ansible + AWS: Cómo administrar tu infraestructura de AWS con AnsibleAnsible + AWS: Cómo administrar tu infraestructura de AWS con Ansible
Ansible + AWS: Cómo administrar tu infraestructura de AWS con Ansible
Quito Lambda
 

Similar a Mi experiencia con Amazon AWS EC2 y S3 (20)

Implementando DRP en AWS
Implementando DRP en AWSImplementando DRP en AWS
Implementando DRP en AWS
 
Clase Maestra EC2
Clase Maestra EC2Clase Maestra EC2
Clase Maestra EC2
 
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
 
Softonic Labs - Web Escalable
Softonic Labs - Web EscalableSoftonic Labs - Web Escalable
Softonic Labs - Web Escalable
 
Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018
 
Desarrollo en la nube
Desarrollo en la nubeDesarrollo en la nube
Desarrollo en la nube
 
Comenzando con aplicaciones serverless en AWS
Comenzando con aplicaciones serverless en AWSComenzando con aplicaciones serverless en AWS
Comenzando con aplicaciones serverless en AWS
 
Experiencias con PostgreSQL en AWS
Experiencias con PostgreSQL en AWSExperiencias con PostgreSQL en AWS
Experiencias con PostgreSQL en AWS
 
Amazon AWS - Instances EC2
Amazon AWS - Instances EC2Amazon AWS - Instances EC2
Amazon AWS - Instances EC2
 
AWS Summits América Latina 2015- Bases de Datos en AWS
AWS Summits América Latina 2015- Bases de Datos en AWSAWS Summits América Latina 2015- Bases de Datos en AWS
AWS Summits América Latina 2015- Bases de Datos en AWS
 
Sobrevolando AWS
Sobrevolando AWSSobrevolando AWS
Sobrevolando AWS
 
VMs de alto rendimiento para SQL Server en AWS y Azure
VMs de alto rendimiento para SQL Server en AWS y AzureVMs de alto rendimiento para SQL Server en AWS y Azure
VMs de alto rendimiento para SQL Server en AWS y Azure
 
Big Data: Arquitectura y mejores prácticas en AWS
Big Data: Arquitectura y mejores prácticas en AWSBig Data: Arquitectura y mejores prácticas en AWS
Big Data: Arquitectura y mejores prácticas en AWS
 
AWS - Computación
AWS - ComputaciónAWS - Computación
AWS - Computación
 
Big Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWSBig Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWS
 
AWS CloudFormation en 5 Minutos
AWS CloudFormation en 5 MinutosAWS CloudFormation en 5 Minutos
AWS CloudFormation en 5 Minutos
 
AWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de aws
AWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de awsAWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de aws
AWS Summit Bogotá Track Básico: Almacenamiento y respaldos en la nube de aws
 
AWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de aws
AWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de awsAWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de aws
AWS Summits América Latina 2015- Almacenamiento y respaldos en la nube de aws
 
Ansible + AWS: Cómo administrar tu infraestructura de AWS con Ansible
Ansible + AWS: Cómo administrar tu infraestructura de AWS con AnsibleAnsible + AWS: Cómo administrar tu infraestructura de AWS con Ansible
Ansible + AWS: Cómo administrar tu infraestructura de AWS con Ansible
 

Más de Alejandro E Brito Monedero

Mad scalability (perfomance debugging)
Mad scalability (perfomance debugging)Mad scalability (perfomance debugging)
Mad scalability (perfomance debugging)
Alejandro E Brito Monedero
 
Tres historias
Tres historiasTres historias
AMQP vs GRAPHITE
AMQP vs GRAPHITEAMQP vs GRAPHITE
AMQP vs GRAPHITE
Alejandro E Brito Monedero
 
Sysdig
SysdigSysdig
Sysdig SRECon 16 Europe
Sysdig SRECon 16 EuropeSysdig SRECon 16 Europe
Sysdig SRECon 16 Europe
Alejandro E Brito Monedero
 
Funcional para trollear
Funcional para trollearFuncional para trollear
Funcional para trollear
Alejandro E Brito Monedero
 
Top Bug
Top BugTop Bug
Fabric más allá de lo básico
Fabric más allá de lo básicoFabric más allá de lo básico
Fabric más allá de lo básico
Alejandro E Brito Monedero
 
Fabric Fast & Furious edition
Fabric Fast & Furious editionFabric Fast & Furious edition
Fabric Fast & Furious edition
Alejandro E Brito Monedero
 
Así que pusiste MongoDB. Dime ¿cómo lo administras?
Así que pusiste MongoDB. Dime ¿cómo lo administras?Así que pusiste MongoDB. Dime ¿cómo lo administras?
Así que pusiste MongoDB. Dime ¿cómo lo administras?
Alejandro E Brito Monedero
 
AWS Baby steps circa 2008
AWS Baby steps circa 2008AWS Baby steps circa 2008
AWS Baby steps circa 2008
Alejandro E Brito Monedero
 
Using Logstash, elasticsearch & kibana
Using Logstash, elasticsearch & kibanaUsing Logstash, elasticsearch & kibana
Using Logstash, elasticsearch & kibana
Alejandro E Brito Monedero
 
Wireshark tips
Wireshark tipsWireshark tips

Más de Alejandro E Brito Monedero (13)

Mad scalability (perfomance debugging)
Mad scalability (perfomance debugging)Mad scalability (perfomance debugging)
Mad scalability (perfomance debugging)
 
Tres historias
Tres historiasTres historias
Tres historias
 
AMQP vs GRAPHITE
AMQP vs GRAPHITEAMQP vs GRAPHITE
AMQP vs GRAPHITE
 
Sysdig
SysdigSysdig
Sysdig
 
Sysdig SRECon 16 Europe
Sysdig SRECon 16 EuropeSysdig SRECon 16 Europe
Sysdig SRECon 16 Europe
 
Funcional para trollear
Funcional para trollearFuncional para trollear
Funcional para trollear
 
Top Bug
Top BugTop Bug
Top Bug
 
Fabric más allá de lo básico
Fabric más allá de lo básicoFabric más allá de lo básico
Fabric más allá de lo básico
 
Fabric Fast & Furious edition
Fabric Fast & Furious editionFabric Fast & Furious edition
Fabric Fast & Furious edition
 
Así que pusiste MongoDB. Dime ¿cómo lo administras?
Así que pusiste MongoDB. Dime ¿cómo lo administras?Así que pusiste MongoDB. Dime ¿cómo lo administras?
Así que pusiste MongoDB. Dime ¿cómo lo administras?
 
AWS Baby steps circa 2008
AWS Baby steps circa 2008AWS Baby steps circa 2008
AWS Baby steps circa 2008
 
Using Logstash, elasticsearch & kibana
Using Logstash, elasticsearch & kibanaUsing Logstash, elasticsearch & kibana
Using Logstash, elasticsearch & kibana
 
Wireshark tips
Wireshark tipsWireshark tips
Wireshark tips
 

Último

Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
samuelvideos
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
JimmyTejadaSalizar
 
algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1
yuki22434
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
maralache30
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
aljitagallego
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGATAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
arriagaanggie50
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
ValeriaAyala48
 
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
AMADO SALVADOR
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
JuanAlvarez413513
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
tamarita881
 

Último (20)

Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
 
algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1algebra de boole teoria.pdf texto guia.1
algebra de boole teoria.pdf texto guia.1
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGATAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
 
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
 

Mi experiencia con Amazon AWS EC2 y S3

  • 1. Mi experiencia con Amazon AWS EC2 y S3 Alejandro E Brito Monedero @ae_bm
  • 2. Agenda – Hablemos de AWS – AWS + Yo – Extras – Un poco de ec2-command-line – Preguntas – Referencias y créditos
  • 4. Proveedor IaaS (A.K.A la nube) ● Modelo pay as you go ● Virtualización con Xen ● Otra forma de “pensar” la arquitectura de aplicaciones ● Gestión de recursos de infraestructura a través de un API
  • 6. Fin de la parte de marketing
  • 7. Conceptos importantes ● Región – Zona geográfica donde están ubicados un conjunto de AZs – Cada región es independiente de las otras ● Availability Zone (AZ) – Es un datacenter – Varios AZs conforman una región – Los AZs de una región están interconectados por enlaces de baja latencia
  • 8. Conceptos importantes ● Amazon Machine Image (AMI) ● Amazon Elastic Compute Cloud (EC2) – Servicio Web que ofrece capacidad de computo ● Amazon Simple Storage Service S3 – Almacén de datos no estructurados con alta disponibilidad y durabilidad ● Amazon Elastic Block Store (EBS) – Volúmenes de almacenamiento persistentes para usar con instancias EC2
  • 9. Instancias EC2 ● Máquinas virtuales – Compartes la máquina física con otras instancias – No se puede controlar en que máquina física está la instancia (ciertas condiciones aplican) – No te encariñes a la instancia, que sea 'cloud' no lo hace infalible
  • 10. Instancias EC2 ● 2 tipos de imágenes (AMI): – Instance store ● Al principio era el único tipo de instancia ● Imagen de tamaño limitado y guardada en S3 ● Actualizar el AMI es un pain in the 4$$ ● Se pierde cualquier cambio no este almacenado en un volumen EBS ● Se puede migrar la imagen entre regiones (^_^) ● Si la imagen es muy grande puede tardar en iniciar
  • 11. Instancias EC2 ● 2 tipos de imágenes (AMI): – EBS-backed ● Se puede detener / iniciar la instancia – No olvidar lo que pasa con los discos efímeros ● Se puede cambiar el tipo de instancia – Escalado vertical ● La imagen es un snapshot del volumen raíz EBS en S3 ● No se puede migrar la imagen entre regiones
  • 12. Instancias EC2 - Tipos de almacenamiento ● Unidades de disco efímeras – Disco de la máquina física – El mejor I/O que se puede tener – Si se apaga / bloquea / detiene la instancia dile adiós a tus datos (;_;) ● EBS (discos persistentes) – SAN – Más lentos que los discos efímeros – RAID 1 – Snapshots incrementales guardados en S3 (^_^)
  • 13. Cosas que hice ● Disclaimer: Todo esto es mejorable, no es 'the netflix way' (-_-) – Sólo probando / jugando se hace experiencia ● Economía de guerra – Misión hacer todo lo más barato posible ● Migración de un hosting dedicado a AWS – DNS con un TTL de 300 por si la cosa no iba bien
  • 14. Cosas que hice ● Cada máquina frontend tenia una Elastic IP – No tocas los DNS – Ahora también existe Amazon Route 53 ● Para enviar correo usaba gmail como smarthost – No puedes cambiar los registros PTR de Amazon – Ahora hay Amazon SES ● AMIs del tipo Instance Store por cada rol – Ahora con instancias tipo EBS + CloudFormation + User Data Scripts + devops magic debería ser más flexible
  • 15. Cosas que hice ● Firewall – Usas los Security groups – Ahora los security groups se pueden administrar usando el portal WEB – Una IP externa autorizada para hacer SSH – Recomendado por los expertos ● Sólo permitir ssh desde un security group especial – Asociado a una instancia iniciada bajo demanda
  • 16. Cosas que hice ● Backups – Un volumen EBS en donde se hacían respaldos incrementales diarios ● rsync + hard links magic – Snapshots a S3 del volumen EBS 'respaldo' – Pude omitir este salto intermedio, pero siempre pienso en la consistencia de los datos y eso causa insomnio (;_;) – xfs_freeze, db flush dmsetup, etc, son amigos
  • 17. Cosas que hice ● Monitoring – Munin – Zabbix – Puedes usar CloudWatch para empezar – Who watches the watchmen? ● “Free uptime monitoring” ● Deploy en 1 AZ – Shame on me (-_-) – No comments – Se deberían hacer deploys multi AZ (Hasta donde lleguen los $$)
  • 18. Cosas que hice ● El almacenamiento (FUN part) – LVM con EBSs como PVs – 1 LV en 1 VG en 1 EBS – Aumentaba de tamaño las particiones con una mezcla de vudú, vgextend, pvmove, etc. – Seguro sería muy lento y I/O unfriendly intentarlo con EBSs muy grandes
  • 19. Cosas que hice ● El almacenamiento (FUN part) – ¿Cómo mejorarlo? 'brainstorming' (en especial con BBDD) ● Pensando en una mezcla de RAID, LVM, XFS o afines si tuviera muchos discos ● ¿Se pueden hacer snapshots S3 de varios volúmenes EBS en el mismo instante de tiempo? ● Usar glusterfs o afines ● Hacer los respaldos en nodos secundarios – Si tu app maneja el concepto de S3 te ahorrarías muchos de estos 'hacks'
  • 20. Cosas nuevas de Amazon AWS ● DNS Route 53 ● Cloudfront como CDN ● Amazon SES ● ELB para hacer balanceo de carga (¿Usarán HAProxy?) (^_^) ● Métricas con Cloudwatch ● Escalado horizontal automático ● SQS ● DynamoDB
  • 21. Cosas nuevas de Amazon AWS ● Identity and Access Management (IAM) – Varios perfiles de usuarios con distintos permisos – Permite delegar, delegar, ... delegar – Más tiempo libre (^_^) ● Usar spot instances para tener más instancias workers a precios de solidarios ● BBDD Oracle, MySQL, MS-SQL gestionadas por Amazon ● Etc (sacan cosas nuevas a cada rato) ● Algo divertido: buscar 'Amazon Mechanical Turk'
  • 22. Observaciones ● Para tener una app en AWS y que aproveche la 'cloud' – Necesitas a los developers, developers, developers, developers ... – Los consejos de siempre ● Ser 'fault tolerant' ● Diseñar / hacer aplicaciones lo más 'stateless' posible ● Etc ● El performance de red y EBS en AWS es variable
  • 23. Observaciones ● El HW físico aún existe – A veces Amazon te informara que tiene que hacer mantenimiento en donde esta tu VM – Otras veces el host físico hace que tu VM no funcione bien. ● Solución: inicia una nueva instancia y termina la que esta fallando ● Con AWS lo que obtienes es una infraestructura dinámica y flexible, cuando no puedes montar tu propia 'cloud'
  • 24. Lo escuche y lo olvide. Lo vi y lo entendí. Lo hice y lo aprendí Confucio
  • 25. Créditos Imágenes – openclipart.org/detail/2229/cloud-&-rainbow-by- gmcglinn – www.re-cycledair.com/wp- content/uploads/2012/04/heroku-Logo-1.jpg – www.instantpulp.com – www.lomejordelface.com/wp- content/uploads/2011/09/piictu.jpg – www.urbecom.com/blog/wp- content/uploads/2012/02/Logo-de-Amazon.-q.jpg
  • 26. Créditos Imágenes – wuaki.tv – www.elandroidelibre.com/wp- content/uploads/2012/03/Instagram-Logo.jpg – www.appsmashups.com/wp- content/uploads/2012/01/netflix.jpg – www.flickr.com/photos/mcquinn/2302823476/sizes/ m/in/photostream/ – www.marketingdirecto.com/wp- content/uploads/2012/02/pinterest12.jpg
  • 27. Referencias Enlaces de interés – alestic.com/ – https://github.com/boto/boto – docs.amazonwebservices.com/general/latest/gr/Get TheTools.html – aws.amazon.com/documentation/ – aws.amazon.com/articles/ – aws.amazon.com/resources/webinars/
  • 28. Referencias Enlaces de interés – aws.amazon.com/whitepapers/ – aws.amazon.com/architecture/ – reinvent.awsevents.com/ – docs.amazonwebservices.com/AWSEC2/latest/Use rGuide/FAQ_Regions_Availability_Zones.html – https://forums.aws.amazon.com/thread.jspa? threadID=22830
  • 29. Un estudiante pregunta: - ¿Qué es lo más valioso del mundo? El maestro respondió: - La cabeza de un gato muerto. El estudiante sorprendido pregunta: -¿Por qué es la cabeza de un gato muerto la cosa más valiosa del mundo? El maestro respondió: - Porque nadie puede ponerle precio.