Fork me on GitHub

提交Spark任务到kerberos安全集群

目录

  • 背景
  • 第一部分 常用快捷键
  • 参考文献及资料

背景

在生产Hadoop集群上,通常配置了kerberos认证服务,需要通过认证后,才能和集群中其他服务进行交互。例如像安全集群提交Spark任务。

第一部分 实现方式1

1
2
3
UserGroupInformation.setConfiguration(SparkHadoopUtil.get().newConfiguration(sparkConfiguration));      
Credentials credentials = UserGroupInformation.getLoginUser().getCredentials();
SparkHadoopUtil.get().addCurrentUserCredentials(credentials);

第二部分 实现方式2

1
2
3
4
5
SparkConf sparkConfiguration = new SparkConf();
sparkConfiguration.set("spark.hadoop.hadoop.security.authentication", "kerberos");
sparkConfiguration.set("spark.hadoop.hadoop.security.authorization", "true");
sparkConfiguration.set("spark.hadoop.dfs.namenode.kerberos.principal","hdfs/_HOST@EXAMPLE.COM");
sparkConfiguration.set("spark.hadoop.yarn.resourcemanager.principal", "yarn/<resource-manager-host-name>@EXAMPLE.COM");

参考文献及资料

0%