Présentation
Lorsque vous créez un cluster Dataproc, l'application Apache Hive et ses
composants, y compris le métastore Hive, sont installés sur le cluster, et
un mot de passe par défaut est défini dans le hive-site.xml fichier situé sur le
nœud maître du cluster.
Il est recommandé de spécifier votre propre mot de passe pour le métastore Hive pour atteindre les objectifs suivants :
Mesure de sécurité recommandée pour vous assurer de contrôler l'accès au métastore Hive local en fournissant votre propre mot de passe
Spécifier un mot de passe connu qui contrôle l'accès aux métastores Hive externes utilisés avec des bases de données externes partagées entre différents clusters
Définir le mot de passe du métastore Hive
Exécutez la commande Google Cloud CLI Dataproc clusters create suivante pour créer un cluster Dataproc et spécifier un mot de passe pour le métastore Hive.
gcloud dataproc clusters create cluster-name --properties="hive:javax.jdo.option.ConnectionPassword=HIVE_METASTORE_PASSWORD"
Remarques :
- Consultez Créer une clé pour créer une clé dans Cloud Key Management Service.
- Le mot de passe du métastore Hive n'est stocké que sur le ou les nœuds maîtres du cluster, et non sur les nœuds de calcul.
Pour en savoir plus sur la sécurisation des clusters Dataproc, consultez Bonnes pratiques de sécurité Dataproc.
Scénarios non compatibles
Dataproc n'est pas compatible avec les scénarios de métastore Hive suivants, que vous utilisiez le mot de passe par défaut ou un mot de passe fourni par l'utilisateur :
Vous utilisez un client de métastore intégré dans le pilote Spark exécuté en mode cluster, de sorte que les nœuds de calcul nécessitent des mots de passe Hive. Ce scénario peut entraîner des problèmes de connectivité avec la base de données du métastore, car la connexion n'est pas établie via le processus
HiveMetaStoreexécuté sur le nœud maître Dataproc.Vous désactivez le métastore Hive et
hive-server2pour utiliser votre propre base de données MySQL. Dans ce scénario, laspark.hadoop.javax.jdo.option.ConnectionURL=jdbc:mysql://CLUSTER_NAME-m/metastorepropriété n'a aucun effet.