Creazione di un cluster Hadoop
Puoi utilizzare Dataproc per creare una o più istanze di Compute Engine che possono connettersi a un'istanza Bigtable ed eseguire job Hadoop. Questa pagina spiega come utilizzare Dataproc per automatizzare le seguenti attività:
- Installazione di Hadoop e del client HBase per Java
- Configurazione di Hadoop e Bigtable
- Impostare gli ambiti di autorizzazione corretti per Bigtable
Dopo aver creato il cluster Dataproc, puoi utilizzarlo per eseguire job Hadoop che leggono e scrivono dati da e verso Bigtable.
Questa pagina presuppone che tu abbia già familiarità con Hadoop. Per ulteriori informazioni su Dataproc, consulta la documentazione di Dataproc.
Prima di iniziare
Prima di iniziare, devi completare le seguenti attività:
- Crea un'istanza Bigtable. Assicurati di annotare l'ID progetto e l'ID istanza Bigtable.
-
Enable the Cloud Bigtable API, Cloud Bigtable Admin API, Dataproc, and Cloud Storage JSON APIs.
- Verifica che il tuo account utente abbia un ruolo che includa l'autorizzazione
storage.objects.get
.Apri la pagina IAM nella console Google Cloud .
- Installa Google Cloud CLI. Per informazioni dettagliate, consulta le istruzioni di configurazione di gcloud CLI.
-
Installa Apache Maven, che viene utilizzato per eseguire un job Hadoop di esempio.
Su Debian GNU/Linux o Ubuntu, esegui questo comando:
sudo apt-get install maven
Su RedHat Enterprise Linux o CentOS, esegui questo comando:
sudo yum install maven
Su macOS, installa Homebrew, poi esegui il seguente comando:
brew install maven
- Clona il repository GitHub
GoogleCloudPlatform/cloud-bigtable-examples,
che contiene un esempio di job Hadoop che utilizza Bigtable:
git clone https://github.com/GoogleCloudPlatform/cloud-bigtable-examples.git
Crea un bucket Cloud Storage
Dataproc utilizza un bucket Cloud Storage per archiviare i file temporanei. Per evitare conflitti di denominazione dei file, crea un nuovo bucket per Dataproc.
I nomi dei bucket Cloud Storage devono essere univoci a livello globale in tutti i bucket. Scegli un nome del bucket che probabilmente sarà disponibile, ad esempio un nome che incorpori il nome del tuo Google Cloud progetto.
Dopo aver scelto un nome, utilizza il seguente comando per creare un nuovo bucket, sostituendo i valori tra parentesi con quelli appropriati:
gcloud storage buckets create gs://[BUCKET_NAME] --project=[PROJECT_ID]
Crea il cluster Dataproc
Esegui il comando seguente per creare un cluster Dataproc con quattro nodi di lavoro, sostituendo i valori tra parentesi con quelli appropriati:
gcloud dataproc clusters create [DATAPROC_CLUSTER_NAME] --bucket [BUCKET_NAME] \
--region [region] --num-workers 4 --master-machine-type n1-standard-4 \
--worker-machine-type n1-standard-4
Consulta la documentazione di gcloud dataproc clusters create
per le impostazioni aggiuntive che puoi configurare. Se ricevi un messaggio di errore che
include il testo Insufficient 'CPUS' quota
, prova a impostare il flag --num-workers
su un valore inferiore.
Testa il cluster Dataproc
Dopo aver configurato il cluster Dataproc, puoi testarlo eseguendo un job Hadoop di esempio che conteggia il numero di volte in cui una parola viene visualizzata in un file di testo. Il job di esempio utilizza Bigtable per archiviare i risultati dell'operazione. Puoi utilizzare questo job di esempio come riferimento quando configuri i tuoi job Hadoop.
Esegui il job Hadoop di esempio
- Nella directory in cui hai clonato il repository GitHub, passa alla directory
java/dataproc-wordcount
. Esegui questo comando per creare il progetto, sostituendo i valori tra parentesi con i valori appropriati:
mvn clean package -Dbigtable.projectID=[PROJECT_ID] \ -Dbigtable.instanceID=[BIGTABLE_INSTANCE_ID]
Esegui il comando seguente per avviare il job Hadoop, sostituendo i valori tra parentesi con quelli appropriati:
./cluster.sh start [DATAPROC_CLUSTER_NAME]
Al termine del job, viene visualizzato il nome della tabella di output, ovvero la parola WordCount
seguita da un trattino e da un numero univoco:
Output table is: WordCount-1234567890
Verifica i risultati del job Hadoop
(Facoltativo) Dopo aver eseguito il job Hadoop, puoi utilizzare la
CLI cbt
per
verificare che il job sia stato eseguito correttamente:
-
Apri una finestra del terminale in Cloud Shell.
- Installa la CLI
cbt
:gcloud components update
gcloud components install cbt
- Scansiona la tabella di output per visualizzare i risultati del job Hadoop, sostituendo
[TABLE_NAME]
con il nome della tabella di output:cbt -instance [BIGTABLE_INSTANCE_ID] read [TABLE_NAME]
Ora che hai verificato che il cluster sia configurato correttamente, puoi utilizzarlo per eseguire i tuoi job Hadoop.
Elimina il cluster Dataproc
Quando hai finito di utilizzare il cluster Dataproc, esegui il comando
seguente per arrestare ed eliminare il cluster, sostituendo [DATAPROC_CLUSTER_NAME]
con il nome del tuo cluster Dataproc:
gcloud dataproc clusters delete [DATAPROC_CLUSTER_NAME]
Passaggi successivi
- Scopri di più su Dataproc.
- Inizia a utilizzare il client HBase per Java.