O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Alejandro Flores, Arquitecto de Soluciones
Mayo ...
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.4xlar...
Qué esperar de esta sesión ?
• Revisión Instancias X1
• Definir el desempeño de un sistema y cómo se caracteriza
para dife...
Instancias X1 2016
Lanzamiento Oficial
• Lanzamiento oficial 18 de Mayo de 2016
http://amzn.to/20wJbKk
2016
Alto Desempeño
• Tipo x1.32xlarge
• 2TB Memoria (DDR4)
• 128 vCPU’s
• Intel Xeon E7 8880 v3 (Haswell)
• Tecnología Intel T...
Alto Rendimiento de Almacenamiento
• 10Gbps de ancho de banda dedicado para
EBS
• 10Gbps de ancho de banda para red
• Opti...
Alta Disponibilidad y Confiabilidad
• Single Device Data Correction
(SDDC+1)
• Detecta y corrige errores multi-bit
• Cloud...
Reduce Costos y reduce esfuerzos de
administración
• Disponible Bajo Demanda e
Instancia Reservada
• Actualmente disponibl...
Quiero usar las Instancias X1 !!
• Llenar la forma en línea para solicitar el acceso a las
instancias
• Leer la documentac...
Ofreciendo desempeño de
cómputo en EC2
Reserva de un servidor
• Los servidores son reservados para realizar trabajos
• El desempeño de mide de manera diferente
d...
• Lo que desempeño significa,
depende de la perspectiva:
• Tiempo de respuesta
• Rendimiento
• Consistencia
Desempeño = pe...
Factores de desempeño
Recurso Factores Indicadores
CPU Sockets, número de núcleos,
frecuencia de reloj, capacidad
Utilizac...
Utilización de Recursos
• Dada una carga, qué tan eficientemente se utilizan los
recursos
• Un recurso con utilización del...
Ejemplo: Aplicación Web
• MediaWiki instalado en un servidor Apache con 140
páginas de contenido
• Incremento de carga en ...
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
• D...
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 pr...
Ejemplo: Llamadas al sistema de una aplicación web
[ec2-user@ip-10-0-121-0 ~]$ sudo strace -c -p 2440
Process 2440 attache...
Porqué PV-HVM es más rápido que PV ?
• PV-HVM permite que las aplicaciones llamen directamente al kernel
• PV la aplicació...
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 un...
Tip: Usar TSC como fuente de tiempo
Cambiarlo por:
# cat /sys/devices/system/cl*/cl*/available_clocksource
xen tsc hpet ac...
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...
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úcl...
Controles de Estado C y P
• Beneficios
• Incrementar el desempeño del procesador
• Reducir latencia
• Optimización de una ...
Controles de Estado C y P
• Ejemplo (Mayor desempeño con máxima frecuencia
Turbo Boost)
Herramienta turbostat (disponible ...
Controles de Estado C y P
• Ejemplo (Limitar el Estado C)
Herramienta turbostat (disponible por defecto en las instancias ...
Tip: Estado P para AVX2
• Las cargas de trabajo de tipo AVX o AVX2 (Intel
Advanced Vector Extensions) se desenvuelven mejo...
Tip: Estado P para AVX2
• Ejemplo (Deshabilitar Turbo Boost, solicitando el estado
P1)
• Ejemplo (Habilitar Turbo Boost, s...
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
• Enhanc...
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driv...
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driv...
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driv...
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driv...
Split Driver Model : Red
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
Frontend
driver
Backend
driv...
Paso Directo al Dispositivo: Enhanced Networking
• El dispositivo físico de red expone una función virtual a
la instancia
...
Paso Directo al Dispositivo: Enhanced Networking
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
NIC
...
Paso Directo al Dispositivo: Enhanced Networking
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
NIC
...
Paso Directo al Dispositivo: Enhanced Networking
Hardware
Driver Domain Guest Domain Guest Domain
VMM
Frontend
driver
NIC
...
Tip: Usar Enhanced Networking
• Mayor cantidad de paquetes por segundo
• Menor varianza en latencia
• El Sistema Operativo...
Resumen
• Las nuevas Instancias X1 están diseñadas para ejecutar
aplicaciones en memoria o bases de datos en memoria
• Usa...
Gracias!
Próximos SlideShares
Carregando em…5
×

EC2: Cómputo en la nube a profundidad

1.517 visualizações

Publicada em

EC2: Cómputo en la nube a profundidad
AWS Summit Ciudad de México - Jueves, 26 de mayo

Publicada em: Tecnologia
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

EC2: Cómputo en la nube a profundidad

  1. 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Alejandro Flores, Arquitecto de Soluciones Mayo 26, 2016 EC2 Cómputo en la nube a profundidad
  2. 2. Amazon EC2 es grande Opciones de Compra APIs Instancias Red
  3. 3. Instancias EC2 Host Server Hypervisor Guest 1 Guest 2 Guest n
  4. 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 x1.32xlarge 2016
  5. 5. Qué esperar de esta sesión ? • Revisión Instancias X1 • 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 2016
  6. 6. Instancias X1 2016
  7. 7. Lanzamiento Oficial • Lanzamiento oficial 18 de Mayo de 2016 http://amzn.to/20wJbKk 2016
  8. 8. Alto Desempeño • Tipo x1.32xlarge • 2TB Memoria (DDR4) • 128 vCPU’s • Intel Xeon E7 8880 v3 (Haswell) • Tecnología Intel Transactional Synchronization Extensions (TSX) para desempeño en procesamiento transaccional en memoria • Tecnología Intel Advanced Vector Extensions 2 (Intel AVX2) para expansión de comandos numéricos a 256 bits
  9. 9. Alto Rendimiento de Almacenamiento • 10Gbps de ancho de banda dedicado para EBS • 10Gbps de ancho de banda para red • Optimizada para EBS sin costo adicional • Instancia certificada para ambientes de producción de SAP HANA en AWS • S/4 HANA • Business Suite en HANA (SoH) • Business Warehouse en HANA (BW) • DataMart Solutions en HANA
  10. 10. Alta Disponibilidad y Confiabilidad • Single Device Data Correction (SDDC+1) • Detecta y corrige errores multi-bit • CloudFormation+EC2 Auto Recovery = HA/DR • Para SAP HANA, se puede utilizar HANA System Replication (HSR)
  11. 11. Reduce Costos y reduce esfuerzos de administración • Disponible Bajo Demanda e Instancia Reservada • Actualmente disponible en: • US East (Virginia) • US West (Oregon) • EU (Ireland) • EU (Frankfurt) • Asia Pacific (Tokyo) • Asia Pacific (Singapore) • Asia Pacific (Sydney) • Más regiones muy pronto ...
  12. 12. Quiero usar las Instancias X1 !! • Llenar la forma en línea para solicitar el acceso a las instancias • Leer la documentación en el sitio de AWS
  13. 13. Ofreciendo desempeño de cómputo en EC2
  14. 14. 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
  15. 15. • 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
  16. 16. 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
  17. 17. 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
  18. 18. Ejemplo: Aplicación Web • MediaWiki instalado en un servidor Apache con 140 páginas de contenido • Incremento de carga en intervalos de tiempo
  19. 19. Ejemplo: Aplicación Web • Estadísticas de Memoria
  20. 20. Ejemplo: Aplicación Web • Estadísticas de Disco
  21. 21. Ejemplo: Aplicación Web • Estadísticas de Red
  22. 22. Ejemplo: Aplicación Web • Estadísticas de CPU
  23. 23. 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
  24. 24. Instrucciones de CPU y Niveles de Protección
  25. 25. 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
  26. 26. 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
  27. 27. 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
  28. 28. Tip: Usar AMIs PV-HVM con EBS
  29. 29. Manejo del tiempo
  30. 30. 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)
  31. 31. 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
  32. 32. Control de Estados C y P
  33. 33. 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
  34. 34. 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)
  35. 35. 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
  36. 36. 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
  37. 37. 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
  38. 38. 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
  39. 39. 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"
  40. 40. Ofreciendo desempeño de I/O en EC2
  41. 41. Virtualización de I/O y Dispositivos • Split Driver Model • Intel VT-d • Paso directo para dispositivos dedicados • Enhanced Networking
  42. 42. 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
  43. 43. 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
  44. 44. 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
  45. 45. 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
  46. 46. 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
  47. 47. 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
  48. 48. 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
  49. 49. 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
  50. 50. 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
  51. 51. Tip: Usar Enhanced Networking • Mayor cantidad de paquetes por segundo • Menor varianza en latencia • El Sistema Operativo de la instancia debe soportarlo
  52. 52. Resumen • Las nuevas Instancias X1 están diseñadas para ejecutar aplicaciones en memoria o bases de datos en memoria • 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
  53. 53. Gracias!

×