
Google anunció que a partir de 2020 subirán los precios de las VMs de Google Compute Engine que usen direcciones IPv4 externas. Ejecuta este script para estimar el costo futuro de tus máquinas.
Lo que antes era un servicio gratuito ahora tendrá un costo: Google Cloud decidió cobrar a sus clientes por las instancias de compute que usen IPs externas a partir del 1 de enero de 2020. Según el anuncio, se aplicará un cargo adicional de USD 0.004 por hora a las máquinas on-demand, mientras que las instancias preemptable pagarán apenas USD 0.002 por hora por el uso de direcciones IPv4 externas. Tener una máquina encendida durante todo un mes se traduce en un costo adicional de USD 2.92 o USD 1.46 al mes, respectivamente. Cabe mencionar que el cargo por IPs estáticas sin uso se mantiene sin cambios en USD 0.01 por hora (USD 7.30 al mes).
¿Cómo afecta a mi cuenta?
Como el partner más grande de Google Cloud a nivel mundial, en DoiT International preparamos un script breve que ayuda a los usuarios de la nube a analizar su entorno actual e identificar las VMs que están corriendo con IPs externas. Al ejecutarlo, podrás estimar el impacto que tendrán los próximos cambios en el cobro de IPs externas en toda tu organización. " Trabajamos para que nuestros clientes sean más eficientes en costos, pero también queremos compartir lo que sabemos con la comunidad global de la nube," comenta el CTO de la compañía.
Requisitos previos para ejecutar el script
El script lista todas las instancias con IPs externas en todos los proyectos de una organización de GCP, usando la herramienta de línea de comandos gcloud. Utiliza una cuenta de servicio con permisos de rol viewer a nivel de organización para hacer las llamadas a la API de Google Compute Engine. Puedes crear esa cuenta de servicio o pedirle al admin de tu organización de GCP que la cree por ti y te entregue el archivo JSON de autenticación. Si ya tienes permisos de viewer a nivel de organización, puedes ejecutar el script sin autenticarte primero con una cuenta de servicio.
Cómo ejecutar el script
curlhttps://raw.githubusercontent.com/doitintl/list-external-ips/master/ext-ips-analysis.sh
| bashEsta ejecución lista todos los proyectos de las organizaciones que el usuario tiene autorizadas para ver y recorre cada uno buscando VMs con una IP externa asignada.
También puedes ejecutar el script para un solo proyecto pasándole el nombre del proyecto, así:
export PROJECT_ID='<enter your project id>'curlhttps://raw.githubusercontent.com/doitintl/list-external-ips/master/ext-ips-analysis.sh
| bash -s $PROJECT_IDResultado
En la carpeta desde la que se ejecuta el script se genera un archivo llamado projectsIPs.csv, como el siguiente:

Cómo evitar cargos innecesarios
Al ejecutar el script verás qué VMs están corriendo en tu organización y podrían generar cargos adicionales. El primer paso es optimizar las VMs de tus proyectos y quitar las IPs externas a las que no necesitan acceso a internet. Sin embargo, si esas máquinas sí requieren acceso externo, te conviene considerar enrutar el tráfico de salida a través de un NAT gateway (que tiene sus propias consideraciones de precio). Claro que existen otras formas de optimizar tus VMs para que pagues únicamente por las IPs externas que realmente necesitas. Si quieres conversarlo, contáctanos aquí o déjanos tu comentario abajo.
¿Te gustó este artículo? Sigue el blog de DoiT International para más contenido sobre optimización de costos en la nube.