Visão geral
Ao criar um cluster do Serviço Gerenciado para Apache Spark, o aplicativo Apache Hive e os componentes dele, incluindo o metastore do Hive, são instalados no cluster, e uma senha padrão é definida no arquivo hive-site.xml localizado no nó mestre do cluster.
É recomendável especificar sua própria senha do metastore do Hive para alcançar as seguintes metas:
Como uma prática recomendada de segurança para garantir o controle do acesso ao metastore do Hive local, fornecendo sua própria senha.
Para especificar uma senha conhecida que controla o acesso a metastores externos do Hive usados com bancos de dados externos compartilhados entre clusters diferentes.
Definir a senha do metastore do Hive
Execute o comando de criação de clusters do Serviço Gerenciado para Apache Spark da CLI do Google Cloud a seguir para criar um cluster do Serviço Gerenciado para Apache Spark e especificar uma senha do metastore do Hive.
gcloud dataproc clusters create cluster-name --properties="hive:javax.jdo.option.ConnectionPassword=HIVE_METASTORE_PASSWORD"
Observações:
- Consulte Criar uma chave para criar uma chave no Cloud Key Management Service.
- A senha do metastore do Hive é armazenada apenas nos nós mestre do cluster, não nos nós de worker.
Para mais informações sobre como proteger clusters do Serviço Gerenciado para Apache Spark, consulte Práticas recomendadas de segurança do Serviço Gerenciado para Apache Spark.
Cenários não compatíveis
O Serviço Gerenciado para Apache Spark não oferece suporte aos seguintes cenários de metastore do Hive, independentemente de você usar a senha padrão ou uma fornecida pelo usuário:
Você usa um cliente de metastore incorporado no driver do Spark em execução no modo de cluster, para que os nós de worker exijam senhas do Hive. Esse cenário pode causar problemas de conectividade com o banco de dados do metastore, já que a conexão não é feita pelo processo
HiveMetaStoreem execução no nó mestre do Serviço Gerenciado para Apache Spark.Você desativa o metastore do Hive e o
hive-server2para usar seu próprio banco de dados MySQL. Nesse cenário, aspark.hadoop.javax.jdo.option.ConnectionURL=jdbc:mysql://CLUSTER_NAME-m/metastorepropriedade não tem efeito.