Esta página descreve como você pode usar recomendações de VM ociosa para identificar e interromper instâncias de VM ociosas para reduzir o desperdício de recursos e reduzir a conta de computação em seus projetos.
- Para obter mais informações sobre como o Compute Engine gera recomendações de VM inativas, consulte Como funciona a detecção de instâncias de VM inativas .
- Para obter mais informações sobre como configurar o recomendador de VM ociosa para receber mais ou menos recomendações, consulte Configurar recomendações de VM ociosa .
Antes de começar
- Revise as limitações para verificar se sua VM oferece suporte a recomendações de VM ociosa.
- Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar no Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
-
PROJECT_ID
: o ID do seu projeto -
ZONE
: a zona que contém instâncias para listar recomendações -
operationGroups
: grupos de operações que você pode executar em ordem serial para aplicar a recomendação -
description
: uma explicação legível da recomendação - google.compute.instance.IdleResourceRecommender
-
PROJECT_ID
: o ID do seu projeto. -
ZONE
: a zona que contém instâncias para as quais listar recomendações. Uma operação de teste para verificar o
status
atual da VM. Por exemplo:{ "action": "test", "resourceType": "compute.googleapis.com/Instance", "resource" : "//compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name", "path": "/status", "value": "RUNNING" }
Uma operação de substituição para alterar o
status
da VM. Por exemplo:{ "action": "replace", "resourceType": "compute.googleapis.com/Instance", "resource" : "//compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name", "path": "/status", "value": "TERMINATED" }
- No console do Google Cloud, acesse a página de instâncias de VM .
- Selecione a instância que você deseja interromper.
- Clique em Parar .
-
VM_NAME
: o nome da instância de VM que você deseja interromper -
ZONE
: a zona que contém a instância que você deseja interromper -
PROJECT_ID
: o ID do seu projeto -
ZONE
: a zona que contém a instância que você deseja interromper -
VM_NAME
: o nome da instância de VM que você deseja interromper - Saiba mais sobre como interromper, redefinir e excluir uma instância de VM afeta a instância e seus recursos .
- Saiba como configurar recomendações de VM ociosa .
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Preços
As recomendações de VM ociosa estão disponíveis gratuitamente. Usar recomendações para reduzir o uso de recursos pode resultar em economia de custos.
Como visualizar recomendações de instâncias de VM inativas
Para visualizar recomendações sobre VMs ociosas, use a CLI gcloud ou REST.
gcloud
Use o comando
gcloud recommender recommendations list
com--recommender=google.compute.instance.IdleResourceRecommender
:gcloud recommender recommendations list \ --project=PROJECT_ID \ --location=ZONE \ --recommender=google.compute.instance.IdleResourceRecommender \ --format=yaml
Substitua o seguinte:
Por exemplo:
gcloud recommender recommendations list \ --project=my-project \ --location=us-central1-c \ --recommender=google.compute.instance.IdleResourceRecommender \ --format=yaml
Se não houver VMs ociosas no local, a resposta estará vazia. Caso contrário, a resposta incluirá os seguintes campos para cada recomendação:
--- content: ... operationGroups: - operations: - action: test path: /status resource: //compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name resourceType: compute.googleapis.com/Instance value: RUNNING - action: replace path: /status resource: //compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name resourceType: compute.googleapis.com/Instance value: TERMINATED description: Save cost by stopping Idle VM 'vm-name'. etag: '"83da314c23f634e1"' lastRefreshTime: '2020-02-24T07:56:40Z' name: projects/141732092341/locations/us-central1-c/recommenders/google.compute.instance.IdleResourceRecommender/recommendations/0e061a3a-f921-4216-b1b4-62e16942cd1a primaryImpact: category: COST costProjection: cost: currencyCode: USD nanos: -91533961 units: '-262' duration: 2592000s recommenderSubtype: STOP_VM stateInfo: state: ACTIVE
Saiba mais sobre como trabalhar com recomendações usando gcloud em exemplos de gcloud .
DESCANSAR
Chame o método
recommendations.list
e use o seguinte tipo de recomendação:A chamada da API se parece com:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/recommendations
Substitua o seguinte:
O exemplo a seguir mostra como enviar uma solicitação com
curl
e o exemplo de resposta associado.PROJECT_ID=my-project ZONE=us-central1-c RECOMMENDER_ID=google.compute.instance.IdleResourceRecommender curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: $PROJECT_ID" \ https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/$RECOMMENDER_ID/recommendations
Exemplo de resposta JSON para uma recomendação de VM ociosa:
{ "description" : "Save cost by stopping Idle VM `vm-name`", "name": "projects/1574864402/locations/us-central1-c/recommenders/" "google.compute.instance.IdleResourceRecommender/" "recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1", "lastRefreshTime": { "seconds": 1543912652 }, "primaryImpact": { "category": COST, "costProjection": { "cost": {"currencyCode": "USD", "units": -50}, "duration": { "seconds": 2592000 } } }, "stateInfo": ACTIVE, "content": "groups" : [ { "operations" : [ { "action": "test", "resourceType": "compute.googleapis.com/Instance", "resource": "//compute.googleapis.com/projects/my-project/" "zones/us-central1-c/instances/vm-name", "path": "/status", "value": "RUNNING" }, { "action": "replace", "resourceType": "compute.googleapis.com/Instance", "resource": "//compute.googleapis.com/projects/my-project/" "zones/us-central1-c/instances/vm-name", "path": "/status", "value": "TERMINATED" } ] } ] }, "etag" : "cb0e6ac2cfc0b591" }
Você pode encontrar mais detalhes sobre cada campo na documentação da API do recomendador .
Interpretando a resposta da recomendação
Cada recomendação recebida por meio da CLI ou REST gcloud contém um grupo de operações, com operações que você pode executar em série para aplicar a recomendação. Os grupos de operações de recomendação de VM ociosa incluem duas operações:
A primeira operação é um
test
, o que significa que você deve testar se oresource
ainda estáRUNNING
. Você pode fazer isso verificando o estado da VM .A segunda operação,
replace
, significa que você deve substituir ostatus
do recurso por um novo valor,TERMINATED
. Você pode fazer isso parando a VM, conforme descrito abaixo.Aplicando recomendações de VM ociosa
Depois de receber uma recomendação de VM inativa e decidir que não precisa mais da instância, use o console do Google Cloud , a CLI gcloud ou REST para interromper e, opcionalmente, excluir a instância.
Se você parar, mas não excluir uma instância e seus discos, ainda pagará pelos discos.
Console
gcloud
Use o comando
instances stop
e especifique aVM_NAME
que você deseja parar.gcloud compute instances stop VM_NAME --zone=ZONE
Substitua o seguinte:
DESCANSAR
Construa uma solicitação
POST
para interromper uma instância.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Substitua o seguinte:
Se tiver certeza de que a instância de VM e seus discos podem ser removidos, você poderá excluir a instância .
O que vem a seguir
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-04-21 UTC.
-