gpt4 book ai didi

hadoop - 如何在 Flink 独立集群上的 Flink 作业中使用两个 Kerberos key 表(用于 Kafka 和 Hadoop HDFS)?

转载 作者:行者123 更新时间:2023-12-03 17:33:39 25 4
gpt4 key购买 nike

问题

在服务器上运行的 Flink 独立集群上,我正在 Scala 中开发 Flink 流式传输作业。该作业使用来自 1 个以上 Kafka 主题的数据,(进行一些格式化)并将结果写入 HDFS。

Kafka 主题之一和 HDFS,它们都需要单独的 Kerberos 身份验证(因为它们属于完全不同的集群)。

我的问题是:

  • 是否可以(如果是,如何?)在服务器上运行的 Flink 集群上的 Flink 作业中使用两个 Kerberos key 表(一个用于 Kafka,另一个用于 HDFS)? (因此 Flink 作业可以同时从 Kafka 主题消费并写入 HDFS)
  • 如果不可能,当 Kafka 和 HDFS 都受 Kerberos 保护时,对于 Kafka-Flink-HDFS 数据流,什么是合理的解决方法?

  • 笔记
  • 我对这里提到的大多数技术都很陌生。
  • 如果 Flink 作业不需要消耗需要 Kerberos 的主题,它可以写入 HDFS。在这种情况下,我将HDFS的信息指定为security.kerberos.login.keytabsecurity.kerberos.login.principalflink-conf.yaml
  • 我正在使用 HDFS Connector provided from Flink写入 HDFS。
  • 可以在两个主体之间手动切换 Kerberos 身份验证。在 krb5.conf 的 [realm] 部分中文件,我指定了两个领域,一个用于 Kafka,另一个用于 HDFS。
    kinit -kt path/to/hdfs.keytab [principal: xxx@XXX.XXX...]kinit -kt path/to/kafka.keytab [principal: yyy@YYY.YYY...]

  • 环境
  • Flink (v1.4.2) https://ci.apache.org/projects/flink/flink-docs-stable/
  • Kafka 客户端 (v0.10.X)
  • HDFS(Hadoop 集群 HDP 2.6.X)

  • 感谢您的关注和反馈!

    最佳答案

    基于对 this very similar question 的回答和评论
    似乎没有明确的方法可以在单个 Flink 作业中使用两个凭据。
    有希望的方法或解决方法:

  • 创建信任
  • Kafka和HDFS同平台共装
  • 使用其他东西来弥补差距

  • 最后一点的例子:
    您可以使用 NiFi 或 Streams Replication Manager 之类的工具将数据从源 Kafka 带到集群中的 Kafka。 NiFi 更加模块化,并且可以为每个步骤配置 kerberos 凭据。之后,您将处于 Flink 可以处理的单一上下文中。
    全面披露:我是 Cloudera 的一名员工,是 NiFi、Kafka、HDFS、Streams Replication Manager 和最近 Flink 的插入力

    关于hadoop - 如何在 Flink 独立集群上的 Flink 作业中使用两个 Kerberos key 表(用于 Kafka 和 Hadoop HDFS)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50128932/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com