Este documento explica como desativar automaticamente o faturamento em um projeto quando os custos atingem ou excedem o orçamento do projeto. Quando você desativa o faturamento em um projeto, todos os serviços do Google Cloud projeto são encerrados, incluindo os serviços do nível gratuito. Para uma resposta mais detalhada às notificações de orçamento, consulte Controlar o uso de recursos com notificações.
Talvez seja útil limitar os custos devido a um valor máximo de dinheiro que pode ser gasto no Google Cloud. Nesses casos, quando o limite de orçamento é atingido, talvez seja melhor encerrar todos os seus serviços e o uso do Google Cloud para evitar custos. Desativar o faturamento no seu projeto é um método eficiente para evitar custos nele.
Limitações
Há um atraso entre a geração de custos e o recebimento das notificações de orçamento. Por isso, é possível que você tenha custos extras pelo uso que não foi identificado no momento em que todos os serviços foram interrompidos. Seguir as etapas neste exemplo não garante que você não gastará além do orçamento. Se você tiver uma quantidade limitada de fundos, defina seu orçamento máximo abaixo dos fundos disponíveis para compensar atrasos no faturamento.
Não é possível desativar o faturamento em um projeto bloqueado para uma conta de faturamento. Para saber mais sobre como bloquear e desbloquear projetos, consulte Proteger a vinculação entre um projeto e a conta de faturamento dele.
Antes de começar
Antes de começar, conclua as seguintes tarefas:
- Ative a API Cloud Billing.
- Criar um orçamento com escopo para um único projeto
- Configurar notificações de orçamento programático
Configurar uma função do Cloud Run
Para desativar o Cloud Billing em um projeto, crie uma função do Cloud Run e configure-a para chamar a API Cloud Billing.
- Conclua as etapas em Criar uma função do Cloud Run. Verifique se o Tipo de gatilho está definido como o mesmo tópico do Pub/Sub que o orçamento vai usar.
Adicione as seguintes dependências:
Node.js
Copie o seguinte no arquivo
package.json
:Python
Copie o seguinte no arquivo
requirements.txt
:Copie o código a seguir na função do Cloud Run:
Node.js
Python
Defina o Ponto de entrada como a função correta a ser executada:
Node.js
Defina o Ponto de entrada como
stopBilling
.Python
Defina o Ponto de entrada como
stop_billing
.Revise a lista de variáveis de ambiente definidas automaticamente para determinar se você precisa definir manualmente a variável GOOGLE_CLOUD_PROJECT para o projeto em que quer desativar o Cloud Billing.
Clique em IMPLANTAR.
Configurar permissões da conta de serviço
Sua função do Cloud Run é executada como uma conta de serviço criada automaticamente. Para desativar o faturamento, conceda à conta de serviço permissões para todos os serviços do projeto que ela precisa modificar seguindo estas etapas:
- Identifique a conta de serviço correta visualizando os detalhes da sua função do Cloud Run. listada na parte de baixo da página.
Acesse a página IAM no Google Cloud console para definir as permissões apropriadas.
Para modificar as permissões da conta de faturamento, no console Google Cloud , acesse a página Gerenciamento da conta do Cloud Billing, adicione a conta de serviço como um principal na conta do Cloud Billing e defina as permissões apropriadas da conta de faturamento.
Saiba como configurar permissões para contas do Cloud Billing.
Testar se o Cloud Billing está desativado
Quando o orçamento enviar uma notificação, o projeto especificado não terá mais uma conta do Cloud Billing associada a ele. Para garantir que a função funcione como esperado, siga as etapas em Testar uma função do Cloud Run.
Se a operação for bem-sucedida, o projeto não vai mais aparecer na conta do Cloud Billing e os recursos dele serão desativados, incluindo a função do Cloud Run, se ela estiver no mesmo projeto.
Para continuar usando os recursos do Google Cloud no projeto, no console doGoogle Cloud , reative manualmente o Cloud Billing para seu projeto.
A seguir
Confira outros exemplos de notificações programáticas para saber como fazer o seguinte: