Crea e metti al sicuro un cluster Metastore Hive

Panoramica

Quando crei un cluster Dataproc, l'applicazione Apache Hive e i relativi componenti, tra cui il metastore Hive, vengono installati sul cluster e viene impostata una password predefinita nel file hive-site.xml situato sul nodo master del cluster.

Ti consigliamo di specificare la tua password metastore Hive per svolgere seguenti obiettivi:

  • Come misura di sicurezza delle best practice per garantire il controllo dell'accesso ai metastore Hive locale fornendo la tua password

  • Per specificare una password nota che controlla l'accesso ai metastore Hive esterni utilizzati con database esterni condivisi tra diversi cluster

Imposta la password del metastore Hive

Esegui il seguente comando Google Cloud CLI Dataproc clusters create per creare un cluster Dataproc e specificare una password per il metastore Hive.

gcloud dataproc clusters create cluster-name
 --properties="hive:javax.jdo.option.ConnectionPassword=HIVE_METASTORE_PASSWORD"

Note:

  • Consulta Creare una chiave per creare una chiave in Cloud Key Management Service.
  • La password del metastore Hive viene archiviata solo sui nodi master del cluster, non sui nodi worker.

Per ulteriori informazioni sulla protezione dei cluster Dataproc, consulta le best practice per la sicurezza di Dataproc.

Scenari non supportati

Dataproc non supporta i seguenti scenari del metastore Hive, indipendentemente dall'utilizzo della password predefinita o di una fornita dall'utente per il metastore Hive:

  • Utilizzi un client metastore incorporato nel driver Spark in esecuzione in modalità cluster, in modo che i nodi worker richiedano le password Hive. Questo scenario può causare problemi di connettività con il database del metastore poiché la connessione non viene effettuata tramite il processo HiveMetaStore in esecuzione sul nodo principale Dataproc.

  • Disattivi il metastore Hive e hive-server2 per utilizzare il tuo database MySQL. In questo scenario, la proprietà spark.hadoop.javax.jdo.option.ConnectionURL=jdbc:mysql://CLUSTER_NAME-m/metastore non ha alcun effetto.