Flink kafka kerberos的配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flink kafka kerberos的配置相关的知识,希望对你有一定的参考价值。
参考技术A Flink消费集成kerberos认证的kafka集群时,需要做一些配置才可以正常执行。Flink版本:1.8;kafka版本:2.0.1;Flink模式:Standalone
//指示是否从 Kerberos ticket 缓存中读取
security.kerberos.login.use-ticket-cache: false1
//Kerberos 密钥表文件的绝对路径
security.kerberos.login.keytab: /data/home/keytab/flink.keytab
//认证主体名称
security.kerberos.login.principal: flink@data.com
//Kerberos登陆contexts
security.kerberos.login.contexts: Client,KafkaClient
val properties: Properties =new Properties()
properties.setProperty("bootstrap.servers","broker:9092")
properties.setProperty("group.id","testKafka")
properties.setProperty("security.protocol","SASL_PLAINTEXT")
properties.setProperty("sasl.mechanism","GSSAPI")
properties.setProperty("sasl.kerberos.service.name","kafka")
consumer =new FlinkKafkaConsumer[String]("flink",new SimpleStringSchema(), properties)
参数说明 :security.protocol
运行参数可以配置为PLAINTEXT(可不配置)/SASL_PLAINTEXT/SSL/SASL_SSL四种协议,分别对应Fusion Insight Kafka集群的21005/21007/21008/21009端口。 如果配置了SASL,则必须配置sasl.kerberos.service.name为kafka,并在conf/flink-conf.yaml中配置security.kerberos.login相关配置项。如果配置了SSL,则必须配置ssl.truststore.location和ssl.truststore.password,前者表示truststore的位置,后者表示truststore密码。
以上是关于Flink kafka kerberos的配置的主要内容,如果未能解决你的问题,请参考以下文章
Flink访问带kerberos认证的kafka: Can‘t get Master Kerberos principal for use as renewer
如何在 Flink 独立集群上的 Flink 作业中使用两个 Kerberos 密钥表(用于 Kafka 和 Hadoop HDFS)?
flink 问题总结(5)如何读取Kerberos认证的hadoop数据