Consigli

Motori per suggerimenti

Un suggerimentitore è un servizio su Google Cloud che fornisce ottimizzazione suggerimenti per prodotti e risorse Google Cloud.

Ogni recommender ti consente di visualizzare e gestire i relativi consigli e approfondimenti utilizzando uno o più dei seguenti client:

  • Hub dei suggerimenti
  • Nel contesto dell'utilizzo dell'interfaccia utente (UI) del servizio nella console Google Cloud
  • API REST o Google Cloud CLI

Per maggiori dettagli sui suggerimenti e sui client supportati, vedi Motori per suggerimenti.

Ogni motore per suggerimenti ha un ID univoco che identifica il servizio. L'ID del motore per suggerimenti viene utilizzato quando interagisci con i consigli utilizzando i comandi gcloud del motore per suggerimenti o le API REST o RPC.

Per ulteriori informazioni, consulta Consigliatori.

Consigli

Un suggerimento è un suggerimento generato automaticamente per ottimizzare l'utilizzo delle risorse cloud. Include i passaggi necessari per intervenire il suggerimento. I recommender forniscono consigli in base all'utilizzo delle risorse, utilizzando il machine learning o le procedure di euristica. Il Recommender memorizza i consigli utilizzando l'entità Recommendation.

Un suggerimento ha i seguenti attributi principali:

Nome

Il nome del consiglio viene memorizzato nel campo name di Recommendation dell'oggetto. 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 fornito il consiglio.
  • LOCATION è Google Cloud località in cui le risorse associate consigli (ad es. global o us-central1-a).
  • RECOMMENDER_ID è l'ID del recommender completo (ad es.google.compute.instance.MachineTypeRecommender).
  • RECOMMENDATION_ID è un ID univoco per il consiglio.

Descrizione

La descrizione del consiglio viene archiviata nel campo description della Entità Recommendation. È disponibile solo in inglese. Si tratta di un testo in formato leggibile che descrive il consiglio. Nella console Google Cloud, la descrizione viene visualizzata quando fai clic per visualizzare ulteriori dettagli del consiglio.

Sottotipo motore per suggerimenti

Un motore per suggerimenti potrebbe avere sottotipi per tipi specifici di suggerimenti. Per Ad esempio, il motore per suggerimenti del ruolo Identity and Access Management ha i sottotipi REPLACE_ROLE e REMOVE_ROLE. Nel corso del tempo, ai consigli esistenti potrebbero essere aggiunti nuovi sottotipi. Questa panoramica fornisce un elenco di tutti i consigliatori disponibili. Per ulteriori informazioni sui sottotipi di consigli disponibili, consulta la documentazione del recommender.

Impatto del motore per suggerimenti

Un impatto quantifica i vantaggi previsti dall'esecuzione dell'azione consigliata. Ogni consiglio può avere i seguenti tipi di impatto che rappresentano i risultati che possono derivare dall'applicazione del consiglio:

  • L'impatto principale è obbligatorio e viene archiviato nel campo primaryImpact dell'entità Recommendation.

  • Gli impatti secondari sono facoltativi e vengono archiviati nel campo additionalImpact.

Esistono i seguenti tipi di impatto primario e secondario:

  • COST: importo stimato che risparmierai (o che dovrai sostenere) se applichi un determinato consiglio. Per maggiori dettagli, consulta il campo cost in CostProjection.

  • PERFORMANCE: aumento o diminuzione stimata del rendimento. Tieni presente che alcuni consigli per il rendimento possono comportare costi aggiuntivi (ad esempio, se un consiglio è aumentare l'allocazione di CPU o memoria su una VM sovrautilizzata).

  • SECURITY: miglioramento stimato della security posture. Per maggiori dettagli, fai riferimento al campo details in SecurityProjection.

  • MANAGEABILITY: riduzione stimata del lavoro manuale.

  • SUSTAINABILITY: riduzione stimata delle emissioni di anidride carbonica. Per informazioni dettagliate, consulta il campo carbon_footprint_kg_co2 in SustainabilityProjection e Carbon Footprint metodologia di reporting.

Operazione

Un Operation è la singola azione che deve essere eseguita come uno dei passaggi atomici in un suggerimento suggerito. Le operazioni possono rappresentare i seguenti cambiamenti:

  • Aggiungi, rimuovi o sostituisci i campi degli oggetti JSON in una risorsa Google Cloud.
  • Aggiungi, rimuovi o sostituisci campi di array JSON in una risorsa Google Cloud. Gli elementi dell'array JSON vengono identificati definendo un filtro sul percorso.
  • Aggiungi una nuova risorsa Google Cloud.
  • Elimina una risorsa Google Cloud.
  • Testare le operazioni per indicare lo stato originale della risorsa. Le operazioni di test possono essere utilizzate anche per verificare lo stato corrente di una risorsa prima di applicare il consiglio.
  • Copia e sposta risorse e campi di Google Cloud.

Ogni Operation è basato sul percorso JSON (RFC 6902) per le patch. Questa RFC è stata selezionata perché fornisce un modo più coerente per riflettere le modifiche alle risorse, inclusi scenari complessi che si verificano comunemente in Google Cloud. Per Ad esempio, i suggerimenti IAM coinvolgono array nidificati per riflettere Spostare l'associazione del ruolo di un'entità a un ruolo diverso.

Per ogni risorsa, è possibile generare un elenco di modifiche (visualizzazione basata sulle differenze) nel seguente modo:

  • Stato originale: le operazioni di test rappresentano il valore originale di un campo. Questo rappresenta il lato sinistro della visualizzazione delle differenze.
  • Stato consigliato: le operazioni non di test rappresentano le modifiche consigliate per campo. Questo rappresenta il lato destro della visualizzazione delle differenze.

Gruppi di operazioni

Un gruppo operativo è un insieme di una o più operazioni che devono essere eseguite in un ordine specifico quando applichi un consiglio. Un consiglio può avere per uno o più gruppi di operazioni. I gruppi di operazioni vengono archiviati nel campo operationGroups dell'entità Recommendation.

Ad esempio, un suggerimento che suggerisce di cambiare la macchina dell'istanza VM di Compute Engine ha due gruppi operativi: uno il tipo di macchina nel modello di istanza e un'altra ancora applichi la modifica a un particolare gruppo di istanze.

Poiché il primo insieme di operazioni deve essere completato prima che il secondo possa essere vengono definiti come due gruppi di istanze separati nel suggerimento.

Un gruppo di operazioni può includere un'operazione di test. Esecuzione delle operazioni di test per verificare che un suggerimento sia ancora valido. La suggerimento che suggerisce che la modifica del tipo di macchina dell'istanza VM abbia un test che verifica se il tipo di macchina corrente è lo stesso di quando è stato fatto un suggerimento.

Stato

I consigli passano attraverso 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 se lo richiedi. I suggerimenti attivi possono essere aggiornati quando le risorse cambiano.
  • CLAIMED, il che significa che tu o un altro processo avete rivendicato i suggerimento e che la risposta sia in corso. Quando suggerimento è rivendicato, il motore per suggerimenti non lo aggiorna quando le risorse cambiano.
  • SUCCEEDED, il che significa che tu o un altro processo avete applicato il il suggerimento alla risorsa associata.
  • FAILED, il che significa che un tentativo di applicare il consiglio non è riuscito.
  • DISMISSED, il che significa che tu o un'altra procedura avete ignorato il consiglio senza applicarlo alla risorsa associata. Questo stato impedisce che il consiglio venga visualizzato nell'elenco dei consigli, e viene generalmente richiesto da un amministratore che lo ha invalidato per per vari motivi. Inoltre, impedisce che un suggerimento venga spostato CLAIMED.

Le informazioni sullo stato del consiglio vengono memorizzate nel stateInfo campo dell'entità Recommendation. Sono inclusi lo stato stesso del consiglio e eventuali metadati aggiuntivi relativi allo stato per ciascun consigliere.

Quando un consiglio viene modificato in stato CLAIMED, SUCCEEDED o FAILED, i contenuti del consiglio non vengono aggiornati e il consiglio ha un periodo di attività di 90 giorni dal momento della modifica dello stato.

etag

Un etag è un'impronta digitale univoca che identifica lo stato attuale di un un consiglio per i nostri esperti. Ogni volta che il consiglio cambia, viene assegnato un nuovo valore etag. Questo valore è memorizzato nel campo etag di Recommender dell'oggetto.

Dopo aver recuperato un consiglio dal motore per suggerimenti utilizzando gcloud o chiamate API, puoi farvi riferimento nelle operazioni successive utilizzando sia l'ID suggerimento e l'etag. Questo assicura che tutte le operazioni eseguito solo se il suggerimento non è cambiato dall'ultima volta recuperata.

Priorità

Una priorità un consiglio aiuta a dare un'indicazione delle azioni da intraprendere per prime. Questo campo viene fornito con i valori P1, P2, P3 e P4 con P4 impostato come priorità predefinita. Per ogni consigliatore è possibile definire una propria strategia di assegnazione delle priorità.

Metadati di stato

Quando rivendichi un consiglio o lo contrassegni come riuscito o non riuscito, puoi includere metadati aggiuntivi sull'operazione con i metadati dello 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 la data dell'ultimo aggiornamento del consiglio dal processo di generazione. I contenuti del consiglio riflettono lo stato delle risorse all'ora dell'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 ulteriori esempi di consigli, consulta la documentazione per i singoli in Motori per suggerimenti.

Informazioni di riferimento

Riferimento a un'informazione associata. I riferimenti collegano i consigli ai relativi approfondimenti, se presenti.

Configurazione

Con la configurazione del recommender puoi:

  • Personalizza il modo in cui vengono generati insight e suggerimenti. Ciò avviene modificando alcuni dei parametri di configurazione utilizzati per generare queste informazioni e questi consigli.
  • Ogni configurazione del motore per suggerimenti inizia con alcuni valori predefiniti . 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, sono necessarie fino a 48 ore prima che la configurazione venga applicata.

Un esempio di configurazione del motore per suggerimenti è l'impostazione di una soglia di CPU predefinita o un periodo di osservazione per creare suggerimenti più adatti ai tuoi carichi di lavoro, applicazioni e infrastrutture.

Con l'API di configurazione, puoi recuperare la configurazione di un tipo di consiglio o di informazione. Hai la possibilità di aggiornare i parametri di configurazione per un singolo progetto. Ogni tipo di configurazione o di insight del motore per suggerimenti richiede autorizzazioni specifiche per visualizzare e modificare i parametri di configurazione.

Ecco un esempio di risposta contenente i parametri di configurazione per un recommender VM inattiva:

{
  "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"
}