Consigli
Motori per suggerimenti
Un motore per suggerimenti è un servizio su Google Cloud che fornisce suggerimenti per l'ottimizzazione di prodotti e risorse Google Cloud .
Ogni sistema di raccomandazione ti consente di visualizzare e gestire i suggerimenti e gli approfondimenti utilizzando uno o più dei seguenti client:
- Active Assist
- Nel contesto, utilizzando l'interfaccia utente (UI) del servizio nella console Google Cloud
- API REST o Google Cloud CLI
Per informazioni dettagliate sui sistemi di raccomandazione e sui client supportati, vedi Sistemi di raccomandazione.
Ogni sistema di raccomandazione ha un ID univoco che identifica il servizio. Utilizzi l'ID del motore per suggerimenti quando interagisci con i suggerimenti utilizzando i comandi gcloud
di Recommender o le API REST o RPC.
Per saperne di più, consulta Motori per suggerimenti.
Consigli
Un suggerimento è un suggerimento generato automaticamente per ottimizzare l'utilizzo
delle risorse cloud. Include i passaggi necessari per intervenire in base al consiglio. I suggeritori forniscono suggerimenti in base all'utilizzo delle risorse, utilizzando il machine learning o l'euristica. Recommender memorizza
i consigli utilizzando l'entità Recommendation
.
Un consiglio ha i seguenti attributi principali:
- Nome
- Descrizione
- Sottotipo di motore per suggerimenti
- Impatto
- Operazione
- Gruppi di operazioni
- Informazioni sullo stato
- etag
- Priorità
- Metadati dello stato
- Data/ora ultimo aggiornamento
- Riferimento all'approfondimento
- Configurazione
Nome
Il nome del consiglio viene memorizzato nel campo name
dell'entità Recommendation
. Questo è il nome del consiglio nel seguente
formato:
projects/TARGET_PROJECT_ID/locations/LOCATION/recommenders/RECOMMENDER_ID/recommendations/RECOMMENDATION_ID
dove:
- TARGET_PROJECT_ID è l'ID del progetto in cui è stato formulato il consiglio.
- LOCATION è la Google Cloud
posizione in cui si trovano le risorse associate ai
suggerimenti (ad esempio
global
ous-central1-a
). - RECOMMENDER_ID è l'ID motore per suggerimenti completo (ad esempio,
google.compute.instance.MachineTypeRecommender
). - RECOMMENDATION_ID è un ID univoco per il consiglio.
Descrizione
La descrizione del consiglio è memorizzata nel campo description
dell'entità
Recommendation
. È disponibile solo in inglese. Si tratta di un testo leggibile
che descrive il consiglio. Nella console Google Cloud , la descrizione
viene visualizzata quando fai clic per visualizzare ulteriori dettagli del suggerimento.
Sottotipo di motore per suggerimenti
Un motore per suggerimenti potrebbe avere sottotipi per tipi specifici di consigli. Ad esempio, il suggeritore di ruoli Identity and Access Management ha i sottotipi REPLACE_ROLE
e
REMOVE_ROLE
. Nel corso del tempo potrebbero essere introdotti nuovi sottotipi nei sistemi di raccomandazione esistenti. Questa panoramica fornisce un elenco di tutti i sistemi di raccomandazione disponibili. Per saperne di più sui sottotipi di suggerimenti disponibili, consulta la documentazione del motore per suggerimenti.
Impatto del motore per suggerimenti
Un impatto quantifica i vantaggi previsti dell'esecuzione dell'azione consigliata. Ogni consiglio può avere i seguenti tipi di impatto, che rappresentano i risultati che possono verificarsi in seguito all'applicazione del consiglio:
L'impatto principale è obbligatorio e viene memorizzato nel campo
primaryImpact
dell'entitàRecommendation
.Gli impatti secondari sono facoltativi e vengono memorizzati nel campo
additionalImpact
.
Esistono i seguenti tipi di impatto primario e secondario:
COST
: l'importo stimato che prevedi di risparmiare (o sostenere) se applichi un determinato suggerimento. Per maggiori dettagli, consulta il campocost
in CostProjection.PERFORMANCE
: aumento o diminuzione stimati del rendimento. Tieni presente che alcuni consigli sul rendimento possono comportare costi aggiuntivi (ad esempio, se un consiglio è quello di aumentare l'allocazione di CPU o memoria su una VM sovrautilizzata).SECURITY
: miglioramento stimato della postura di sicurezza. Per maggiori dettagli, consulta il campodetails
in SecurityProjection.MANAGEABILITY
: riduzione stimata del lavoro manuale.SUSTAINABILITY
: riduzione stimata delle emissioni di anidride carbonica. Per maggiori dettagli, consulta il campocarbon_footprint_kg_co2
in SustainabilityProjection e Metodologia di report di Carbon Footprint.
Operazione
Un'Operation
è l'azione individuale che deve essere eseguita come uno dei passaggi atomici di un consiglio suggerito. Le operazioni possono rappresentare le seguenti modifiche:
- Aggiungi, rimuovi o sostituisci i campi dell'oggetto JSON in una risorsa Google Cloud .
- Aggiungi, rimuovi o sostituisci i campi dell'array JSON in una risorsa Google Cloud . Gli elementi dell'array JSON vengono identificati definendo un filtro sul percorso.
- Aggiungi una nuova Google Cloud risorsa.
- Elimina una risorsa Google Cloud .
- Operazioni di test per indicare lo stato originale della risorsa. Le operazioni di test possono essere utilizzate anche per verificare lo stato attuale di una risorsa prima di applicare il suggerimento.
- Copia e sposta Google Cloud risorse e campi.
Ogni Operation
si basa vagamente sul formato JSON Path (RFC
6902) per le patch. Questo RFC
è stato selezionato perché fornisce un modo più coerente per riflettere le modifiche
alle risorse, inclusi scenari complessi comunemente riscontrati in Google Cloud. Ad esempio, i suggerimenti IAM prevedono array nidificati per riflettere lo spostamento dell'associazione di ruolo di un'entità a un ruolo diverso.
Per ogni risorsa, è possibile generare un elenco delle modifiche (visualizzazione basata sulle differenze) nel seguente modo:
- Stato originale: le operazioni di test rappresentano il valore originale di un campo. Rappresenta il lato sinistro della visualizzazione differenze.
- Stato consigliato: le operazioni non di test rappresentano le modifiche consigliate per campo. Rappresenta il lato destro della visualizzazione differenze.
Gruppi di operazioni
Un gruppo di operazioni è un insieme di una o più operazioni che devono essere eseguite
in un ordine specifico quando applichi un consiglio. Un suggerimento può avere
uno o più gruppi di operazioni. I gruppi di operazioni vengono archiviati nel
campo operationGroups
dell'entità Recommendation
.
Ad esempio, un suggerimento che ti consiglia di modificare il tipo di macchina dell'istanza VM per un gruppo di istanze Compute Engine ha due gruppi di operazioni: uno in cui modifichi il tipo di macchina nel modello di istanza e un altro in cui applichi la modifica a un gruppo di istanze specifico.
Poiché il primo insieme di operazioni deve essere completato prima che possa essere avviato il secondo, questi vengono definiti come due gruppi di istanze separati nel consiglio.
Un gruppo di operazioni può includere un'operazione test. Le operazioni di test eseguono controlli per assicurarsi che un suggerimento sia ancora valido. Il suggerimento che consiglia di modificare il tipo di macchina dell'istanza VM ha un'operazione di test che verifica se il tipo di macchina attuale è lo stesso di quando è stato formulato il suggerimento.
Stato
I suggerimenti vengono sottoposti a molte transizioni di stato dopo essere stati proposti. Un consiglio può avere i seguenti stati:
ACTIVE
, il che significa che il consiglio è stato fornito, ma non sono state intraprese azioni in risposta. Il consiglio può essere applicato rivendicandolo. I consigli attivi possono essere aggiornati quando le risorse cambiano.CLAIMED
, il che significa che tu o un altro processo avete rivendicato il consiglio e che è in corso una risposta. Quando un suggerimento viene rivendicato, Recommender non lo aggiorna quando le risorse cambiano.SUCCEEDED
, il che significa che tu o un altro processo avete applicato il suggerimento alla risorsa associata.FAILED
, il che significa che il tentativo di applicare il suggerimento non è riuscito.DISMISSED
, il che significa che tu o un altro processo avete ignorato il suggerimento senza applicarlo alla risorsa associata. Questo stato impedisce la visualizzazione del suggerimento nell'elenco dei suggerimenti e viene in genere applicato da un amministratore che lo ha invalidato per vari motivi. Inoltre, impedisce a un consiglio di passare allo statoCLAIMED
.
Le informazioni sullo stato del suggerimento vengono memorizzate nel campo stateInfo
dell'entità Recommendation
. Ciò include lo stato stesso del
consiglio e qualsiasi metadato di stato aggiuntivo per ogni sistema di raccomandazione.
Quando un consiglio viene modificato in stato CLAIMED
, SUCCEEDED
o FAILED
,
il contenuto del consiglio non viene aggiornato e il consiglio ha una
durata di 90 giorni dal momento della modifica dello stato.
etag
Un etag è un'impronta univoca che identifica lo stato attuale di un consiglio. Ogni volta che il consiglio cambia, viene assegnato un nuovo valore etag. Questo valore viene memorizzato nel campo etag
dell'entità Recommender
.
Dopo aver recuperato un suggerimento da Recommender utilizzando i comandi gcloud
o le chiamate API, fai riferimento a questo suggerimento nelle operazioni successive utilizzando sia l'ID suggerimento sia l'etag. In questo modo viene garantito che le operazioni vengano eseguite solo se il suggerimento non è cambiato dall'ultima volta che lo hai recuperato.
Priorità
Una priorità
per un consiglio indica quali azioni devono essere affrontate per prime.
Questo campo include i valori P1
, P2
, P3
e P4
, con P4
impostato come priorità predefinita.
Ogni sistema di raccomandazione può avere una propria strategia di definizione delle priorità.
Metadati dello stato
Quando rivendichi un consiglio o lo contrassegni come riuscito o non riuscito, puoi includere metadati aggiuntivi sull'operazione con i metadati di stato.
I metadati sono specificati come coppie key:value
. Ad esempio:
{
"stateMetadata": {
"priority" : "high",
"tracking_number": "12345" }
}
Gli aggiornamenti al campo stateMetadata
sovrascrivono i metadati di stato esistenti.
Data/ora ultimo aggiornamento
L'ora dell'ultimo aggiornamento indica l'ultima volta che il suggerimento è stato aggiornato dal processo di generazione. Il contenuto del consiglio riflette lo stato delle risorse all'ultimo aggiornamento.
Esempi
L'esempio seguente mostra un suggerimento per il dimensionamento di un'istanza VM in Compute Engine.
{
"content": {
"operationGroups": [
{
"operations": [
{
"action": "test",
"path": "/machineType",
"resource": "//compute.googleapis.com/projects/example-project/zones/us-central1-a/instances/instance-rightsizing-2",
"resourceType": "compute.googleapis.com/Instance",
"valueMatcher": {
"matchesPattern": ".*zones/us-central1-a/machineTypes/n1-standard-4"
}
},
{
"action": "replace",
"path": "/machineType",
"resource": "//compute.googleapis.com/projects/example-project/zones/us-central1-a/instances/instance-rightsizing-2",
"resourceType": "compute.googleapis.com/Instance",
"value": "zones/us-central1-a/machineTypes/custom-2-5120"
}
]
}
]
},
"description": "Save cost by changing machine type from n1-standard-4 to custom-2-5120.",
"etag": "\"923daeebe926c12f\"",
"recommenderSubtype": "CHANGE_MACHINE_TYPE",
"lastRefreshTime": "2019-06-13T06:44:58Z",
"name": "projects/32428390823/locations/us-central1-a/recommenders/google.compute.instance.MachineTypeRecommender/recommendations/a523ff7e-ed03-4143-a3a5-5b396b99cba9",
"primaryImpact": {
"category": "COST",
"costProjection": {
"cost": {
"currencyCode": "USD",
"units": "-73"
},
"duration": "2592000s"
}
},
"stateInfo": {
"state": "ACTIVE"
}
}
Per altri esempi di consigli, consulta la documentazione dei singoli motori per suggerimenti in Motori per suggerimenti.
Riferimento all'approfondimento
Riferimento a un approfondimento associato. I link ai riferimenti collegano i consigli agli approfondimenti associati, se presenti.
Configurazione
Tramite la configurazione del motore per suggerimenti, puoi:
- Personalizza il modo in cui vengono generati approfondimenti e suggerimenti. A questo scopo, vengono modificati alcuni dei parametri di configurazione utilizzati per generare queste informazioni e questi suggerimenti.
- Ogni configurazione del sistema di raccomandazione inizia con alcuni valori predefiniti per ciascun parametro. Ogni parametro ha un intervallo di valori che puoi utilizzare per personalizzare la configurazione.
- La configurazione attiva è quella che hai modificato per ultima. Per ogni modifica apportata alla configurazione, l'applicazione della modifica richiede fino a 48 ore.
Un esempio di configurazione di Recommender è l'impostazione di una soglia di CPU predefinita o di un periodo di osservazione per creare suggerimenti più adatti alle esigenze dei tuoi workload, delle applicazioni e dell'infrastruttura.
Con l'API di configurazione, puoi recuperare la configurazione per un tipo di suggerimento o approfondimento. Hai la possibilità di aggiornare i parametri di configurazione per un singolo progetto. Ogni configurazione di consigli o tipo di insight richiede autorizzazioni specifiche per visualizzare e modificare i parametri di configurazione.
Ecco un esempio di risposta contenente i parametri di configurazione per un suggeritore di VM inattive:
{
"name": "projects/project-number/locations/global/recommenders/google.iam.policy.Recommender/config",
"recommenderGenerationConfig": {
"params": {
"minimum_observation_period": "P90D",
}
},
"etag": "\"2f3c9b65cda6a4ba\"",
"updateTime": "2020-11-03T04:41:15.330351Z"
}