5 puntos por GN⁺ 2024-01-16 | 1 comentarios | Compartir por WhatsApp

Cómo reducir en 99% los costos de transferencia de datos en AWS

  • Al transferir datos en AWS, es fácil gastar de más por error, y en especial si no se presta atención a la transferencia de datos, los costos pueden aumentar mucho.
  • AWS cobra las transferencias de datos de la siguiente manera:
    • Al transferir datos desde AWS hacia la internet pública, se cobran entre $0.09 y $0.154 por GB según la región.
    • La transferencia de datos entre regiones de AWS se cobra entre $0.02 y $0.147 por GB; este es el costo de transferir datos sin salir de la red de AWS.
    • La transferencia de datos entre zonas de disponibilidad dentro de la misma región de AWS tiene un costo de $0.01 por GB, y esto es igual en todas las regiones.

Uso de AWS PrivateLink y endpoints de VPC

  • Con AWS PrivateLink y los endpoints de VPC, se puede evitar que los datos salgan de la red de AWS, lo cual es útil no solo por precio sino también por seguridad.
  • Estas funciones no son gratuitas y tienen sus propias limitaciones y complejidad de precios, pero se puede consultar más detalle en AWS y Vantage.

Cómo evitar costos de transferencia de datos usando S3

  • La mayoría de las clases de almacenamiento de S3 guardan los datos a nivel de región, no de zona de disponibilidad.
  • Algunas clases de almacenamiento, como S3 One Zone-Infrequent Access y S3 Express One Zone, guardan los datos solo en una única zona de disponibilidad.
  • Los datos almacenados en un bucket estándar de S3 están disponibles por igual desde todas las zonas de disponibilidad de AWS, y descargar datos desde S3 es gratis (solo se aplican las tarifas estándar de transferencia de datos cuando se transfieren entre regiones o hacia la internet pública).

Demo

  • Se crea una cuenta nueva de AWS para que no haya ruido al medir los precios.
  • Se realizan dos experimentos:
    1. En el primer experimento, se colocan dos instancias EC2 en una VPC con subredes privadas, y se transfiere un archivo de 1 TB desde la instancia us-east-1a hacia la instancia us-east-1b.
    2. En el segundo experimento, se colocan dos instancias en una VPC con un endpoint Gateway de S3, se sube un archivo de 1 TB desde la instancia us-east-1a a un bucket de S3 y luego se descarga el archivo desde la instancia us-east-1b.

Resultados

  • El experimento de transferencia de datos estándar generó, como se esperaba, un costo de $20.
  • El experimento de transferencia basada en S3 solo generó unos cuantos centavos en costos de almacenamiento y, de hecho, no se cobró ningún costo de almacenamiento de S3.

Conclusión

  • AWS replica los datos de S3 entre zonas de disponibilidad, y ese costo ya está incluido en el costo de almacenamiento de S3.
  • Al subir los datos a S3 y eliminarlos de inmediato, se puede lograr una reducción de costos del 99%.
  • Este método no reemplaza el código existente de transferencia de datos y puede tener una latencia mayor que una conexión de red directa, pero si el principal interés es reducir costos, es un método efectivo.

Opinión de GN⁺

  • Este artículo propone una forma creativa de reducir los costos de transferencia de datos en AWS, lo que puede generar un gran ahorro para empresas o personas que usan servicios en la nube.
  • En particular, el método de transferencia de datos usando S3 es una estrategia efectiva para reducir de forma importante los costos al mover datos dentro de AWS.
  • Estos métodos de ahorro de costos ofrecen información muy útil para arquitectos de nube o administradores de sistemas de empresas que buscan optimizar su infraestructura en la nube.

1 comentarios

 
GN⁺ 2024-01-16
Opiniones de Hacker News
  • Cómo aprovechar instancias de Lightsail

    • Las instancias de Lightsail pueden usarse para "proxyear" datos desde recursos de AWS (por ejemplo, instancias EC2 o buckets de S3).
    • Cada instancia de Lightsail ofrece cierta cantidad de transferencia de datos incluida en el precio (la instancia de $3.5 incluye 1TB, la de $5 incluye 2TB, etc.).
    • La instancia de $10 ofrece 3TB de tráfico y tiene la mejor relación costo-beneficio.
    • En EC2, 3TB de tráfico cuestan $276.48; en un bucket de S3, $69.
    • Desventaja: al usar instancias de Lightsail, tanto el tráfico entrante como el saliente cuentan como "tráfico".
  • Advertencia sobre los trucos para ahorrar costos

    • Existen varios trucos para reducir costos y conseguir recursos gratis.
    • Estos métodos son ingeniosos, pero poco confiables.
    • Es el mismo tipo de hack que minar criptomonedas en GitHub Actions a través de repositorios OSS.
    • Tómalo como un ejercicio de hacking interesante, pero no lo despliegues en productos reales, ya que existe el riesgo de que suspendan tu cuenta de AWS.
  • Consideraciones sobre usar soluciones cloud en vez de VPS

    • ¿Cómo se resuelve el problema de alta disponibilidad (High Availability) cuando se usa un VPS?
    • Incluso un negocio pequeño necesita estar siempre operativo.
    • Lo habitual es configurar la misma infraestructura en dos o más instancias VPS y hacer balanceo de carga.
  • Cálculo del costo de almacenamiento en S3

    • El costo de almacenamiento en S3 se cobra por GB-mes.
    • Si 1TB de datos permanece en el bucket durante una hora, el costo sería de alrededor de 3 centavos.
    • Justo antes de que los datos se eliminen, el costo puede ser incluso menor.
    • El valor TimedByteStorage del informe de costos y uso es el factor determinante.
  • Parche a un loophole similar en GCP

    • GCP parchó un loophole similar en 2023 debido al abuso por parte de los usuarios.
    • Se espera que AWS tome la misma medida si este tipo de práctica se vuelve común.
  • Consejos adicionales para reducir costos en la nube

    • Si eres un cliente grande de AWS, puedes pedir descuentos.
    • Colocar todo en una sola zona de disponibilidad (AZ) puede ayudar a reducir costos.
    • Cuando se usan varias AZ, se hace balanceo entre AZ teniendo en cuenta la carga.
  • Alternativas al cloud

    • En lugar de usar servicios cloud complejos y caros, una alternativa puede ser hacer self-hosting, usar servicios sin cobro por transferencia de datos como Cloudflare, o contratar servicios de hosting VPS baratos.
    • Si ya llegaste al punto de necesitar analizar costos cloud, quizá convenga replantearse el uso de la nube.
  • Complejidad de AWS y problemas de optimización

    • AWS es tan complejo que a los clientes les resulta difícil optimizar siquiera un solo factor.
    • Si demasiada gente usa estos trucos, AWS podría cerrar el loophole.
  • Alternativas para casos de alto consumo de ancho de banda

    • Considera servicios con precios de ancho de banda mucho más bajos, como Leaseweb, PhoenixNAP, Hetzner y OVH.
    • En algunos casos, ni siquiera se logra negociar el precio del ancho de banda con AWS.
  • Truco usando ECR

    • Con ECR, se pueden transferir gratis hasta 5TB al mes hacia internet.
    • Las imágenes de contenedor deben ser públicas, pero el contenido puede cifrarse.
    • Esto resulta útil al almacenar archivos multimedia en Glacier.