Configurazione del cluster Dataproc

In Cloud Data Fusion, la configurazione del cluster si riferisce alla definizione Le pipeline di elaborazione dati utilizzano risorse di calcolo durante l'esecuzione di Spark su Dataproc. In questa pagina vengono descritti i principali approcci a e la configurazione del cluster.

Cluster temporanei predefiniti (consigliato)

L'utilizzo dei cluster predefiniti è l'approccio consigliato per pipeline di Cloud Data Fusion.

  • Cloud Data Fusion esegue automaticamente il provisioning e la gestione Cluster Dataproc per l'esecuzione di ogni pipeline. Crea all'inizio dell'esecuzione della pipeline e poi lo elimina dopo dell'esecuzione della pipeline.
  • Vantaggi dei cluster temporanei:
    • Semplicità: non è necessario configurare o gestire manualmente in un cluster Kubernetes.
    • Convenienza: paghi solo per le risorse utilizzate durante dell'esecuzione della pipeline.

Per regolare i cluster e ottimizzare le prestazioni, vedi Dimensioni dei cluster.

Cluster statici (per scenari specifici)

Nei seguenti scenari, puoi utilizzare cluster statici:

  • Pipeline a lunga esecuzione: per pipeline in esecuzione continua o per per periodi prolungati, un cluster statico può essere più conveniente creando e interrompendo ripetutamente i cluster temporanei.
  • Gestione centralizzata dei cluster: se la tua organizzazione richiede un controllo centralizzato sui criteri di creazione e gestione dei cluster, i cluster possono essere utilizzati insieme a strumenti come Terraform.
  • Ora di creazione del cluster: il tempo necessario per creare un nuovo cluster. per ogni pipeline è proibitivo per il tuo caso d'uso.

Tuttavia, i cluster statici richiedono una configurazione più manuale e prevedono la gestione il ciclo di vita del cluster.

Per utilizzare un cluster statico, devi impostare quanto segue proprietà sul cluster Dataproc:

dataproc:dataproc.conscrypt.provider.enable=false

Opzioni di configurazione per i cluster statici

Se scegli di usare cluster statici, Cloud Data Fusion offre di configurazione per i seguenti aspetti:

  • Tipo di macchina worker: specifica il tipo di macchina virtuale per il worker. nodi nel tuo cluster. Questo determina le vCPU e la memoria disponibili per per ciascun worker.
  • Numero di worker: definisci il numero iniziale di nodi worker nel tuo in un cluster Kubernetes. Dataproc potrebbe comunque scalare automaticamente questo numero, in base a carico di lavoro.
  • Zona: seleziona la zona Google Cloud del cluster. La località può influire la località dei dati e le prestazioni della rete.
  • Configurazioni aggiuntive: puoi configurare opzioni avanzate per il tuo cluster statico, ad esempio le impostazioni di prerilascio, le impostazioni di rete diverse azioni di inizializzazione.

Best practice

Quando crei un cluster statico per le pipeline, usa quanto segue configurazioni.

Parametri Descrizione
yarn.nodemanager.delete.debug-delay-sec Conserva i log YARN.
Valore consigliato: 86400 (equivalente a un giorno)
yarn.nodemanager.pmem-check-enabled Consente a YARN di controllare i limiti di memoria fisica e di terminare i container se vanno oltre la memoria fisica.
Valore consigliato: false
yarn.nodemanager.vmem-check-enabled Consente a YARN di verificare i limiti di memoria virtuale e di terminare i container se vanno oltre la memoria fisica.
Valore consigliato: false.

Per ulteriori informazioni, consulta Eseguire una pipeline su un cluster Dataproc esistente.

Riutilizzo dei cluster

Puoi riutilizzare i cluster Dataproc tra le esecuzioni per migliorare di elaborazione. Il riutilizzo dei cluster viene implementato in un modello simile alla connessione o il pooling di thread. Qualsiasi cluster viene mantenuto attivo per al termine dell'esecuzione. Quando viene avviata una nuova esecuzione, prova a trovare un cluster inattivo disponibile che corrisponde alla configurazione del profilo di computing. Se ne esiste uno, verrà usato, altrimenti verrà avviato un nuovo cluster.

Considerazioni sul riutilizzo dei cluster

  • I cluster non vengono condivisi. Simile al normale cluster temporaneo di provisioning, un cluster esegue una singola pipeline eseguita alla volta. R viene riutilizzato solo se è inattivo.
  • Se abiliti il riutilizzo del cluster per tutte le esecuzioni, il numero necessario i cluster per elaborare tutte le tue esecuzioni verranno creati in base alle esigenze. Simile al provisioner di Dataproc temporaneo, non c'è controllo diretto il numero di cluster creati. Puoi comunque utilizzare i preventivi di Google Cloud per gestire le risorse. Ad esempio, se esegui 100 esecuzioni con 7 le esecuzioni parallele, avrai fino a 7 cluster in un determinato momento.
  • I cluster vengono riutilizzati tra diverse pipeline non appena queste pipeline usano lo stesso profilo e condividono le stesse impostazioni di profilo. Se profilo viene utilizzata la personalizzazione, i cluster saranno comunque riutilizzati, ma solo sono esattamente le stesse, incluse tutte le impostazioni del cluster come l'etichettatura dei cluster.

  • Quando il riutilizzo dei cluster è abilitato, esistono due considerazioni principali sui costi:

    • Vengono utilizzate meno risorse per l'avvio e l'inizializzazione del cluster.
    • Vengono utilizzate più risorse per fare in modo che i cluster rimangano inattivi tra la pipeline e dopo l'ultima esecuzione della pipeline.

Sebbene sia difficile prevedere l'effetto sui costi del riutilizzo dei cluster, puoi impiegare una per ottenere il massimo risparmio. La strategia consiste nell'identificare un percorso fondamentale pipeline concatenate e abilita il riutilizzo del cluster per questo percorso critico. Questo potrebbe garantire che il cluster venga riutilizzato immediatamente, senza sprecare il tempo di inattività e in termini di prestazioni.

Abilita riutilizzo del cluster

Nella sezione Configurazione Compute della configurazione della pipeline di cui è stato eseguito il deployment o quando creando un nuovo profilo di computing:

  • Abilita Ignora eliminazione cluster.
  • Il tempo di inattività massimo è il tempo fino al quale un cluster attende la pipeline successiva per riutilizzarlo. Il tempo di inattività massimo predefinito è 30 minuti. Per il tempo di inattività massimo, valuta il costo rispetto alla disponibilità del cluster per il riutilizzo. Più alto è il valore di Tempo di inattività massimo, maggiore sarà il numero di cluster inattivi e pronti per l'esecuzione.

Risoluzione dei problemi: compatibilità delle versioni

Problema: la versione del tuo ambiente Cloud Data Fusion potrebbe non essere compatibile con la versione del cluster Dataproc.

Consigliato: esegui l'upgrade alla versione più recente di Cloud Data Fusion e utilizzare una delle versioni di Dataproc supportate.

Le versioni precedenti di Cloud Data Fusion sono compatibili solo con versioni non supportate di Dataproc. Dataproc non fornisce aggiornamenti né assistenza per i cluster creati con queste versioni. Sebbene sia possibile continuare a eseguire un cluster è stata creata con una versione non supportata, consigliamo di sostituirla con una creato con un versione supportata.

Versione Cloud Data Fusion Versione Dataproc
6.10 e versioni successive 2,1, 2,0 *
6,9 2,1, 2,0 e 1,5 *
6,7-6,8 2,0, 1,5*
6,4-6,6 2,0 *, 1,3 **
6,1-6,3 1,3**

* Le versioni 6.4 e successive di Cloud Data Fusion sono disponibili compatibile con di Dataproc supportate. A meno che non siano specifiche funzionalità del sistema operativo sono necessari, la prassi consigliata è di specificare Versione immagine major.minor.
Per specificare la versione del sistema operativo utilizzata nel cluster Dataproc, deve essere compatibile con uno dei carichi di lavoro Dataproc supportati per Cloud Data Fusion nella tabella precedente.
.

** Le versioni di Cloud Data Fusion dalla 6.1 alla 6.6 sono compatibile con Dataproc versione 1.3 non supportata.

Passaggi successivi