SlideShare una empresa de Scribd logo
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Alejandro Flores, Arquitecto de Soluciones
Abril 06, 2016
EC2
Cómputo en la nube a profundidad
Amazon EC2 es grande
Opciones de Compra
APIs
Instancias
Red
Instancias EC2
Host Server
Hypervisor
Guest 1 Guest 2 Guest n
Instancias EC2 : Historia
2006 2008 2010 2012 2014 2016
m1.small
m1.large
m1.xlarge
c1.medium
c1.xlarge
m2.xlarge
m2.4xlarge
m2.2xlarge
cc1.4xlarge
t1.micro
cg1.4xlarge
cc2.8xlarge
m1.medium
hi1.4xlarge
m3.xlarge
m3.2xlarge
hs1.8xlarge
cr1.8xlarge
c3.large
c3.xlarge
c3.2xlarge
c3.4xlarge
c3.8xlarge
g2.2xlarge
i2.xlarge
i2.2xlarge
i2.4xlarge
i2.4xlarge
m3.medium
m3.large
r3.large
r3.xlarge
r3.2xlarge
r3.4xlarge
r3.8xlarge
t2.micro
t2.small
t2.med
c4.large
c4.xlarge
c4.2xlarge
c4.4xlarge
c4.8xlarge
d2.xlarge
d2.2xlarge
d2.4xlarge
d2.8xlarge
g2.8xlarge
t2.large
m4.large
m4.xlarge
m4.2xlarge
m4.4xlarge
m4.10xlarge
Qué esperar de esta sesión ?
• Definir el desempeño de un sistema y cómo se
caracteriza para diferentes cargas de trabajo
• Cómo las instancias EC2 ofrecen un óptimo desempeño,
manteniendo flexibilidad y agilidad
• Cómo aprovechar de mejor manera el uso de las
instancias EC2
Definiendo el desempeño
Reserva de un servidor
• Los servidores son reservados para realizar trabajos
• El desempeño de mide de manera diferente
dependiendo del trabajo que se realice
• Lo que desempeño significa,
depende de la perspectiva:
• Tiempo de respuesta
• Rendimiento
• Consistencia
Desempeño = perspectiva
Aplicación
Librerías de Sistema
Llamadas a sistema
Kernel
Dispositivo
Carga
Factores de desempeño
Recurso Factores Indicadores
CPU Sockets, número de núcleos,
frecuencia de reloj, capacidad
Utilización de CPU, tamaño de la cola
de ejecución
Memoria Capacidad Memoria libre, paginación, swapping
Interfaz de
Red
Ancho de Banda Máximo, paquetes Cantidad paquetes recibidos,
transferencia de paquetes sobre el
máximo ancho de banda
Disco IOPS, Desempeño Tamaño de cola en espera, utilización
de dispositivos, errores en los
dispositivos
Utilización de Recursos
• Dada una carga, qué tan eficientemente se utilizan los
recursos
• Un recurso con utilización del 100% no puede recibir o
atender más peticiones
• Baja utilización indica que se han reservado más
recursos de los necesarios
Ejemplo: Aplicación Web
• MediaWiki instalado en un servidor Apache con 140
páginas de contenido
• Incremento de carga en intervalos de tiempo
Ejemplo: Aplicación Web
• Estadísticas de Memoria
Ejemplo: Aplicación Web
• Estadísticas de Disco
Ejemplo: Aplicación Web
• Estadísticas de Red
Ejemplo: Aplicación Web
• Estadísticas de CPU
Selección de instancia = optimización
• La selección de una instancia es equivalente a la
optimización de los recursos
• Dar de baja instancias es tan fácil como adquirir nuevas
• Alinear el tipo de carga con el tipo de instancia óptimo
Ofreciendo desempeño de
cómputo en EC2
Instrucciones de CPU y
Niveles de Protección
Instrucciones de CPU y Niveles de Protección
• CPU tiene dos niveles de protección: Kernel y Aplicación
• Instrucciones privilegiadas no se pueden ejecutar en
modo usuario para proteger el sistema.
• Aplicaciones apalancan las llamadas al sistema al
kernel
Instrucciones privilegiadas:
• Inicio de I/O
• Acceso a I/O de Dispositivos
(red, disco)
• Manejo del tiempo
• Pausa CPU Aplicación
Kernel
Ejemplo: Llamadas al sistema de una aplicación web
[ec2-user@ip-10-0-121-0 ~]$ sudo strace -c -p 2440
Process 2440 attached
^CProcess 2440 detached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
0.00 0.000000 0 931 11 read
0.00 0.000000 0 887 write
0.00 0.000000 0 121 open
0.00 0.000000 0 154 close
0.00 0.000000 0 1357 32 stat
0.00 0.000000 0 341 fstat
0.00 0.000000 0 99 11 lstat
0.00 0.000000 0 865 poll
0.00 0.000000 0 121 mmap
0.00 0.000000 0 121 munmap
0.00 0.000000 0 220 brk
0.00 0.000000 0 11 rt_sigaction
0.00 0.000000 0 11 rt_sigprocmask
0.00 0.000000 0 22 writev
0.00 0.000000 0 66 22 access
Porqué PV-HVM es más rápido que PV ?
• PV-HVM permite que las aplicaciones llamen directamente al kernel
• PV la aplicación tiene que pasar por el VMM
• Las aplicaciones basadas en llamadas a sistema, son las más
afectadas
Aplicación
Kernel VMM
Aplicación
Kernel
VMM
Kernel
Aplicación
Bare Metal PV PV-HVM
Antes de Intel VT-x Después de Intel VT-x
Tip: Usar AMIs PV-HVM con EBS
Manejo del tiempo
Manejo del tiempo
• El manejo del tiempo puede ser costoso para una
instancia
• Rutinas como gettimeofday() resultan en una rutina de
lectura a una fuente de tiempo que termina en una
transición hacia el ring0 (kernel)
Tip: Usar TSC como fuente de tiempo
Cambiarlo por:
# cat /sys/devices/system/cl*/cl*/available_clocksource
xen tsc hpet acpi_pm
# cat /sys/devices/system/cl*/cl*/current_clocksource
xen
# emacs /boot/grub/menu.list && reboot
# cat /proc/cmdline
root=/dev/xvda1 ro clock source=tsc
Control de Estados C y P
Instancias EC2
• Intel Turbo Boost Technology
• Control de los Estados P y C
Model vCPU Memory (GiB) EBS (Mbps)
c4.8xlarge 36 60 4,000
d2.8xlarge 36 244 HDD Storage
m4.10xlarge 40 160 4,000
Controles de Estado C y P
• Controles de Estado C y P
• Estado-C
• Controla el nivel de reposo al que puede llegar un núcleo
• Numerados del C0 (el núcleo está trabajando normalmente y
ejecutando instrucciones) al C6 (el núcleo está apagado)
• Estado-P
• Controla el nivel de desempeño deseado en un núcleo
• Numerados del P0 (el mayor desempeño en el núcleo en donde
tiene permitido usar la tecnología Turbo Boost de Intel que
permite incrementar la frecuencia), y luego va del P1 (solicita la
máxima frecuencia base) al P15 (solicita la mínima frecuencia
posible)
Controles de Estado C y P
• Beneficios
• Incrementar el desempeño del procesador
• Reducir latencia
• Optimización de una instancia para una carga de trabajo o
aplicación específica
Controles de Estado C y P
• Ejemplo (Mayor desempeño con máxima frecuencia
Turbo Boost)
Herramienta turbostat (disponible por defecto en las instancias Amazon Linux)
[ec2-user ~]$ sudo turbostat stress -c 2 -t 10
stress: info: [30680] dispatching hogs: 2 cpu, 0 io, 0 vm, 0 hdd
stress: info: [30680] successful run completed in 10s
pk cor CPU %c0 GHz TSC SMI %c1 %c3 %c6 %c7 %pc2 %pc3 %pc6 %pc7 Pkg_W RAM_W PKG_% RAM_%
5.54 3.44 2.90 0 9.18 0.00 85.28 0.00 0.00 0.00 0.00 0.00 94.04 32.70 54.18 0.00
0 0 0 0.12 3.26 2.90 0 3.61 0.00 96.27 0.00 0.00 0.00 0.00 0.00 48.12 18.88 26.02 0.00
0 0 18 0.12 3.26 2.90 0 3.61
0 1 1 0.12 3.26 2.90 0 4.11 0.00 95.77 0.00
0 1 19 0.13 3.27 2.90 0 4.11
0 2 2 0.13 3.28 2.90 0 4.45 0.00 95.42 0.00
0 2 20 0.11 3.27 2.90 0 4.47
0 3 3 0.05 3.42 2.90 0 99.91 0.00 0.05 0.00
0 3 21 97.84 3.45 2.90 0 2.11
...
1 1 10 0.06 3.33 2.90 0 99.88 0.01 0.06 0.00
1 1 28 97.61 3.44 2.90 0 2.32
...
10.002556 sec
Controles de Estado C y P
• Ejemplo (Limitar el Estado C)
Herramienta turbostat (disponible por defecto en las instancias Amazon Linux)
[ec2-user ~]$ sudo vim /boot/grub/grub.conf
# created by imagebuilder
default=0
timeout=1
hiddenmenu
title Amazon Linux 2014.09 (3.14.26-24.46.amzn1.x86_64)
root (hd0,0)
kernel /boot/vmlinuz-3.14.26-24.46.amzn1.x86_64 root=LABEL=/ console=ttyS0 intel_idle.max_cstate=1
initrd /boot/initramfs-3.14.26-24.46.amzn1.x86_64.img
Tip: Estado P para AVX2
• Las cargas de trabajo de tipo AVX o AVX2 (Intel
Advanced Vector Extensions) se desenvuelven mejor en
frecuencias bajas porque pueden usar mayor energía
• Al ejecutar el procesador a baja frecuencia,
deshabilitando Turbo Boost, se reduce la cantidad de
energía usada y mantiene la velocidad de manera
consistente
Tip: Estado P para AVX2
• Ejemplo (Deshabilitar Turbo Boost, solicitando el estado
P1)
• Ejemplo (Habilitar Turbo Boost, solicitando el estado P0)
[ec2-user ~]$ sudo sh -c "echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo"
[ec2-user ~]$ sudo sh -c "echo 0 > /sys/devices/system/cpu/intel_pstate/no_turbo"
Ofreciendo desempeño de I/O
en EC2
Virtualización de I/O y Dispositivos
• Split Driver Model
• Intel VT-d
• Paso directo para dispositivos dedicados
• Enhanced Networking
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Paso Directo al Dispositivo: Enhanced Networking
• El dispositivo físico de red expone una función virtual a
la instancia
• Requiere un driver especial:
• El sistema operativo de la instancia necesita saber sobre el
driver
Paso Directo al Dispositivo: Enhanced Networking
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
NIC
Driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
SR-IOV Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Paso Directo al Dispositivo: Enhanced Networking
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
NIC
Driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
SR-IOV Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Paso Directo al Dispositivo: Enhanced Networking
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
NIC
Driver
Backend
driver
Device
Driver
Physical
CPU
Physical
Memory
SR-IOV Network
Device
Virtual CPU
Virtual
Memory
CPU
Scheduling
Sockets
Application
Tip: Usar Enhanced Networking
• Mayor cantidad de paquetes por segundo
• Menor varianza en latencia
• El Sistema Operativo de la instancia debe soportarlo
Revisión de Instancias I2
Instancias I2
• Proveen almacenamiento SSD
• Proveen IOPS a bajo costo
• Optimizadas para alta demanda de I/O aleatorio
Model vCPU Memory
(GiB)
Storage Read IOPS Write IOPS
i2.xlarge 4 30.5 1 x 800 SSD 35,000 35,000
i2.2xlarge 8 61 2 x 800 SSD 75,000 75,000
i2.4xlarge 16 122 4 x 800 SSD 175,000 155,000
i2.8xlarge 32 244 8 x 800 SSD 365,000 315,000
Cesión en kernels previos a la versión 3.8.0
• Previo a la versión 3.8.0, se requiere un Mapa de Cesiones
• El Mapa de Cesiones requiere de operaciones costosas debido a flushes de
TLB (Translation Lookaside Buffer)
read(fd, buffer,…)
Cesión en kernels posteriores a la versión 3.8.0
• El Mapa de Cesiones está definido en un pool
• La información es copiada o extraída del pool
Copy to
and from
grant pool
Tip: Usar kernels posteriores a la versión 3.8.0
• Amazon Linux 13.09 o mayor
• Ubuntu 14.04 o mayor
• RHEL7 o mayor
• Etc.
Resumen
• Usar PV-HVM
• Usar TSC para el manejo de tiempo
• Aprovechar los controles de Estado C y P
• Usar Enhanced Networking
• Usar kernels posteriores a la versión 3.8.0
Gracias!

Más contenido relacionado

PDF
Como reducir costos en AWS
PDF
Servicios de bases de datos administradas en AWS
PDF
Mi experiencia con Amazon AWS EC2 y S3
PPTX
Servicios de Storage en AWS
PDF
Servicios de Storage en AWS
PDF
Servicios de storage de AWS
PDF
EC2: Cómputo en la nube a profundidad
PDF
Servicios de Storage de AWS
Como reducir costos en AWS
Servicios de bases de datos administradas en AWS
Mi experiencia con Amazon AWS EC2 y S3
Servicios de Storage en AWS
Servicios de Storage en AWS
Servicios de storage de AWS
EC2: Cómputo en la nube a profundidad
Servicios de Storage de AWS

La actualidad más candente (20)

PPTX
Servicios de Bases de Datos administradas en AWS
PDF
Instancias Amazon EC2 a profundidad
PDF
Analizando el TCO para migrar a AWS
PDF
Planeando la recuperación de desastres en la nube con AWS
PPTX
EC2: Cómputo en la nube a profundidad
PDF
Creando su primera aplicación de Big Data en AWS
PDF
Creando su primera aplicación Big Data en AWS
PDF
Escalando a sus primeros 10 millones de usuarios
PDF
Optimizando cargas de trabajo en SAP Hana con instancias x1 de Amazon EC2
PDF
Docker ECS en AWS
PDF
Optimizacion de costos a gran escala
PDF
Analizando el TCO para migrar a AWS
PPTX
EC2: Cómputo en la nube a profundidad
PDF
Comenzando con la nube híbrida
PDF
Escalando para sus primeros 10 millones de usuarios
PDF
Mejores prácticas de IAM
PPTX
Creando su datacenter virtual
PDF
PDF
Servicios de bases de datos administradas en AWS
PPTX
Amazon EC2 Container Service a Profundidad
Servicios de Bases de Datos administradas en AWS
Instancias Amazon EC2 a profundidad
Analizando el TCO para migrar a AWS
Planeando la recuperación de desastres en la nube con AWS
EC2: Cómputo en la nube a profundidad
Creando su primera aplicación de Big Data en AWS
Creando su primera aplicación Big Data en AWS
Escalando a sus primeros 10 millones de usuarios
Optimizando cargas de trabajo en SAP Hana con instancias x1 de Amazon EC2
Docker ECS en AWS
Optimizacion de costos a gran escala
Analizando el TCO para migrar a AWS
EC2: Cómputo en la nube a profundidad
Comenzando con la nube híbrida
Escalando para sus primeros 10 millones de usuarios
Mejores prácticas de IAM
Creando su datacenter virtual
Servicios de bases de datos administradas en AWS
Amazon EC2 Container Service a Profundidad
Publicidad

Destacado (20)

PDF
Construya APIs seguras y escalables
PDF
Comenzando com la nube hibrida
PDF
Comenzando con los servicios móviles en AWS
PPTX
Vanessa castiblanco
PPTX
PUBLICACIÓN1_SLIDESHARE
PDF
Embarazoadolescente
PDF
Compras publicas proveedores enero 2015
PPTX
Como crear un sitio web en línea
PPTX
Temática del proyecto 2012
PDF
Seminario taller rrhh enero 2015
DOCX
Deber en clase de oportunidades de negocios en america
PPT
Mediafire
DOCX
Ecoturismo, turismo y vinculacion en mercados internacionales
PPTX
Supermercados. Breve.
PPTX
DOCX
Autoestima
DOCX
Trabajo de derecho internacional el qu es .....
PPS
Web 2.0
PPT
Fotonovela
PPTX
Trabajo de ciencias penales
Construya APIs seguras y escalables
Comenzando com la nube hibrida
Comenzando con los servicios móviles en AWS
Vanessa castiblanco
PUBLICACIÓN1_SLIDESHARE
Embarazoadolescente
Compras publicas proveedores enero 2015
Como crear un sitio web en línea
Temática del proyecto 2012
Seminario taller rrhh enero 2015
Deber en clase de oportunidades de negocios en america
Mediafire
Ecoturismo, turismo y vinculacion en mercados internacionales
Supermercados. Breve.
Autoestima
Trabajo de derecho internacional el qu es .....
Web 2.0
Fotonovela
Trabajo de ciencias penales
Publicidad

Similar a EC2 Cómputo en la nube a profundidad (20)

PDF
Rendimiento en magento
PPTX
AWS Summits América Latina 2015 EC2 Avanzado
PDF
TSME10_MVSI_S01_MA01.pdfmanual de instalación
PDF
Guia de instalacion de windows server 2008
PDF
ODP
Escalabilidad - Apache y MySQL
PDF
28 el directorio sysconfig
PDF
Mrtg ubuntu
PDF
Trabajo práctico nº 1
PDF
Administración de red servidores y seguridad
PDF
Actividad No. 5.5: Aseguramiento de servidores GNU/Linux
PDF
Informe Ejecutivo Fase 1
PPTX
Docker 2014 v2
PDF
AWS Summits América Latina 2015- EC2 Computo en la nube
PDF
Docker y PostgreSQL
PDF
Orquestadores para las cuatro estaciones (swarm, kubernetes, mesos y rancher)
PPTX
Refrigeracion de un procesador
PPTX
Refrigeracion de un procesador
Rendimiento en magento
AWS Summits América Latina 2015 EC2 Avanzado
TSME10_MVSI_S01_MA01.pdfmanual de instalación
Guia de instalacion de windows server 2008
Escalabilidad - Apache y MySQL
28 el directorio sysconfig
Mrtg ubuntu
Trabajo práctico nº 1
Administración de red servidores y seguridad
Actividad No. 5.5: Aseguramiento de servidores GNU/Linux
Informe Ejecutivo Fase 1
Docker 2014 v2
AWS Summits América Latina 2015- EC2 Computo en la nube
Docker y PostgreSQL
Orquestadores para las cuatro estaciones (swarm, kubernetes, mesos y rancher)
Refrigeracion de un procesador
Refrigeracion de un procesador

Más de Amazon Web Services LATAM (20)

PPTX
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
PPTX
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
PPTX
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
PPTX
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
PPTX
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
PPTX
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
PPTX
Automatice el proceso de entrega con CI/CD en AWS
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
PPTX
Cómo empezar con Amazon EKS
PPTX
Como começar com Amazon EKS
PPTX
Ransomware: como recuperar os seus dados na nuvem AWS
PPTX
Ransomware: cómo recuperar sus datos en la nube de AWS
PPTX
Ransomware: Estratégias de Mitigação
PPTX
Ransomware: Estratégias de Mitigación
PPTX
Aprenda a migrar y transferir datos al usar la nube de AWS
PPTX
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
PPTX
Cómo mover a un almacenamiento de archivos administrados
PPTX
Simplifique su BI con AWS
PPTX
Simplifique o seu BI com a AWS
PPTX
Os benefícios de migrar seus workloads de Big Data para a AWS
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
Automatice el proceso de entrega con CI/CD en AWS
Automatize seu processo de entrega de software com CI/CD na AWS
Cómo empezar con Amazon EKS
Como começar com Amazon EKS
Ransomware: como recuperar os seus dados na nuvem AWS
Ransomware: cómo recuperar sus datos en la nube de AWS
Ransomware: Estratégias de Mitigação
Ransomware: Estratégias de Mitigación
Aprenda a migrar y transferir datos al usar la nube de AWS
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
Cómo mover a un almacenamiento de archivos administrados
Simplifique su BI con AWS
Simplifique o seu BI com a AWS
Os benefícios de migrar seus workloads de Big Data para a AWS

Último (20)

PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
diagrama de pareto.pdf valerie giraldo diaz
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
taller de informática - LEY DE OHM
DOCX
Trabajo colaborativo Grupo #2.docxmkkkkkkl
PDF
La electricidad y la electrónica .pdf n
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
Maste clas de estructura metálica y arquitectura
PPTX
Administración se srevidores de apliaciones
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PDF
Temas y subtemas de las fichas 1 y 2.pdf
PPTX
Presentación de Redes de Datos modelo osi
PDF
clase auditoria informatica 2025.........
PDF
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PDF
Estrategia de apoyo tecnología grado 9-3
PDF
Influencia-del-uso-de-redes-sociales.pdf
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
diagrama de pareto.pdf valerie giraldo diaz
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
taller de informática - LEY DE OHM
Trabajo colaborativo Grupo #2.docxmkkkkkkl
La electricidad y la electrónica .pdf n
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
REDES INFORMATICAS REDES INFORMATICAS.pptx
Presentación PASANTIAS AuditorioOO..pptx
Maste clas de estructura metálica y arquitectura
Administración se srevidores de apliaciones
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
Temas y subtemas de las fichas 1 y 2.pdf
Presentación de Redes de Datos modelo osi
clase auditoria informatica 2025.........
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
Estrategia de apoyo tecnología grado 9-3
Influencia-del-uso-de-redes-sociales.pdf
historia_web de la creacion de un navegador_presentacion.pptx

EC2 Cómputo en la nube a profundidad

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Alejandro Flores, Arquitecto de Soluciones Abril 06, 2016 EC2 Cómputo en la nube a profundidad
  • 2. Amazon EC2 es grande Opciones de Compra APIs Instancias Red
  • 4. Instancias EC2 : Historia 2006 2008 2010 2012 2014 2016 m1.small m1.large m1.xlarge c1.medium c1.xlarge m2.xlarge m2.4xlarge m2.2xlarge cc1.4xlarge t1.micro cg1.4xlarge cc2.8xlarge m1.medium hi1.4xlarge m3.xlarge m3.2xlarge hs1.8xlarge cr1.8xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge g2.2xlarge i2.xlarge i2.2xlarge i2.4xlarge i2.4xlarge m3.medium m3.large r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge t2.micro t2.small t2.med c4.large c4.xlarge c4.2xlarge c4.4xlarge c4.8xlarge d2.xlarge d2.2xlarge d2.4xlarge d2.8xlarge g2.8xlarge t2.large m4.large m4.xlarge m4.2xlarge m4.4xlarge m4.10xlarge
  • 5. Qué esperar de esta sesión ? • Definir el desempeño de un sistema y cómo se caracteriza para diferentes cargas de trabajo • Cómo las instancias EC2 ofrecen un óptimo desempeño, manteniendo flexibilidad y agilidad • Cómo aprovechar de mejor manera el uso de las instancias EC2
  • 7. Reserva de un servidor • Los servidores son reservados para realizar trabajos • El desempeño de mide de manera diferente dependiendo del trabajo que se realice
  • 8. • Lo que desempeño significa, depende de la perspectiva: • Tiempo de respuesta • Rendimiento • Consistencia Desempeño = perspectiva Aplicación Librerías de Sistema Llamadas a sistema Kernel Dispositivo Carga
  • 9. Factores de desempeño Recurso Factores Indicadores CPU Sockets, número de núcleos, frecuencia de reloj, capacidad Utilización de CPU, tamaño de la cola de ejecución Memoria Capacidad Memoria libre, paginación, swapping Interfaz de Red Ancho de Banda Máximo, paquetes Cantidad paquetes recibidos, transferencia de paquetes sobre el máximo ancho de banda Disco IOPS, Desempeño Tamaño de cola en espera, utilización de dispositivos, errores en los dispositivos
  • 10. Utilización de Recursos • Dada una carga, qué tan eficientemente se utilizan los recursos • Un recurso con utilización del 100% no puede recibir o atender más peticiones • Baja utilización indica que se han reservado más recursos de los necesarios
  • 11. Ejemplo: Aplicación Web • MediaWiki instalado en un servidor Apache con 140 páginas de contenido • Incremento de carga en intervalos de tiempo
  • 12. Ejemplo: Aplicación Web • Estadísticas de Memoria
  • 13. Ejemplo: Aplicación Web • Estadísticas de Disco
  • 14. Ejemplo: Aplicación Web • Estadísticas de Red
  • 15. Ejemplo: Aplicación Web • Estadísticas de CPU
  • 16. Selección de instancia = optimización • La selección de una instancia es equivalente a la optimización de los recursos • Dar de baja instancias es tan fácil como adquirir nuevas • Alinear el tipo de carga con el tipo de instancia óptimo
  • 18. Instrucciones de CPU y Niveles de Protección
  • 19. Instrucciones de CPU y Niveles de Protección • CPU tiene dos niveles de protección: Kernel y Aplicación • Instrucciones privilegiadas no se pueden ejecutar en modo usuario para proteger el sistema. • Aplicaciones apalancan las llamadas al sistema al kernel Instrucciones privilegiadas: • Inicio de I/O • Acceso a I/O de Dispositivos (red, disco) • Manejo del tiempo • Pausa CPU Aplicación Kernel
  • 20. Ejemplo: Llamadas al sistema de una aplicación web [ec2-user@ip-10-0-121-0 ~]$ sudo strace -c -p 2440 Process 2440 attached ^CProcess 2440 detached % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 0.00 0.000000 0 931 11 read 0.00 0.000000 0 887 write 0.00 0.000000 0 121 open 0.00 0.000000 0 154 close 0.00 0.000000 0 1357 32 stat 0.00 0.000000 0 341 fstat 0.00 0.000000 0 99 11 lstat 0.00 0.000000 0 865 poll 0.00 0.000000 0 121 mmap 0.00 0.000000 0 121 munmap 0.00 0.000000 0 220 brk 0.00 0.000000 0 11 rt_sigaction 0.00 0.000000 0 11 rt_sigprocmask 0.00 0.000000 0 22 writev 0.00 0.000000 0 66 22 access
  • 21. Porqué PV-HVM es más rápido que PV ? • PV-HVM permite que las aplicaciones llamen directamente al kernel • PV la aplicación tiene que pasar por el VMM • Las aplicaciones basadas en llamadas a sistema, son las más afectadas Aplicación Kernel VMM Aplicación Kernel VMM Kernel Aplicación Bare Metal PV PV-HVM Antes de Intel VT-x Después de Intel VT-x
  • 22. Tip: Usar AMIs PV-HVM con EBS
  • 24. Manejo del tiempo • El manejo del tiempo puede ser costoso para una instancia • Rutinas como gettimeofday() resultan en una rutina de lectura a una fuente de tiempo que termina en una transición hacia el ring0 (kernel)
  • 25. Tip: Usar TSC como fuente de tiempo Cambiarlo por: # cat /sys/devices/system/cl*/cl*/available_clocksource xen tsc hpet acpi_pm # cat /sys/devices/system/cl*/cl*/current_clocksource xen # emacs /boot/grub/menu.list && reboot # cat /proc/cmdline root=/dev/xvda1 ro clock source=tsc
  • 27. Instancias EC2 • Intel Turbo Boost Technology • Control de los Estados P y C Model vCPU Memory (GiB) EBS (Mbps) c4.8xlarge 36 60 4,000 d2.8xlarge 36 244 HDD Storage m4.10xlarge 40 160 4,000
  • 28. Controles de Estado C y P • Controles de Estado C y P • Estado-C • Controla el nivel de reposo al que puede llegar un núcleo • Numerados del C0 (el núcleo está trabajando normalmente y ejecutando instrucciones) al C6 (el núcleo está apagado) • Estado-P • Controla el nivel de desempeño deseado en un núcleo • Numerados del P0 (el mayor desempeño en el núcleo en donde tiene permitido usar la tecnología Turbo Boost de Intel que permite incrementar la frecuencia), y luego va del P1 (solicita la máxima frecuencia base) al P15 (solicita la mínima frecuencia posible)
  • 29. Controles de Estado C y P • Beneficios • Incrementar el desempeño del procesador • Reducir latencia • Optimización de una instancia para una carga de trabajo o aplicación específica
  • 30. Controles de Estado C y P • Ejemplo (Mayor desempeño con máxima frecuencia Turbo Boost) Herramienta turbostat (disponible por defecto en las instancias Amazon Linux) [ec2-user ~]$ sudo turbostat stress -c 2 -t 10 stress: info: [30680] dispatching hogs: 2 cpu, 0 io, 0 vm, 0 hdd stress: info: [30680] successful run completed in 10s pk cor CPU %c0 GHz TSC SMI %c1 %c3 %c6 %c7 %pc2 %pc3 %pc6 %pc7 Pkg_W RAM_W PKG_% RAM_% 5.54 3.44 2.90 0 9.18 0.00 85.28 0.00 0.00 0.00 0.00 0.00 94.04 32.70 54.18 0.00 0 0 0 0.12 3.26 2.90 0 3.61 0.00 96.27 0.00 0.00 0.00 0.00 0.00 48.12 18.88 26.02 0.00 0 0 18 0.12 3.26 2.90 0 3.61 0 1 1 0.12 3.26 2.90 0 4.11 0.00 95.77 0.00 0 1 19 0.13 3.27 2.90 0 4.11 0 2 2 0.13 3.28 2.90 0 4.45 0.00 95.42 0.00 0 2 20 0.11 3.27 2.90 0 4.47 0 3 3 0.05 3.42 2.90 0 99.91 0.00 0.05 0.00 0 3 21 97.84 3.45 2.90 0 2.11 ... 1 1 10 0.06 3.33 2.90 0 99.88 0.01 0.06 0.00 1 1 28 97.61 3.44 2.90 0 2.32 ... 10.002556 sec
  • 31. Controles de Estado C y P • Ejemplo (Limitar el Estado C) Herramienta turbostat (disponible por defecto en las instancias Amazon Linux) [ec2-user ~]$ sudo vim /boot/grub/grub.conf # created by imagebuilder default=0 timeout=1 hiddenmenu title Amazon Linux 2014.09 (3.14.26-24.46.amzn1.x86_64) root (hd0,0) kernel /boot/vmlinuz-3.14.26-24.46.amzn1.x86_64 root=LABEL=/ console=ttyS0 intel_idle.max_cstate=1 initrd /boot/initramfs-3.14.26-24.46.amzn1.x86_64.img
  • 32. Tip: Estado P para AVX2 • Las cargas de trabajo de tipo AVX o AVX2 (Intel Advanced Vector Extensions) se desenvuelven mejor en frecuencias bajas porque pueden usar mayor energía • Al ejecutar el procesador a baja frecuencia, deshabilitando Turbo Boost, se reduce la cantidad de energía usada y mantiene la velocidad de manera consistente
  • 33. Tip: Estado P para AVX2 • Ejemplo (Deshabilitar Turbo Boost, solicitando el estado P1) • Ejemplo (Habilitar Turbo Boost, solicitando el estado P0) [ec2-user ~]$ sudo sh -c "echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo" [ec2-user ~]$ sudo sh -c "echo 0 > /sys/devices/system/cpu/intel_pstate/no_turbo"
  • 35. Virtualización de I/O y Dispositivos • Split Driver Model • Intel VT-d • Paso directo para dispositivos dedicados • Enhanced Networking
  • 36. Split Driver Model : Red Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver Frontend driver Backend driver Device Driver Physical CPU Physical Memory Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 37. Split Driver Model : Red Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver Frontend driver Backend driver Device Driver Physical CPU Physical Memory Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 38. Split Driver Model : Red Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver Frontend driver Backend driver Device Driver Physical CPU Physical Memory Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 39. Split Driver Model : Red Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver Frontend driver Backend driver Device Driver Physical CPU Physical Memory Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 40. Split Driver Model : Red Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver Frontend driver Backend driver Device Driver Physical CPU Physical Memory Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 41. Paso Directo al Dispositivo: Enhanced Networking • El dispositivo físico de red expone una función virtual a la instancia • Requiere un driver especial: • El sistema operativo de la instancia necesita saber sobre el driver
  • 42. Paso Directo al Dispositivo: Enhanced Networking Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver NIC Driver Backend driver Device Driver Physical CPU Physical Memory SR-IOV Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 43. Paso Directo al Dispositivo: Enhanced Networking Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver NIC Driver Backend driver Device Driver Physical CPU Physical Memory SR-IOV Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 44. Paso Directo al Dispositivo: Enhanced Networking Hardware Driver Domain Guest Domain Guest Domain VMM Frontend driver NIC Driver Backend driver Device Driver Physical CPU Physical Memory SR-IOV Network Device Virtual CPU Virtual Memory CPU Scheduling Sockets Application
  • 45. Tip: Usar Enhanced Networking • Mayor cantidad de paquetes por segundo • Menor varianza en latencia • El Sistema Operativo de la instancia debe soportarlo
  • 47. Instancias I2 • Proveen almacenamiento SSD • Proveen IOPS a bajo costo • Optimizadas para alta demanda de I/O aleatorio Model vCPU Memory (GiB) Storage Read IOPS Write IOPS i2.xlarge 4 30.5 1 x 800 SSD 35,000 35,000 i2.2xlarge 8 61 2 x 800 SSD 75,000 75,000 i2.4xlarge 16 122 4 x 800 SSD 175,000 155,000 i2.8xlarge 32 244 8 x 800 SSD 365,000 315,000
  • 48. Cesión en kernels previos a la versión 3.8.0 • Previo a la versión 3.8.0, se requiere un Mapa de Cesiones • El Mapa de Cesiones requiere de operaciones costosas debido a flushes de TLB (Translation Lookaside Buffer) read(fd, buffer,…)
  • 49. Cesión en kernels posteriores a la versión 3.8.0 • El Mapa de Cesiones está definido en un pool • La información es copiada o extraída del pool Copy to and from grant pool
  • 50. Tip: Usar kernels posteriores a la versión 3.8.0 • Amazon Linux 13.09 o mayor • Ubuntu 14.04 o mayor • RHEL7 o mayor • Etc.
  • 51. Resumen • Usar PV-HVM • Usar TSC para el manejo de tiempo • Aprovechar los controles de Estado C y P • Usar Enhanced Networking • Usar kernels posteriores a la versión 3.8.0