Blog de Amazon Web Services (AWS)

10 cosas que puede hacer hoy para reducir los costos de AWS

Este post está preparado por Shankar Ramachandran, especialista del equipo de Arquitectos de Soluciones en optimización de costos.

Introducción

La amplia gama de servicios y opciones de precios de AWS ofrecen la flexibilidad necesaria para gestionar sus costos de manera eficaz y mantener el rendimiento y la capacidad según los requisitos de su empresa. Aunque el proceso fundamental de optimización de costos en AWS sigue siendo el mismo: supervise los costos y el uso de AWS, analice los datos para encontrar ahorros, tome medidas para realizar los ahorros; en este blog tomaré un enfoque más táctico para reducir los costos con cambios en la demanda de los usuarios.

Antes de empezar

Antes de realizar cualquier acción para reducir los costos, descubra los costos de los servicios de AWS que está consumiendo. La capa gratuita de AWS ofrece a los clientes la posibilidad de explorar y probar los servicios de AWS de forma gratuita hasta los límites especificados para cada servicio. Siga los pasos de este vídeo para comprobar si está excediendo el límite de nivel gratuito.

A continuación, utilice AWS Cost Explorer para ver y analizar los costos y el uso de AWS. Esta herramienta proporciona informes predeterminados que le ayudan a visualizar el costo y el uso a alto nivel (por ejemplo, cuentas de AWS, servicio de AWS) o a nivel de recursos (por ejemplo, ID de instancia de EC2). Comience identificando las cuentas principales en las que incurren sus costos usando el «Informe de costos mensuales por cuenta vinculada». A continuación, identifique los principales servicios que contribuyen a los costos dentro de esas cuentas. Para ello, utilice el «Informe de costes mensuales por servicio». Utilice las etiquetas y granularidad por hora y nivel de recursos para filtrar e identificar los principales recursos que incurran en costos.

Cost Explorer resource level granularity

 

Ahora, debería de tener una comprensión de los costos y el uso de AWS. A continuación, vamos a repasar 10 tácticas que puede hacer hoy utilizando las herramientas y los servicios de AWS existentes para reducir los costos de AWS.

#1 Identificar instancias de Amazon EC2 con baja utilización y reducir los costos deteniendo o ajustando el tamaño

Utilice AWS Cost Explorer Resource Optimization para obtener un informe de las instancias de EC2 que están inactivas o que tienen una baja utilización. Puede reducir los costos deteniendo o reduciendo estas instancias. Utilice AWS Instance Scheduler para detener automáticamente las instancias. Utilice AWS Operations Conductor para cambiar automáticamente el tamaño de las instancias de EC2 (según el informe de recomendaciones de AWS Cost Explorer).

Recomendaciones de AWS Cost Explorer

 

Utilice AWS Compute Optimizer para ver las recomendaciones de tipo de instancia más allá de la reducción de tamaño dentro de una familia de instancias. Ofrece recomendaciones de reducción de tamaño dentro de las familias de instancias o entre ellas, recomendaciones de conversión para eliminar cuellos de botella de rendimiento y recomendaciones para instancias EC2 que forman parte de un grupo Auto Scaling.

#2 Identifique los volúmenes de Amazon EBS con una baja utilización y reduzca los costos mediante la creación de spanshots y, a continuación, eliminarlos

Los volúmenes de EBS que tienen una actividad muy baja (menos de 1 IOPS por día) durante un período de 7 días indican que probablemente no están en uso. Identifique estos volúmenes mediante la comprobación de volúmenes de Amazon EBS subutilizados de Trusted Advisor. Para reducir costes, primero haga un snapshot del volumen (en caso de que lo necesite más adelante) y, a continuación, elimine estos volúmenes. Puede automatizar la creación de snapshots mediante Amazon Data Lifecycle Manager. Siga estos pasos para eliminar volúmenes de EBS.

#3 Analice el uso de Amazon S3 y reduzca los costos aprovechando los niveles de almacenamiento de menor costo

Utilice S3 Analytics para analizar los patrones de acceso al almacenamiento en el conjunto de datos de objeto durante 30 días o más. Hace recomendaciones sobre dónde puede aprovechar S3 Acceso Infrecuente (S3 IA) para reducir los costos. Puede automatizar el traslado de estos objetos a un nivel de almacenamiento de menor costo mediante políticas de ciclo de vida. Alternativamente, también puede utilizar S3 Intelligent-Tiering, que analiza y mueve automáticamente los objetos al nivel de almacenamiento adecuado.

#4 Identificar instancias de Amazon RDS, Amazon Redshift con una utilización baja y reducir los costos deteniendo (RDS) y haciendo una pausa (Redshift)

Utilice la comprobación de instancias de base de datos inactivas de Amazon RDS, de Trusted Advisor para identificar las instancias de base de datos que no han tenido ninguna conexión en los últimos 7 días. Para reducir costos, detenga estas instancias de base de datos mediante los pasos de automatización descritos en esta entrada de blog. Para Redshift, utilice la comprobación de clústeres Redshift, subutilizados de Trusted Advisor, para identificar clústeres que no han tenido conexiones en los últimos 7 días, y una utilización media de CPU en todo el clúster inferior al 5% durante el 99% de los últimos 7 días. Para reducir costos, detenga estos clústeres siguiendo los pasos de este blog.

Pausar clústeres de Redshift subutilizados

 

#5 Analice el uso de Amazon DynamoDB y reduzca los costos aprovechando el escalado automático o bajo demanda

Analice el uso de DynamoDB mediante la supervisión de 2 métricas, ConsumeDreadCapacityUnits y ConsumedWriteCapacityUnits, en CloudWatch. Para escalar (dentro y fuera) automáticamente la tabla de DynamoDB, utilice la función AutoScaling. Con estos pasos, puede habilitar AutoScaling en las tablas existentes. Alternativamente, también puede usar la opción bajo demanda. Esta opción le permite pagar por solicitud para solicitudes de lectura y escritura, de modo que sólo pague por lo que usa, lo que facilita el equilibrio de costos y rendimiento.

Modo de capacidad de lectura/escritura de DynamoDB

 

#6 Revise las redes y reduzca los costos eliminando equilibradores de carga inactivos

Utilice la comprobación de equilibradores de carga (Elastic Load Balancing) inactivos de Trusted Advisor para obtener un informe de equilibradores de carga que tienen RequestCount inferior a 100 en los últimos 7 días.  A continuación, siga estos pasos para eliminar estos equilibradores de carga y reducir los costes.,  Además, siga los pasos que se indican en este blog, revise los costos de transferencia de datos con el Explorador de costes.

Filtros de AWS Cost Explorer para EC2 Data Transfer

 

Si la transferencia de datos de EC2 a Internet pública se presenta como un coste significativo, considere la posibilidad de utilizar Amazon CloudFront. Cualquier imagen, vídeo o contenido web estático se puede almacenar en caché en ubicaciones de borde de AWS (Edge locations) en todo el mundo, mediante la red de entrega de contenido (CDN) de Amazon CloudFront. CloudFront elimina la necesidad de aprovisionar en exceso la capacidad para atender posibles picos de tráfico.

#7 Utilice instancias puntuales de Amazon EC2 para reducir los costes de EC2

Si la carga de trabajo es tolerante a errores, utilice instancias puntuales para reducir los costos hasta en un 90%. Los ejemplos típicos de cargas de trabajo incluyen big data, cargas de trabajo en contenedores, CI/CD, servidores web, informática de alto rendimiento (HPC) y otras cargas de trabajo de pruebas y desarrollo. Mediante el uso de EC2 Auto Scaling, puede lanzar instancias bajo demanda y puntuales para satisfacer una capacidad de destino. Auto Scaling se encarga automáticamente de solicitar instancias puntuales e intenta mantener la capacidad de destino incluso si se interrumpen las instancias puntuales. Puedes obtener más información sobre Spot viendo esta sesión de re:Invent 2019:

 

#8 Revisar y modificar la configuración de grupos de AutoScaling de EC2

Un grupo de autoescalado de EC2 permite que su flota de EC2 se expanda o reduzca según la demanda. Revise la actividad de escalado mediante el comando descripbe-scaling-activity CLI o en la consola siguiendo los pasos descritos aquí. Analice el resultado para ver si la política de escalado se puede ajustar para agregar instancias de forma menos agresiva. Revise también su configuración para ver si se puede reducir el mínimo para atender las solicitudes de los usuarios finales pero con un tamaño de flota más pequeño.

#9 Usar instancias reservadas (RI) para reducir los costos de RDS, Redshift, ElastiCache y Elasticsearch

Utilice un año sin IR por adelantado para obtener un descuento de hasta el 42% en comparación con los precios bajo demanda. Utilice las recomendaciones proporcionadas en las recomendaciones de compra de AWS Cost Explorer RI, que se basan en el uso de RDS, Redshift, ElastiCache y Elasticsearch. Asegúrese de ajustar los parámetros a un año, sin por adelantado. Esto requiere un compromiso de un año, pero el punto de equilibrio suele ser de siete a nueve meses. Recomiendo hacer #4 antes #9

#10 Utilice los planes de ahorro de computación para reducir los costos de EC2, Fargate y Lambda

Los planes de ahorro de computación se aplican automáticamente al uso de instancias de EC2 independientemente de la familia de instancias, tamaño, AZ, región, SO o arrendamiento, y también se aplican al uso de Fargate y Lambda. Utilice un año sin planes de ahorro por adelantado para obtener un descuento de hasta 54% en comparación con los precios bajo demanda. Utilice las recomendaciones proporcionadas en AWS Cost Explorer y asegúrese de que ha elegido la opción informática, un año, sin opciones iniciales. Una vez que se registre en Planes de Ahorros, su uso informático se cargará automáticamente a los precios de los Planes de Ahorros con descuento. Cualquier uso más allá de su compromiso se cobrará a las tarifas regulares On Demand. Recomiendo hacer #1 antes #10.

Recomendaciones de Savings Plans

 

¿Qué sigue?

Con estos 10 pasos, puede ahorrar costos en EC2, Fargate, Lambda, EBS, S3, ELB, RDS, Redshift, DynamoDB, ElastiCache y Elasticsearch. Le recomiendo que configure un presupuesto mediante la herramienta de presupuestos (Budgets) de AWS para que reciba una alerta cuando cambie el coste y el uso.

Establezca un presupuesto para realizar un seguimiento de los costos y el uso de AWS

Configurar una alerta sobre los costos previstos

 

Con la herramienta de Presupuestos (Budgets), también puede configurar una alerta sobre los costes previstos (aparte de los reales). Esto le da la capacidad de adelantarse al problema y reducir los costos de forma proactiva.

 

Conclusión

Para obtener más información sobre técnicas de optimización de costos más rápidas, consulte el seminario web bajo demanda: Nueve formas de reducir su factura de AWS. Estamos aquí para ayudarle. Póngase en contacto con AWS Support y con su equipo de cuentas de AWS si necesita más ayuda para optimizar su entorno de AWS.

 

También vea la serie de videos en Español sobre las mejores prácticas para la optimización de costos de su arquitectura en AWS en nustra página de Sessions On-Demand.

 

Si tiene dudas, comuníquese con nuestro equipo a través del chat en línea.