Crear y proteger un clúster de metastore de Hive

Información general

Cuando creas un clúster de Dataproc, la aplicación Apache Hive y sus componentes, incluido Hive Metastore, se instalan en el clúster y se establece una contraseña predeterminada en el archivo hive-site.xml, que se encuentra en el nodo maestro del clúster.

Se recomienda especificar tu propia contraseña de metastore de Hive para conseguir los siguientes objetivos:

  • Como medida de seguridad recomendada para asegurarte de que controlas el acceso al almacén de metadatos de Hive local proporcionando tu propia contraseña

  • Para especificar una contraseña conocida que controle el acceso a metastores de Hive externos que se usen con bases de datos externas compartidas entre diferentes clústeres

Definir la contraseña del almacén de metadatos de Hive

Ejecuta el siguiente comando Google Cloud CLI Dataproc clusters create para crear un clúster de Dataproc y especificar una contraseña de metastore de Hive.

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

Notas:

  • Consulta Crear una clave para crear una clave en Cloud Key Management Service.
  • La contraseña del metastore de Hive solo se almacena en los nodos maestros del clúster, no en los nodos de trabajo.

Para obtener más información sobre cómo proteger los clústeres de Dataproc, consulta las prácticas recomendadas de seguridad de Dataproc.

Situaciones no admitidas

Dataproc no admite los siguientes casos de almacén de metadatos de Hive, independientemente de si usas la contraseña predeterminada o una proporcionada por el usuario:

  • Utilizas un cliente de metastore insertado en el controlador de Spark que se ejecuta en el modo de clúster, de forma que los nodos de trabajador requieren contraseñas de Hive. Esta situación puede provocar problemas de conectividad con la base de datos del metastore, ya que la conexión no se realiza a través del proceso HiveMetaStore que se ejecuta en el nodo maestro de Dataproc.

  • Desactiva Hive Metastore y hive-server2 para usar tu propia base de datos MySQL. En este caso, la propiedad spark.hadoop.javax.jdo.option.ConnectionURL=jdbc:mysql://CLUSTER_NAME-m/metastore no tiene ningún efecto.