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数据

Flink记录一次Flink消费kafka写入Elastic在kerberos认证的情况下不消费问题

FLinlkFlink小坑之kerberos动态认证

FlinkFlink跨集群访问开启Kerberos认证的Kafka