En este documento se explica cómo inhabilitar automáticamente la facturación de un proyecto cuando los costes alcancen o superen el presupuesto del proyecto. Cuando inhabilitas la facturación en un proyecto, se cancelan todos los servicios de Google Cloud del proyecto, incluidos los servicios del nivel gratuito. Para obtener una respuesta más matizada a las notificaciones de presupuesto, consulta Controlar el uso de recursos con notificaciones.
Puedes limitar los costes porque tienes un importe máximo de dinero que puedes gastar en Google Cloud. En estos casos, cuando se alcance el límite de presupuesto, puede que quieras cerrar todos tus Google Cloud servicios y tu uso para dejar de incurrir en costes. Inhabilitar la facturación de un proyecto es un método eficaz para dejar de incurrir en costes en ese proyecto.
Limitaciones
Hay un retraso entre el momento en que se incurre en los costes y el momento en que se reciben las notificaciones de presupuesto, por lo que es posible que incurras en costes adicionales por el uso que no se haya registrado en el momento en que se detienen todos los servicios. Seguir los pasos de este ejemplo no garantiza que no vayas a superar tu presupuesto. Si tienes una cantidad de fondos limitada, define un presupuesto máximo inferior a los fondos disponibles para tener en cuenta los retrasos en la facturación.
No puedes inhabilitar la facturación en un proyecto que esté bloqueado en una cuenta de facturación. Para obtener más información sobre cómo bloquear y desbloquear proyectos, consulta el artículo Proteger la vinculación entre un proyecto y su cuenta de facturación.
Antes de empezar
Antes de empezar, debes completar las siguientes tareas:
- Habilita la API Cloud Billing
- Crea un presupuesto que se limite a un solo proyecto
- Configurar notificaciones de presupuesto programáticas
Configurar una función de Cloud Run
Para inhabilitar la facturación de Cloud en un proyecto, crea una función de Cloud Run y configúrala para que llame a la API Cloud Billing.
- Completa los pasos que se indican en Crear una función de Cloud Run. Asegúrate de que el Tipo de activador sea el mismo tema de Pub/Sub que usará tu presupuesto.
Añade 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
Define el Punto de entrada en la función correcta que se va a ejecutar:
Node.js
Define Punto de entrada como
stopBilling
.Python
Define Punto de entrada como
stop_billing
.Consulta la lista de variables de entorno definidas automáticamente para determinar si tienes que definir manualmente la variable GOOGLE_CLOUD_PROJECT en el proyecto en el que quieras inhabilitar la facturación de Cloud.
Haz clic en DESPLEGAR.
Configurar 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 conceder a la cuenta de servicio permisos para modificar los servicios del proyecto que necesite. Para ello, sigue estos pasos:
- Identifica la cuenta de servicio correcta consultando los detalles de tu función de Cloud Run. La cuenta de servicio se muestra en la parte inferior de la página.
Ve a la página Gestión de identidades y accesos de la consola Google Cloud para definir los permisos adecuados.
Para modificar los permisos de la cuenta de facturación, en la consola, ve a la página Gestión de cuentas de facturación, añade la cuenta de servicio como principal en la cuenta de facturación de Cloud y define los permisos de cuenta de facturación adecuados. Google Cloud
Consulta más información sobre cómo configurar permisos para cuentas de facturación de Cloud.
Comprobar que la facturación de Cloud está inhabilitada
Cuando el presupuesto envíe una notificación, el proyecto especificado dejará de tener una cuenta de facturación de Cloud asociada. Para asegurarte de que tu función funciona como se espera, sigue los pasos que se indican en Probar una función de Cloud Run.
Si la operación se realiza correctamente, el proyecto dejará de aparecer en la cuenta de facturación de Cloud y los recursos del proyecto se inhabilitarán, incluida la función de Cloud Run si está en el mismo proyecto.
Para seguir usando los Google Cloud recursos del proyecto, en laGoogle Cloud consola,vuelve a habilitar manualmente la facturación de Cloud en tu proyecto.
Siguientes pasos
Consulta otros ejemplos de notificaciones programáticas para saber cómo hacer lo siguiente:
- Escuchar las notificaciones
- Controlar el uso de recursos con notificaciones
- Enviar notificaciones a Slack