我们目前在docker容器中使用Confluent HDFS Sink Connector平台将数据从Kafka(单独的Kafka集群)写入HDFS(单独的Hadoop集群)。默认情况下,连接器平台使用 root 用户和 wheel 组将数据写入HDFS。 如何配置连接器以使用特定的hadoop用户/组?我需要在docker中设置一个环境变量吗? 感谢。
答案 0 :(得分:0)
Docker容器中的Java进程以root身份运行。
您需要使用自己的用户帐户创建自己的容器,或者以其他方式将Connect Workers作为不同的Unix帐户运行。
您可以尝试设置HADOOP_IDENT_USER
或HADOOP_USER_NAME
环境变量,但我认为这些只是由Hadoop脚本提取,而不是Java API
请注意,如果您不使用Kerberized群集,Hadoop中的用户帐户并不重要