En este documento, se explica cómo inhabilitar automáticamente la facturación en un proyecto cuando los costos alcanzan o superan el presupuesto del proyecto. Cuando inhabilitas la facturación en un proyecto, finalizas todos los Google Cloud servicios del proyecto, incluidos losservicios del nivel gratuito. Para obtener una respuesta más detallada a las notificaciones de presupuesto, consulta Cómo controlar el uso de recursos con notificaciones.
Es posible que limites los costos porque tienes una cantidad máxima de dinero que puedes invertir en Google Cloud. En estos casos, cuando se alcance el límite de tu presupuesto, es posible que estés dispuesto a cerrar todos tus Google Cloud servicios y el uso para dejar de incurrir en costos. Inhabilitar la facturación de tu proyecto es un método eficiente para dejar de generar costos en ese proyecto.
Limitaciones
Hay un retraso entre el momento en que se generan los costos y el momento en que se reciben las notificaciones de presupuesto, por lo que es posible que se generen costos adicionales por un uso que no llegó en el momento en que se detuvieron todos los servicios. Seguir los pasos de este ejemplo no garantiza que no gastarás más que tu presupuesto. Si tienes una cantidad limitada de fondos, establece el presupuesto máximo por debajo de los fondos disponibles para tener en cuenta los retrasos de facturación.
No puedes inhabilitar la facturación en un proyecto que esté bloqueado a una cuenta de facturación. Para obtener más información sobre cómo bloquear y desbloquear proyectos, consulta Protege el vínculo entre un proyecto y su cuenta de facturación.
Antes de comenzar
Antes de comenzar, debes completar las siguientes tareas:
- Habilita la API de Cloud Billing
- Crea un presupuesto que tenga un solo proyecto
- Configura notificaciones de presupuesto programáticas
Configura una función de Cloud Run
Para inhabilitar Facturación de Cloud en un proyecto, crea una función de Cloud Run y configúrala para que llame a la API de Cloud Billing.
- Completa los pasos que se describen en Crea una función de Cloud Run. Asegúrate de que el tipo de activador esté configurado con el mismo tema de Pub/Sub que usará tu presupuesto.
Agrega las siguientes dependencias:
Node.js
Copia lo siguiente en tu archivo
package.json
:Python
Copia lo siguiente en tu archivo
requirements.txt
:Copia el siguiente código en tu función de Cloud Run:
Node.js
Python
Establece el Punto de entrada en la función correcta para ejecutar:
Node.js
Establece el Punto de entrada en
stopBilling
.Python
Establece el Punto de entrada en
stop_billing
.Revisa la lista de variables de entorno que se configuran automáticamente para determinar si necesitas configurar de forma manual la variable GOOGLE_CLOUD_PROJECT en el proyecto para el que deseas inhabilitar la Facturación de Cloud.
Haz clic en IMPLEMENTAR.
Configura los permisos de la cuenta de servicio
Tu función de Cloud Run se ejecuta como una cuenta de servicio creada automáticamente. Para inhabilitar la facturación, debes otorgarle permisos a la cuenta de servicio para cualquier servicio del proyecto que necesite modificar. Para ello, completa los siguientes pasos:
- Para identificar la cuenta de servicio correcta, visualiza los detalles de la función de Cloud Run. La cuenta de servicio se encuentra en la parte inferior de la página.
Ve a la página IAM en la consola de Google Cloud para configurar los permisos correspondientes.
Para modificar los permisos de la cuenta de facturación, en la consola de Google Cloud, ve a la página Administración de cuentas de Facturación, agrega la cuenta de servicio como responsable en la cuenta de Facturación de Cloud y establece los permisos de cuenta de facturación adecuados.
Ve a la página Administración de cuentas en Facturación de Cloud
Obtén más información para configurar permisos para las cuentas de Facturación de Cloud.
Prueba que la Facturación de Cloud esté inhabilitada
Cuando el presupuesto envíe una notificación, el proyecto especificado ya no tendrá una cuenta de Facturación de Cloud asociada. Para asegurarte de que la función funcione como se espera, sigue los pasos que se indican en Cómo probar una función de Cloud Run.
Si se realiza correctamente, el proyecto ya no será visible en la cuenta de Facturación de Cloud, y los recursos del proyecto estarán inhabilitados, incluida la función de Cloud Run si está en el mismo proyecto.
Para seguir usando los Google Cloud recursos del proyecto, en la consola de Google Cloud, vuelve a habilitar la Facturación de Cloud de forma manual para tu proyecto.
¿Qué sigue?
Revisa otros ejemplos de notificaciones programáticas para aprender a hacer lo siguiente:
- Cómo escuchar tus notificaciones
- Controla el uso de recursos con notificaciones
- Cómo enviar notificaciones a Slack