0Pricing
Cloud & IT Cert Prep · Lección

Dimensionamiento adecuado y Compute Optimizer

Utilice las recomendaciones de AWS Compute Optimizer para reducir el tamaño de instancias EC2, funciones Lambda y volúmenes EBS sobredimensionados y disminuir los costes

Dimensionamiento adecuado y Compute Optimizer es una lección gratuita de Cloud & IT Cert Prep en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cloud & IT Cert Prep, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cloud & IT Cert Prep incluye 4 lecciones en total.

El problema del sobreaprovisionamiento

Uno de los errores más comunes y costosos en la arquitectura de la nube es el sobreaprovisionamiento: asignar más recursos de los que la carga de trabajo realmente necesita. Los equipos de TI suelen sobreaprovisionar debido a los hábitos heredados de los entornos locales (comprar capacidad para la carga máxima), al temor a una degradación del rendimiento o, simplemente, a que nunca revisan las decisiones iniciales de dimensionamiento. En AWS, las instancias EC2, los volúmenes EBS y las funciones Lambda sobreaprovisionados desperdician dinero cada minuto que están en ejecución. El dimensionamiento adecuado es el proceso sistemático de identificar y eliminar este desperdicio.

# Common over-provisioning symptoms:
# EC2: average CPU < 10%, memory < 20%
# RDS: storage auto-grow never triggered
# Lambda: allocated memory rarely exceeds 40%
# EBS: provisioned IOPS consistently unused

# Cost impact example:
# Over-provisioned r5.8xlarge at $1.92/hr: $1,382/month
# Correct size r5.xlarge at $0.252/hr:      $181/month
# Savings: $1,201/month per instance

Descripción general de AWS Compute Optimizer

AWS Compute Optimizer analiza las métricas históricas de utilización de CloudWatch y utiliza machine learning para recomendar recursos informáticos de AWS óptimos. Abarca instancias EC2, grupos de Auto Scaling de EC2, volúmenes EBS, funciones Lambda y Amazon ECS en Fargate. Compute Optimizer requiere al menos 30 días de historial de métricas para generar recomendaciones fiables. Su activación es gratuita y proporciona recomendaciones con el ahorro mensual estimado y una clasificación del riesgo asociado al cambio.

# Opt in to Compute Optimizer
aws compute-optimizer update-enrollment-status \
  --status Active

# Get EC2 recommendations
aws compute-optimizer get-ec2-instance-recommendations \
  --query 'instanceRecommendations[].{Instance:currentInstanceType,Recommended:recommendationOptions[0].instanceType,Savings:recommendationOptions[0].estimatedMonthlySavings.value,Risk:recommendationOptions[0].performanceRisk}'

# Get Lambda recommendations
aws compute-optimizer get-lambda-function-recommendations

Dimensionamiento adecuado de EC2 con Compute Optimizer

Compute Optimizer analiza la utilización de CPU de EC2, la utilización de memoria (mediante el agente de CloudWatch), el rendimiento de red y las IOPS de EBS durante los 3, 14 o más de 30 días anteriores. A continuación, recomienda uno de cuatro resultados: Optimized (el tamaño actual es adecuado), Over-provisioned (se puede reducir el tamaño), Under-provisioned (se debe aumentar el tamaño) o Not optimized (datos insuficientes). Revise siempre el riesgo para el rendimiento: Compute Optimizer asigna un nivel de riesgo VeryLow, Low, Medium, High a cada recomendación.

# EC2 recommendation findings:
# Finding: OVER_PROVISIONED
# CurrentInstanceType: m5.4xlarge
# RecommendedInstanceType: m5.xlarge
# CPU utilisation: P99 = 22%, P50 = 4%
# Memory utilisation: P99 = 18%, P50 = 8%
# EstimatedMonthlySavings: $380
# PerformanceRisk: VeryLow

# Always check:
# - Does current instance have burstable credits? (T3)
# - Are there workload spikes not captured in averages?
# - Is there seasonality to consider?

Dimensionamiento adecuado de Lambda

Las funciones Lambda se facturan por milisegundo de tiempo de ejecución multiplicado por la memoria asignada. Asignar más memoria de la necesaria desperdicia dinero, pero una mayor cantidad de memoria también implica más CPU; por eso, el equilibrio adecuado es la configuración de memoria que minimiza el coste por invocación. Compute Optimizer analiza la duración de las invocaciones de Lambda, la tasa de errores y las métricas de tiempo de espera para recomendar la configuración de memoria óptima. La herramienta de código abierto Lambda Power Tuning también puede invocar su función con distintas configuraciones de memoria para encontrar empíricamente la configuración con el coste óptimo.

# Compute Optimizer Lambda recommendations
aws compute-optimizer get-lambda-function-recommendations \
  --function-arns arn:aws:lambda:us-east-1:123:function:my-function

# Response shows:
# currentMemorySize: 1024 MB
# recommendedMemorySize: 256 MB
# utilizationMetrics:
#   - type: MEMORY_MAXIMUM, value: 89 (MB)
# estimatedMonthlySavings: $45

# 89 MB actual vs 1024 MB allocated = 935 MB wasted

Dimensionamiento adecuado de volúmenes EBS

Los volúmenes EBS suelen estar sobreaprovisionados tanto en tamaño (espacio de disco sin utilizar) como en IOPS (IOPS aprovisionadas que nunca se consumen). Compute Optimizer analiza las métricas VolumeReadOps, VolumeWriteOps, VolumeReadBytes, VolumeWriteBytes. Una recomendación habitual es migrar de gp2 a gp3 (que separa el tamaño de las IOPS); así puede ajustar las IOPS de forma independiente y, a menudo, ahorrar un 20 %. Identifique también los volúmenes EBS no asociados (instancias terminadas cuyos volúmenes se han dejado atrás) y cree instantáneas de ellos o elimínelos.

# Get EBS volume recommendations
aws compute-optimizer get-ebs-volume-recommendations \
  --volume-arns arn:aws:ec2:us-east-1:123:volume/vol-12345

# Common finding: gp2 -> gp3 migration
# gp2: 500 GB = 500 GB * $0.10 = $50/month
#   IOPS: 1,500 (3 IOPS/GB, not configurable)
# gp3: 500 GB = $40/month + 3,000 IOPS free
#   Save $10/month plus get MORE baseline IOPS

# Find unattached EBS volumes
aws ec2 describe-volumes \
  --filters Name=status,Values=available \
  --query 'Volumes[].{VolumeId:VolumeId,Size:Size,Created:CreateTime}'

Recomendaciones para grupos de Auto Scaling

Compute Optimizer analiza la utilización de ASG en todas las instancias del grupo y recomienda cambios en la plantilla de lanzamiento para el tipo de instancia. Si todas las instancias de un ASG están sobreaprovisionadas de forma constante, cambiar a un tipo de instancia más pequeño reduce el coste a escala. Por ejemplo, si un ASG tiene una media de 10 instancias m5.large, cambiar a m5.medium ahorra un 50 % por instancia. Compute Optimizer también recomienda instancias basadas en Graviton cuando el software es compatible, lo que proporciona tanto una mejora del rendimiento como una reducción de costes.

# Get ASG recommendations
aws compute-optimizer get-auto-scaling-group-recommendations \
  --auto-scaling-group-arns arn:aws:autoscaling:us-east-1:123:autoScalingGroup:abc:autoScalingGroupName/my-asg

# If recommendation is to switch to Graviton:
# Current: m5.large (x86, $0.096/hr)
# Recommended: m6g.large (Graviton2, $0.077/hr)
# Savings: 20% per instance
# ASG at 10 instances average = $220/month savings

Trusted Advisor para obtener información sobre costes

AWS Trusted Advisor es otra herramienta que proporciona información para la optimización de costes, además de comprobaciones de seguridad, rendimiento, tolerancia a errores y límites de servicio. Comprobaciones de costes clave: instancias EC2 con baja utilización (menos del 10 % de CPU durante 4 días o más), direcciones IP elásticas no asociadas (se cobran cuando no están asociadas), volúmenes EBS infrautilizados, balanceadores de carga inactivos (sin destinos en buen estado) e instancias reservadas sin utilizar. Las comprobaciones básicas de Trusted Advisor son gratuitas; el conjunto completo requiere Business Support o Enterprise Support.

# Trusted Advisor: get cost optimisation checks
aws support describe-trusted-advisor-checks \
  --language en \
  --query 'checks[?category==`cost_optimizing`].{Name:name,Id:id}'

# Key checks:
# Qkj5MU5fNp: Low utilisation EC2 instances
# Z4AUBRNSmh: Unassociated Elastic IP addresses
# DAvU99Dc4C: Underutilized EBS volumes
# hjLMh88uM8: Idle load balancers
# 1e93e4c0b5: Unused reserved instances

Actualizaciones de generación de instancias

AWS publica periódicamente nuevas generaciones de instancias EC2 más eficientes, que ofrecen un mejor rendimiento con un coste igual o inferior. Pasar de la 5.ª generación (m5, c5, r5) a la 7.ª generación (m7g, c7g, r7g) puede proporcionar un 40 % más de rendimiento informático con un coste similar o inferior. Compute Optimizer identifica específicamente las oportunidades de actualizar a generaciones más recientes, incluidas las instancias basadas en Graviton. Actualizar las instancias suele ser la acción de dimensionamiento adecuado más sencilla: misma configuración, hardware más moderno, mejor rendimiento y menor coste.

# EC2 instance generation comparison (same price tier):
# m5.large:  2 vCPU, 8 GB, $0.096/hr  (2019)
# m6i.large: 2 vCPU, 8 GB, $0.096/hr  (2021, ~10% faster)
# m7i.large: 2 vCPU, 8 GB, $0.1008/hr (2023, ~15% faster)
# m7g.large: 2 vCPU, 8 GB, $0.0808/hr (2023, Graviton3, cheapest)

# Upgrade path for Linux workloads:
# m5 -> m7g (Graviton): best price/performance
# m5 -> m7i: same architecture, no code changes

Dimensionamiento adecuado de instancias RDS

Las instancias RDS son caras y suelen estar sobreaprovisionadas. Utilice las métricas de CloudWatch para evaluar la utilización de RDS: CPUUtilization, FreeableMemory, ReadIOPS y WriteIOPS. Si la CPU se mantiene por debajo del 20 % y la memoria permanece constantemente alta, considere reducir el tamaño. En las bases de datos de producción con Multi-AZ, el dimensionamiento adecuado duplica el ahorro, ya que cambian tanto la instancia principal como la de reserva. Considere también cambiar de RDS MySQL/PostgreSQL a Aurora, que suele ofrecer un mejor rendimiento con un coste similar y es más rentable a escala.

# Monitor RDS utilisation for right-sizing
aws cloudwatch get-metric-statistics \
  --namespace AWS/RDS \
  --metric-name CPUUtilization \
  --dimensions Name=DBInstanceIdentifier,Value=mydb \
  --start-time 2026-05-21T00:00:00Z \
  --end-time 2026-06-21T00:00:00Z \
  --period 86400 \
  --statistics Maximum Average

# If 30-day P99 CPU < 30%, consider downsizing
# If P99 CPU > 80%, consider upsizing

Operacionalizar el dimensionamiento adecuado

El dimensionamiento adecuado debe ser un proceso continuo, no una actividad puntual. Establezca una periodicidad de revisión mensual o trimestral: obtenga las recomendaciones de Compute Optimizer, evalúe cuáles se pueden aplicar de forma segura, implemente los cambios durante una ventana de mantenimiento y mida el ahorro. Automatice las acciones sencillas: puede crear scripts para limpiar los volúmenes EBS no asociados, liberar direcciones IP elásticas sin utilizar y eliminar balanceadores de carga inactivos. Cree un panel de optimización de costes en CloudWatch que realice un seguimiento del gasto mensual por servicio y resalte los aumentos inusuales.

# Script to release unassociated Elastic IPs
aws ec2 describe-addresses \
  --query 'Addresses[?!AssociationId].AllocationId' \
  --output text | xargs -I {} \
  aws ec2 release-address --allocation-id {}

# Script to delete unattached EBS volumes (careful!)
# First check if snapshots exist before deleting
aws ec2 describe-volumes \
  --filters Name=status,Values=available \
  --query 'Volumes[].VolumeId' \
  --output text

Dimensionamiento adecuado frente a cambios de arquitectura

El dimensionamiento adecuado aborda el sobreaprovisionamiento en arquitecturas existentes, pero a veces el problema está en la propia arquitectura. Una única instancia EC2 grande que ejecuta varias aplicaciones podría requerir una descomposición arquitectónica (microservicios en Fargate), en lugar de limitarse a utilizar una instancia más pequeña. Una base de datos monolítica podría necesitar fragmentación o almacenamiento en caché, en lugar de simplemente reducir el tamaño de la instancia. El dimensionamiento adecuado es el primer paso y el más rápido. La optimización de la arquitectura (sin servidor, contenedores y almacenamiento en caché) proporciona un ahorro más profundo y sostenido, pero requiere más esfuerzo. El pilar de Optimización de costes recomienda aplicar ambas estrategias.

# Cost optimisation hierarchy:
# Level 1: Right-sizing (quick wins, days)
#   - Compute Optimizer recommendations
#   - Delete unused resources
#   - Elastic IP, EBS cleanup

# Level 2: Purchasing model (weeks)
#   - Reserved Instances / Savings Plans
#   - Spot for eligible workloads

# Level 3: Architecture (months)
#   - Serverless migration
#   - Container consolidation
#   - Caching layer addition
#   - Database optimisation

Comprobación rápida

Compruebe sus conocimientos sobre los conceptos de AWS Solutions Architect (SAA-C03) de esta lección.

Resumen de la lección

En esta lección ha aprendido que AWS Compute Optimizer utiliza machine learning con métricas de CloudWatch para recomendar recursos informáticos con el dimensionamiento adecuado, que el dimensionamiento adecuado se aplica a EC2, Lambda, EBS, ASG y ECS en Fargate y que actualizar a generaciones de instancias más recientes (especialmente Graviton) proporciona mejoras tanto de costes como de rendimiento. Convierta el dimensionamiento adecuado en una práctica recurrente, no en una actividad puntual. A continuación, exploraremos las instancias reservadas, Savings Plans y los modelos de compra Spot.

Preguntas frecuentes

¿La lección «Dimensionamiento adecuado y Compute Optimizer» es gratis?

Sí — el texto completo de «Dimensionamiento adecuado y Compute Optimizer» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cloud & IT Cert Prep, actualiza a CoddyKit PRO. El curso de Cloud & IT Cert Prep incluye 4 lecciones en total.

¿Qué aprenderé en «Dimensionamiento adecuado y Compute Optimizer»?

Utilice las recomendaciones de AWS Compute Optimizer para reducir el tamaño de instancias EC2, funciones Lambda y volúmenes EBS sobredimensionados y disminuir los costes Practicas Cloud & IT Cert Prep con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cloud & IT Cert Prep?

No se requiere experiencia previa. Cloud & IT Cert Prep en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Dimensionamiento adecuado y Compute Optimizer»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cloud & IT Cert Prep?

Sí. Cada lección de Cloud & IT Cert Prep incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Dimensionamiento adecuado y Compute Optimizer
  2. Instancias reservadas, Savings Plans y Spot
  3. Cost Explorer, presupuestos y etiquetas de asignación de costes
  4. Optimización de costes de S3 y transferencia de datos
← Volver a Cloud & IT Cert Prep