Eliminazione pianificata dei cluster

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

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

Calcolo del tempo di inattività del cluster

La dataproc:dataproc.cluster-ttl.consider-yarn-activity proprietà cluster influisce sul calcolo del tempo di inattività del cluster nel seguente modo:

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

Utilizzare l'eliminazione pianificata dei cluster

Comando g-cloud

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

BandieraDescrizioneGranularità più fineValore minimoValore massimo
--max-idle1La durata dal momento in cui il cluster entra nello stato inattivo al momento in cui inizia l'eliminazione. Specifica la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (secondi, minuti, ore, giorni, rispettivamente). Esempi: "30m" o "1d" (30 minuti o 1 giorno dal momento in cui il cluster diventa inattivo).1 secondo5 minuti14 giorni
--expiration-time2L'ora di inizio dell'eliminazione del cluster nel formato data e 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'ora di scadenza di 13:21:48 nel fuso orario UTC-8:00.1 secondo10 minuti dopo l'ora corrente 14 giorni dopo l'ora corrente
--max-age2La durata dal momento dell'invio della richiesta di creazione del cluster al momento dell'inizio dell'eliminazione del cluster. Specifica la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (secondi, minuti, ore, giorni, rispettivamente). Esempi: "30m" (tra 30 minuti); "1d" (tra 1 giorno).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 cambiare 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).

BandieraDescrizioneGranularità più fineValore minimoValore massimo
--max-idle1La durata dal momento in cui il cluster entra nello stato inattivo al momento in cui inizia l'eliminazione. Specifica la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (secondi, minuti, ore, giorni, rispettivamente). Esempi: "30m" o "1d" (30 minuti o 1 giorno dal momento in cui il cluster diventa inattivo).1 secondo5 minuti14 giorni
--no-max-idleAnnullamento dell'eliminazione automatica del cluster in base alla durata di inattività del cluster impostata in precedenza dal flag max-idlenon applicabilenon applicabilenon applicabile
--expiration-time2L'ora di inizio dell'eliminazione del cluster nel formato data e ora ISO 8601. Un modo semplice per generare la data e l'ora nel formato corretto è utilizzare il Generatore di timestamp. Ad esempio, "2017-08-22T13:31:48-08:00" specifica un'ora di scadenza di 13:21:48 nel fuso orario UTC-8:00.1 secondo10 minuti dall'ora corrente e la nuova ora non deve essere precedente a quella impostata in precedenza.14 giorni dopo l'ora corrente
--max-age2La durata dal momento dell'invio della richiesta di aggiornamento del cluster al momento dell'inizio dell'eliminazione del cluster. Specifica la durata nel formato IntegerUnit, dove l'unità può essere "s, m, h, d" (secondi, minuti, ore, giorni, rispettivamente). Esempi: "30m" (tra 30 minuti); "1d" (tra 1 giorno).1 secondo10 minuti e l'ora di eliminazione pianificata aggiornata (ora di aggiornamento + nuova durata dell'età massima) non deve essere precedente all'ora di eliminazione del cluster impostata in precedenza.14 giorni
--no-max-ageAnnullamento dell'eliminazione automatica del cluster in base all'età massima del cluster impostata in precedenza dal flag max-age o expiration-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 del cluster impostando i seguenti campi ClusterLifecycleConfig nella richiesta API cluster.create o cluster.patch.

Bandiera Descrizione Granularità più fine Valore minimo Valore massimo
idleDeleteTtl1 La durata dal momento in cui il cluster entra nello stato inattivo al momento in cui inizia l'eliminazione. Fornisci una durata in secondi con un massimo di nove cifre frazionarie, terminata 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 L'ora di inizio dell'eliminazione del cluster. Fornisci un timestamp in formato "Zulu" UTC RFC 3339, preciso al nanosecondo. Esempio: "2014-10-02T15:01:23.045123456Z". 1 secondo 10 minuti dopo l'ora corrente. Quando aggiorni un cluster, la nuova ora deve essere successiva a quella impostata in precedenza. 14 giorni dopo l'ora corrente
autoDeleteTtl2 La durata dal momento dell'invio della richiesta di creazione o aggiornamento del cluster al momento in cui inizia l'eliminazione del cluster. Fornisci una durata in secondi con un massimo di nove cifre frazionarie, terminata da "s". Esempio: "3,5 s". 1 secondo 10 minuti. Quando aggiorni un cluster, la nuova data/ora di eliminazione pianificata (data/ora di aggiornamento + nuova durata della massima età) deve essere successiva a quella impostata in precedenza per il cluster. Invia una richiesta cluster.patch con una durata vuota per annullare un valore autoDeleteTtl impostato in precedenza. 14 giorni

Console

  • Apri la pagina Dataproc Crea un cluster e 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 per l'eliminazione pianificata

Comando g-cloud

Puoi utilizzare il comando gcloud dataproc clusters list per verificare che l'eliminazione programmata sia abilitata per 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 controllare 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 impostati in precedenza dall'utente sul cluster. Dataproc genera il valore idleStartTime, che corrisponde all'ora di inizio dell'inattività del cluster più recente. Dataproc elimina il cluster se rimane inattivo per idleStartTime + idleDeleteTtl.

API REST

Puoi effettuare una richiesta clusters.list per verificare che per un cluster sia stata attivata l'eliminazione pianificata.

Console

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