Questa pagina descrive come utilizzare i suggerimenti sulle VM inattive per identificare e arrestare le istanze VM inattive al fine di ridurre lo spreco di risorse e i costi di elaborazione per i progetti.
- Per ulteriori informazioni su come Compute Engine genera suggerimenti per le VM inattive, consulta Come funziona il rilevamento di istanze VM inattive.
- Per saperne di più su come configurare il motore per suggerimenti sulle VM inattive in modo da ricevere un numero maggiore o minore di suggerimenti, consulta Configurare i suggerimenti sulle VM inattive.
Prima di iniziare
- Esamina le limitazioni per verificare se la tua VM supporta i suggerimenti relativi alle VM inattive.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.
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
-
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
- Set a default region and zone.
PROJECT_ID
: l'ID del progettoZONE
: la zona che contiene istanze per elencare i suggerimentioperationGroups
: gruppi di operazioni che puoi eseguire in serie per applicare il suggerimentodescription
: una spiegazione leggibile del consiglio.- google.compute.instance.IdleResourceRecommender
PROJECT_ID
: l'ID del progetto.ZONE
: la zona che contiene istanze per cui elencare i suggerimenti.Un'operazione di test per verificare l'attuale
status
della VM. Ad esempio:{ "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" }
Un'operazione di sostituzione per modificare il valore
status
della VM. Ad esempio:{ "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" }
- Nella console Google Cloud, vai alla pagina Istanze VM.
- Seleziona l'istanza che vuoi arrestare.
- Fai clic su Arresta.
VM_NAME
: il nome dell'istanza VM che vuoi arrestareZONE
: la zona che contiene l'istanza da arrestarePROJECT_ID
: l'ID del progettoZONE
: la zona che contiene l'istanza da arrestareVM_NAME
: il nome dell'istanza VM che vuoi arrestare- Scopri di più su come l'arresto, la reimpostazione e l'eliminazione di un'istanza VM influiscono sull'istanza e sulle relative risorse.
- Scopri come configurare i suggerimenti sulle VM inattive.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
Per maggiori informazioni, consulta Autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Prezzi
I suggerimenti sulle VM inattive sono disponibili senza costi aggiuntivi. L'utilizzo dei suggerimenti per ridurre l'utilizzo delle risorse può comportare risparmi sui costi.
Visualizzazione dei suggerimenti per le istanze VM inattive
Per visualizzare i suggerimenti sulle VM inattive, utilizza gcloud CLI o REST.
gcloud
Utilizza il comando
gcloud recommender recommendations list
con--recommender=google.compute.instance.IdleResourceRecommender
:gcloud recommender recommendations list \ --project=PROJECT_ID \ --location=ZONE \ --recommender=google.compute.instance.IdleResourceRecommender \ --format=yaml
Sostituisci quanto segue:
Ad esempio:
gcloud recommender recommendations list \ --project=my-project \ --location=us-central1-c \ --recommender=google.compute.instance.IdleResourceRecommender \ --format=yaml
Se nella località non sono presenti VM inattive, la risposta è vuota. In caso contrario, la risposta include i seguenti campi per ogni suggerimento:
--- 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
Scopri di più sull'utilizzo dei suggerimenti utilizzando gcloud negli esempi di gcloud.
REST
Richiama il metodo
recommendations.list
e utilizza il seguente tipo di consiglio:La chiamata API ha il seguente aspetto:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/recommendations
Sostituisci quanto segue:
L'esempio seguente mostra come inviare una richiesta con
curl
e la risposta di esempio associata.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
Esempio di risposta JSON per un suggerimento relativo a una VM inattiva:
{ "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" }
Puoi trovare ulteriori dettagli su ciascun campo nella documentazione relativa all'API Recommender.
Interpretazione della risposta al consiglio
Ogni suggerimento che ricevi tramite REST o gcloud CLI contiene un gruppo operazioni con operazioni che puoi eseguire in serie per applicare il suggerimento. I gruppi operativi per suggerimenti sulle VM inattive includono due operazioni:
La prima operazione è di tipo
test
, il che significa che devi verificare cheresource
sia ancoraRUNNING
. Puoi farlo controllando lo stato della VM.La seconda operazione,
replace
, indica che devi sostituire il valorestatus
della risorsa con un nuovo valore,TERMINATED
. Puoi farlo arrestando la VM, come descritto di seguito.Applicazione dei suggerimenti sulle VM inattive
Dopo aver ricevuto un suggerimento per una VM inattiva e aver deciso che l'istanza non è più necessaria, utilizza la console Google Cloud, gcloud CLI o REST per arrestare ed eliminare l'istanza, se vuoi.
Se arresti un'istanza e i relativi dischi senza eliminarli, paghi comunque per i relativi dischi.
Console
gcloud
Utilizza il comando
instances stop
e specifica l'elementoVM_NAME
che vuoi arrestare.gcloud compute instances stop VM_NAME --zone=ZONE
Sostituisci quanto segue:
REST
Crea una richiesta
POST
per arrestare un'istanza.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Sostituisci quanto segue:
Se hai la certezza che l'istanza VM e i relativi dischi possano essere rimossi, puoi eliminare l'istanza.
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-07-12 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }] -