Eliminazione pianificata dei cluster

Per evitare di incorrere in addebiti di Google Cloud per un cluster inattivo, utilizza la funzionalità di eliminazione pianificata dei cluster di Dataproc quando crei un cluster. Questa funzionalità offre opzioni per eliminare un cluster:

  • dopo un periodo di inattività del cluster specificato
  • in un momento futuro specificato
  • dopo un periodo specificato che inizia dal momento di invio della richiesta di creazione del cluster

Calcolo del tempo di inattività del cluster

La proprietà del cluster dataproc:dataproc.cluster-ttl.consider-yarn-activity incide sul calcolo del tempo di inattività del cluster, come segue:

  • Questa proprietà è attiva (impostata su true) per impostazione predefinita.
  • Quando questa proprietà è abilitata, sia l'attività YARN che l'API Dataproc Jobs devono essere inattive per avviare e continuare a incrementare il calcolo del tempo di inattività del cluster.
    • L'attività YARN include applicazioni YARN in attesa ed in esecuzione.
    • L'attività dell'API Dataproc Jobs include i job in attesa ed in esecuzione inviati all'API Dataproc Jobs.
  • Se questa proprietà è impostata su false, l'attività dell'API Dataproc Jobs deve essere inattiva solo per poter avviare e continuare a incrementare il calcolo del tempo di inattività del cluster.

Utilizzo dell'eliminazione pianificata dei cluster

Comando g-cloud

Puoi creare un cluster con la funzionalità di eliminazione pianificata dei cluster passando i seguenti flag di eliminazione pianificata al comando gcloud dataproc clusters create.

FlagDescrizioneGranularitàValore minValore max
--max-idle1La durata dal momento in cui il cluster entra in stato di inattività a quello in cui viene avviata l'eliminazione del cluster. Fornisci la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (rispettivamente secondi, minuti, ore e giorni). Esempi: "30 m" o "1 g" (30 minuti o 1 giorno da quando il cluster diventa inattivo).1 secondo5 minuti14 giorni
--expiration-time2Il momento di iniziare a eliminare il cluster nel formato data/ora ISO 8601. Un modo semplice per generare la data e l'ora nel formato corretto è tramite il generatore di timestamp. Ad esempio, "2017-08-22T13:31:48-08:00" specifica un orario di scadenza pari a 13:21:48 nel fuso orario UTC -8:00.1 secondo10 minuti dall'ora attuale 14 giorni dall'ora attuale
--max-age2La durata dal momento dell'invio della richiesta di creazione del cluster al momento in cui inizia l'eliminazione del cluster. Fornisci la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (rispettivamente secondi, minuti, ore e giorni). Esempi: "30 m" (30 minuti da adesso); "1 g" (1 giorno da adesso).1 secondo10 minuti14 giorni
gcloud dataproc clusters create cluster-name \
    --region=region \
    --max-idle=duration \
    --expiration-time=time \
    ... other flags ...

Puoi aggiornare un cluster creato con la funzionalità di eliminazione pianificata per modificare o rimuovere le impostazioni di eliminazione pianificata passando i seguenti flag di eliminazione pianificata al comando gcloud dataproc clusters update (altri flag di aggiornamento del cluster non possono essere combinati con i flag di eliminazione pianificata).

FlagDescrizioneGranularitàValore minValore max
--max-idle1La durata dal momento in cui il cluster entra in stato di inattività a quello in cui viene avviata l'eliminazione del cluster. Fornisci la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (rispettivamente secondi, minuti, ore e giorni). Esempi: "30 m" o "1 g" (30 minuti o 1 giorno da quando il cluster diventa inattivo).1 secondo5 minuti14 giorni
--no-max-idleAnnulla l'eliminazione automatica del cluster per la durata di inattività del cluster precedentemente impostata dal flag max-idlenon applicabilenon applicabilenon applicabile
--expiration-time2Il momento di iniziare a eliminare il cluster nel formato data/ora ISO 8601. Un modo semplice per generare la data e l'ora nel formato corretto è tramite il generatore di timestamp. Ad esempio, "2017-08-22T13:31:48-08:00" specifica un orario di scadenza pari a 13:21:48 nel fuso orario UTC -8:00.1 secondo10 minuti dall'ora attuale e il nuovo orario non deve essere antecedente a quello impostato in precedenza.14 giorni dall'ora attuale
--max-age2La durata tra il momento dell'invio della richiesta di aggiornamento del cluster e il momento in cui inizia l'eliminazione del cluster. Fornisci la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (rispettivamente secondi, minuti, ore e giorni). Esempi: "30 m" (30 minuti da adesso); "1 g" (1 giorno da adesso).1 secondo10 minuti e la data e l'ora di eliminazione pianificata aggiornata (ora di aggiornamento + nuova durata massima) non devono essere precedenti a quella impostata in precedenza per l'eliminazione del cluster.14 giorni
--no-max-ageAnnulla l'eliminazione automatica del cluster in base all'età massima del cluster precedentemente impostata dal flag max-age oexpiration-timenon applicabilenon applicabilenon applicabile
gcloud dataproc clusters update cluster-name \
    --region=region \
    --max-idle=duration \
    --no-max-age \
    ... other flags

API REST

Puoi creare un cluster con la funzionalità di eliminazione pianificata dei cluster impostando i seguenti campi ClusterLifecycleConfig nella richiesta API cluster.create o cluster.patch.

Flag Descrizione Granularità Valore min Valore max
idleDeleteTtl1 La durata dal momento in cui il cluster entra in stato di inattività a quello in cui viene avviata l'eliminazione del cluster. Specifica una durata in secondi con un massimo di nove cifre frazionarie, terminate da "s". Esempio: "3,5 s". 1 secondo 5 minuti dal momento della creazione o dell'aggiornamento del cluster. Quando aggiorni un cluster, il nuovo valore deve essere maggiore di quello impostato in precedenza. Invia una richiesta cluster.patch con una durata vuota per annullare un valore idleDeleteTtl impostato in precedenza. 14 giorni
autoDeleteTime2 È il momento di iniziare a eliminare il cluster. Fornisci un timestamp nel formato "Zulu" UTC RFC 3339, preciso al nanosecondo. Esempio: "2014-10-02T15:01:23.045123456Z". 1 secondo 10 minuti dall'ora attuale. Quando aggiorni un cluster, la nuova data e l'ora devono essere successive a quelle impostate in precedenza. 14 giorni dall'ora attuale
autoDeleteTtl2 La durata dal momento dell'invio della richiesta di creazione o aggiornamento del cluster al momento in cui inizia l'eliminazione del cluster. Specifica una durata in secondi con un massimo di nove cifre frazionarie, terminate da "s". Esempio: "3,5 s". 1 secondo 10 minuti. Quando aggiorni un cluster, la nuova data e l'ora di eliminazione pianificata (ora di aggiornamento + nuova durata massima) devono essere successive a quella impostata in precedenza. Invia una richiesta cluster.patch con una durata vuota per annullare un valore autoDeleteTtl impostato in precedenza. 14 giorni

Console

  • Apri la pagina Crea un cluster di Dataproc, quindi seleziona il riquadro Personalizza cluster. Scorri verso il basso fino alla sezione Eliminazione pianificata, quindi seleziona le opzioni da applicare al cluster.

Visualizzazione delle impostazioni del cluster di eliminazione pianificata

Comando g-cloud

Puoi utilizzare il comando gcloud dataproc clusters list per confermare che l'eliminazione pianificata è abilitata in un cluster.

 gcloud dataproc clusters list \
     --region=region
...
NAME         WORKER_COUNT ... SCHEDULED_DELETE
cluster-id   number       ... enabled
...

Puoi utilizzare il comando gcloud dataproc clusters describe per verificare le impostazioni di eliminazione pianificata LifecycleConfig di un cluster.

gcloud dataproc clusters describe cluster-name \
    --region=region
...
lifecycleConfig:
  autoDeleteTime: '2018-11-28T19:33:48.146Z'
  idleDeleteTtl: 1800s
  idleStartTime: '2018-11-28T18:33:48.146Z'
...

autoDeleteTime e idleDeleteTtl sono i valori di configurazione dell'eliminazione pianificata precedentemente impostati dall'utente nel cluster. Dataproc genera il valore idleStartTime, ovvero l'ora di inizio di inattività del cluster più recente. Dataproc elimina il cluster se il cluster rimane inattivo a idleStartTime + idleDeleteTtl.

API REST

Puoi effettuare una richiesta clusters.list per confermare che l'eliminazione pianificata sia abilitata in un cluster.

Console

Puoi visualizzare le impostazioni di eliminazione pianificata del cluster selezionando il nome del cluster nella pagina Cluster di Dataproc nella console Google Cloud. Nella pagina dei dettagli del cluster, seleziona la scheda CONFIGURAZIONE. Scorri verso il basso l'elenco di configurazioni del cluster per visualizzare le impostazioni di eliminazione pianificata.