Este documento explica como usar as notificações de orçamento para controlar seletivamente o uso de recursos.
Quando você desativa o faturamento em um projeto, todos os serviços são interrompidos e todos os recursos são excluídos. Se você precisar de uma resposta com mais detalhes, controle seletivamente os recursos. Por exemplo, é possível interromper alguns recursos do Compute Engine e deixar os recursos do Cloud Storage intatos. A interrupção de apenas alguns recursos reduz os custos sem desativar completamente o ambiente.
No exemplo a seguir, o projeto realiza pesquisas com várias máquinas virtuais (VMs) do Compute Engine e armazena os resultados em buckets do Cloud Storage. Usando as notificações de orçamento como acionador, depois que o orçamento for excedido, essa função do Cloud Run encerra todas as instâncias do Compute Engine, mas não afeta os resultados armazenados.
Antes de começar
Antes de começar, faça o seguinte:
Configurar uma função do Cloud Run
- Siga as etapas em Criar uma função do Cloud Run. Defina o tipo de gatilho como o mesmo tópico do Pub/Sub que o orçamento vai usar.
Adicione as seguintes dependências:
Node.js
Copie o seguinte para o arquivo
package.json
:Python
Copie o seguinte para o arquivo
requirements.txt
:Copie o código abaixo 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
limitUse
.Python
Defina o Ponto de entrada como
limit_use
.Revise a lista de variáveis de ambiente definidas automaticamente e determine se você precisa definir manualmente a variável GCP_PROJECT para o projeto que executa as máquinas virtuais.
Defina o parâmetro ZONE. Esse parâmetro é a zona em que as instâncias são interrompidas quando o orçamento é excedido.
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 controlar o uso, você precisa conceder à conta de serviço permissões para os serviços do projeto que ela precisa modificar, seguindo estas etapas:
- Identifique a conta de serviço correta conferindo os detalhes da sua função do Cloud Run. A conta de serviço é listada na parte de baixo da página.
Acesse a página IAM no console do Google Cloud para definir as permissões apropriadas.
Testar se as instâncias foram interrompidas
Para garantir que a função funcione conforme o esperado, siga as etapas em Testar uma função do Cloud Run.
Se for bem-sucedido, as VMs do Compute Engine no console do Google Cloud serão interrompidas.
A seguir
Confira outros exemplos de notificações programáticas para saber como fazer o seguinte:
- Ouvir as notificações
- Desativar o uso do faturamento com notificações
- Enviar notificações para o Slack