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.

Ahorre hasta un 90% en ambientes productivos con instancias Spot

73 visualizações

Publicada em

Ahorre hasta un 90% en ambientes productivos con instancias Spot - https://aws.amazon.com/es/ec2/spot/

Más informacion: http://aws.amazon.com/es/colombia/

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Ahorre hasta un 90% en ambientes productivos con instancias Spot

  1. 1. Ahorre hasta un 90% en ambientes productivos con instancias Spot Ivan Salazar, Enterprise Solutions Architect
  2. 2. Bajo demanda Pague por capacidad de cómputo por hora sin compromisos a largo plazo Para cargas variables o para definir necesidades Modelos de consumo de AWS EC2 Reservado Haga un pago único bajo y reciba un descuento significativo al cargo por hora Para utilización con compromiso Subasta (Spot) Puje por capacidad ociosa, cargada a precio de subasta que fluctúa de acuerdo a la pferta y la demanda Para cargas no sensibles al tiempo
  3. 3. ¿Qué son las instancias Amazon EC2 Spot? Son instancias EC2 de sobra por las que usted puede subastar para correr sus aplicaciones en la nube. Las instancias Spot se encuentran disponibles a precios más bajos que las bajo demanda, así que usted puede reducir significativamente el costo de ejecutar sus aplicaciones, crecer la capacidad de las mismas por el mismo presupuesto y habilitar nuevos tipos de aplicaciones para la nube. $1
  4. 4. Con Spot las reglas son simples Mercados donde el precio del cómputo cambia en base a la oferta y la demanda Nunca pagará más de lo que puja. Cuando el mercado excede su puja, usted tiene dos minutos para concluir su trabajo
  5. 5. ¿Por qué usar Spot? Ejemplos de clientes 39 años de investigación farmaceutica porcesadas, utilizando más de 80,000 cores, en 9 horas por $4,232 USD - Aproximadamente un pico de 87,000 núcleos de cómputo - Estimados 39 años de química computacional realizados en 9 horas - Tres compuestos candidatos identificados existósamente
  6. 6. “Al utilizar las instancias Spot de AWS hemos logrado ahorrar 75% al mes con simplemente cambiar cuatro líneas de código. Hace perfecto sentido para ahorrar dinero cuando estás ejecutando cargas de integraciñon contínua o procesos de pipeline” - Matthew Leventi, Lead Engineer, Lyft ¿Por qué usar Spot? Ejemplos de clientes
  7. 7. $0.27 $0.29$0.50 1b 1c1a 8XL $0.30 $0.16$0.214XL $0.07 $0.08$0.082XL $0.05 $0.04$0.04XL $0.01 $0.04$0.01L C3 $1.76 On Demand $0.88 $0.44 $.22 $0.11 ¡Enséñame los mercados! Cada familia de instancia Cada tamaño de instancia Cada zona de disponibilidad En cada región Es un mercado Spot Separado
  8. 8. Puja 50% Puja 75% Usted paga el precio de mercado Precio de puja Vs precio de mercado Puja 25%
  9. 9. Spot Bid Advisor 1) Facilitamos las subastas 2) Con selección deliberada de pool y puja, usted conservará sus instancias el tiempo que necesite. 3) Y con nuevas características como Spot Fleet diversificado, nosotros nos encrgamos de la carga pesada…
  10. 10. Interfaz fácil de usar que le permite lanzar instancias de sobra en segundos Le ayuda a seleccionar la puja para instancias EC2 que cumpla con los requerimientos de su aplicación Tablero fácil de usar que le permite modificar y administrar la capacidad de cómputo de sus aplicaciones La consola de EC2 Spot
  11. 11. Spot fleet le ayuda Lance miles de instancias Spot Con sólo un llamado RequestSpotFleet Obtenga el mejor precio Encuentre la capacidad al mejor precio que funcione para usted. o Diversifique sus recursos Diversifique su flota. Crezca la disponibilidad Y Aplique distribución personalizada Creé su propia unidad de capacidad basada en las necesidades de su aplicación
  12. 12. ¡Es fácil! aws ec2 request-spot-fleet --spot-fleet-request-config file://config.json { "IamFleetRole": "arn:aws:iam::781603563322:role/fleet-role", "TargetCapacity": "100", "SpotPrice": "0.03", "ValidFrom": "2015-09-15T00:56:19Z", "ValidUntil": "2016-09-14T07:00:00Z", "TerminateInstancesWithExpiration": true, "LaunchSpecifications": [ { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.large", "WeightedCapacity": 2, "SubnetId": "subnet-d0dc51fb" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.large", "WeightedCapacity": 2, "SubnetId": "subnet-64531413" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.large", "WeightedCapacity": 2, "SubnetId": "subnet-0b1b8052" }, { "ImageId": "ami- 0d4cfd66", "InstanceType": "c3.xlarge", "WeightedCapacity": 4, "SubnetId": "subnet-d0dc51fb" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.xlarge", "WeightedCapacity": 4, "SubnetId": "subnet-64531413" }, { "ImageId": "ami- 0d4cfd66", "InstanceType": "c3.xlarge", "WeightedCapacity": 4, "SubnetId": "subnet-0b1b8052" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.4xlarge", "WeightedCapacity": 16, "SubnetId": "subnet-d0dc51fb" }, { "ImageId": "ami- 0d4cfd66", "InstanceType": "c3.4xlarge", "WeightedCapacity": 16, "SubnetId": "subnet-64531413" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.4xlarge", "WeightedCapacity": 16, "SubnetId": "subnet-0b1b8052" }, { "ImageId": "ami- 0d4cfd66", "InstanceType": "c3.8xlarge", "WeightedCapacity": 32, "SubnetId": "subnet-d0dc51fb" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.8xlarge", "WeightedCapacity": 32, "SubnetId": "subnet-64531413" }, { "ImageId": "ami- 0d4cfd66", "InstanceType": "c3.8xlarge", "WeightedCapacity": 32, "SubnetId": "subnet-0b1b8052" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.2xlarge", "WeightedCapacity": 8, "SubnetId": "subnet-d0dc51fb" }, { "ImageId": "ami- 0d4cfd66", "InstanceType": "c3.2xlarge", "WeightedCapacity": 8, "SubnetId": "subnet-64531413" }, { "ImageId": "ami-0d4cfd66", "InstanceType": "c3.2xlarge", "WeightedCapacity": 8, "SubnetId": "subnet-0b1b8052" } ] }
  13. 13. Diversifique con EC2 Spot fleet Múltiples instancias EC2 Spot seleccionadas Múltiples Zonas de Disponibilidad seleccionadas Escoja las intancias con rendimiento y características similares ej. c3.large, m3.large, m4.large, r3.large, c4.large.
  14. 14. Sólo con un parámetro adicional Se ejecutan continuamente hasta por 6 horas Ahorre hasta el 50% del precio bajo demanda EC2 Spot Blocks $1
  15. 15. ¿Qué hay en 6 horas? ~ 21% menos de 1 hora ~ 35% menos de 2 horas ~ 40% menos de 3 horas En total al rededor de 50% todas las instancias viven menos de 6 horas
  16. 16. Spot Bid Advisor – aws-spot-labs
  17. 17. Mejores prácticas para instancias EC2 Spot Tolerancia a fallos Sin estado Multi-AZ Desacopladas Flexibilidad de instancias
  18. 18. Algunas consideraciones adicionales Estado de la sesión Elastic Load Balancing Advertencia dos minutis antes
  19. 19. Para aplicaciones Web, en DynamoDB. • Los datos se replican entre AZ. También puede elegir otras bases de datos para mantener el estado en su arquitectura. • Amazon RDS en modo Multi-AZ • Amazon Elasticache ¿Dónde almacenar el estado de la sesión?
  20. 20. Capitalizando la advertencia de los 2 minutos Cuando el precio de mercado excede el rpecio de puja, la instancia recibirá una advertencia dos minutos antes Verifique la notificación de los dos minutos cada 5 segundos aprovechando un script invocado al momento de lanzar la instancia
  21. 21. Script de ejemplo 1) Verifique la advertencia de dos minutos 2) Si EXISTE, remueva la instancia del ELB 3) SI NO, no haga nada 4) Espere 5 segundos $ if curl -s http://169.254.169.254/latest/meta- data/spot/termination-time | grep -q .*T.*Z; then instance_id=$(curl -s http://169.254.169.254/latest/meta-data/instance-id); aws elb deregister-instances-from-load-balancer --load-balancer-name my-load-balancer --instances $instance_id; /env/bin/flushsessiontoDBonterminationscript.sh; fi
  22. 22. Dos grupos de auto scaling • Bajo demanda + Reservadas para uso regular • Agregue un grupo de auto scaling adicional con Spot Ambos grupos detrás del mismo Elastic Load Balancer. Use el bid advisor par seleccionar el tiempo correcto de instancia para su aplicación. Si están usando grupos de autoscale
  23. 23. Arquitectura de aplicación Web con Spot Elastic Load Balancing Stateless Web Servers Stateless Web Servers On Demand Auto Scaling group Session State Data Stateless Web Servers (Spot) Stateless Web Servers (Spot) Spot Auto Scaling group Availability Zone A Availability Zone B Stateless Web Servers (Spot) Stateless Web Servers (Spot) Spot Auto Scaling group
  24. 24. Arquitectura de aplicación Web con Spot Elastic Load Balancing Stateless Web Servers Stateless Web Servers On Demand Auto Scaling group Session State Data Stateless Web Servers (Spot) Stateless Web Servers (Spot) Spot Auto Scaling group Availability Zone A Availability Zone B ASG Bajo demanda ASG Spot
  25. 25. EC2 Spot – Hadoop
  26. 26. Nodos Core Nodo maestro Master instance group Hadoop cluster Core instance group HDF S HDF S Nodos de datos (HDFS)
  27. 27. Nodos Core Nodo maestro Master instance group Hadoop cluster Core instance group HDF S HDF S Puede agregar nodos core: Más CPU Más Memoria Más espacio HDFS HDF S
  28. 28. Nodos para tareas – Oportunidad de Spot Nodo maestro Hadoop cluster HDF S HDF S Sin HDFS Provee recusros de cómputo: CPU Memoria Core instance group Task instance group
  29. 29. Nodos para tareas – Múltiples tipos de instancias Nodo maestro Hadoop cluster HDF S HDF S Puede agregar y quitar nodos para tareas c3.8xl, r3.8xl, r3.4xl, etc La oportunidad Core instance group
  30. 30. ¿Pero qué acerca de HDFS? Nodo maestro Hadoop cluster HDF S HDF S Puede agregar y quitar nodos para tareas CORE Tareas cc2.8xl, r3.8xl, d2.4xl, etc Spot Blocks? EMR/S3?
  31. 31. • Sin necesidad de escalar HDFS – Capacidad – Replicación para durabilidad • Amazon S3 escala junto con sus datos – En IOPs y almacenamiento – Masivamente parlelo EMRFS - Amazon S3 como HDFS Spot blocks para HDFS • Si el cluster de HDFS vive por menos de 6 horas
  32. 32. Hadoop en EC2 Spot – aprendizajes Su trabajo Ejecute los nodos de tareas por separado con EC2 Spot fleet Considere Spot blocks para nodos core/HDFS Lo que EC2 Spot fleet hace por usted Le ahorra dinero Administración heterogénea de instancias Escale en la unidad que le importa Acelera los resultados (el tiempo es oro)
  33. 33. Aplicaciones orientadas a batch pueden aprovechar el procesamiento bajo demanda usando EC2 Spot para ahorrar hasta el 90%: Procesamiento batch con Amazon EC2 Spot Simulación Montecarlo Modelado molecular Procesamiento de video Simulaciones de alta energía
  34. 34. Procesamiento batch con Amazon EC2 Spot On Demand Auto- Scaling group Output S3 bucket Spot Auto- Scaling group 2 Availability Zone A Availability Zone B Spot Auto- Scaling group 1 Upload object into input S3 bucket Job SQS Queue Auto Scaling groups will scale up based on queue depth and scale down based on CPU utilization CW metrics Workers will check for jobs in the queue Workers will update Job status (start time, SLA end time, etc) in DynamoDB Uploads to S3 will trigger a Lamda function to put jobs in SQS and DynamoDB EFS EC2 instance worker fleet
  35. 35. AWS Lambda es un servicio de cómputo que ejecuta su código en respuesta de eventos y automáticamente administra los recursos de cómputo por usted, volviendo muy fácil el construir aplicaciones que respondan rápidamente a nueva información. Amazon Simple Queue Service (SQS) es un servicio de colas de mensajes rápido, confiable, escalable y completamente administrado para desacoplar componentes. Dependiendo de las necesidades de la aplicación, múltiples colas de SQS se pueden requerir para funciones y prioridades. Acerca de Lambda y SQS
  36. 36. ¿Más automatización? Use una función Lambda para administrar de manera dinámica grupos de Auto Scaling en base al mercado Spot. • La función Lambda puede ivocar de manera periódica el API de EC2 Spot para evaluar los precios del mercado y disponibilidad, y responder creando nuevas Launch Configurations y grupos de manera automática. • Esta función también puede eliminar cualquier Grupo de Auto Scaling con Spot y lanzar configuraciones que no tengan instancias. AWS Data Pipeline se puede usar para invocar la función Lambda usando el AWS CLI en intervalos regulares calendarizando pipelines
  37. 37. Arquitectura automatizada en batch con Spot Worker Worker On Demand Autoscaling group Output S3 bucket Worker (spot) Worker(spot) Spot Autoscaling group 2 Availability Zone A Availability Zone B Worker(spot) Worker (spot) Spot Autoscaling group 1 Upload object into input S3 bucket Job SQS Queue AutoScaling groups will scale up based on queue depth and scale down based on CPU utilization CW metrics Workers will check for jobs in the queue Workers will update Job status (start time, SLA end time, etc) in DynamoDB DataPipeline can invoke a Lambda function in a scheduled manner which can manage AutoScaling groups based on the spot market Uploads to S3 will trigger a Lamda function to put jobs in DynamoDB and SQS EFS
  38. 38. Demo
  39. 39. Remember to complete your evaluations! ¡No olvide llenar su evaluación!
  40. 40. ¡Gracias!

×