Hive-Metastore-Cluster erstellen und sichern

Übersicht

Wenn Sie einen Managed Service for Apache Spark-Cluster erstellen, werden die Apache Hive-Anwendung und ihre Komponenten, einschließlich des Hive-Metastore, im Cluster installiert. In der Datei hive-site.xml auf dem Clustermasterknoten wird ein Standardpasswort festgelegt.

Es wird empfohlen, ein eigenes Hive-Metastore-Passwort anzugeben, um die folgenden Ziele zu erreichen:

  • Als bewährte Sicherheitsmaßnahme, um den Zugriff auf den lokalen Hive-Metastore zu steuern, indem Sie ein eigenes Passwort angeben

  • Um ein bekanntes Passwort anzugeben, mit dem der Zugriff auf externe Hive-Metastores gesteuert wird, die mit externen Datenbanken verwendet werden, die von verschiedenen Clustern gemeinsam genutzt werden

Hive-Metastore-Passwort festlegen

Führen Sie den folgenden Google Cloud CLI-Befehl zum Erstellen von Managed Service for Apache Spark-Clustern aus, um einen Managed Service for Apache Spark-Cluster zu erstellen und ein Hive Metastore-Passwort anzugeben.

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

Hinweise:

  • Unter Schlüssel erstellen erfahren Sie, wie Sie einen Schlüssel in Cloud Key Management Service erstellen.
  • Das Hive-Metastore-Passwort wird nur auf den Clustermaster-Knoten und nicht auf den Worker-Knoten gespeichert.

Weitere Informationen zum Sichern von Managed Service for Apache Spark-Clustern finden Sie unter Best Practices für die Sicherheit von Managed Service for Apache Spark.

Nicht unterstützte Szenarien

Managed Service for Apache Spark unterstützt die folgenden Hive-Metastore-Szenarien nicht, unabhängig davon, ob Sie das Standardpasswort oder ein vom Nutzer angegebenes Hive-Metastore-Passwort verwenden:

  • Sie verwenden einen eingebetteten Metastore-Client im Spark-Treiber, der im Clustermodus ausgeführt wird, sodass die Worker-Knoten Hive-Passwörter benötigen. In diesem Szenario können Verbindungsprobleme mit der Metastore-Datenbank auftreten, da die Verbindung nicht über den HiveMetaStore-Prozess hergestellt wird, der auf dem Masterknoten des Managed Service for Apache Spark ausgeführt wird.

  • Sie deaktivieren den Hive-Metastore und hive-server2, um Ihre eigene MySQL-Datenbank zu verwenden. In diesem Szenario hat die spark.hadoop.javax.jdo.option.ConnectionURL=jdbc:mysql://CLUSTER_NAME-m/metastore Property keine Auswirkungen.