码迷,mamicode.com
首页 > 其他好文 > 详细

storm-kafka 访问带 kerberos 权限的 kafka

时间:2017-08-29 16:28:33      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:config   top   root   lib   logs   权限   5.0   kerberos   col   

之前项目里面 pom 里面的 storm-kafka 的依赖版本是 1.0.1 或 1.1.0 这两个版本的 KafkaSpout 的  SpoutConfig 都是无法设置 securityProtocol 的。

如果强行设置会报 Exception in thread "main" java.lang.NoSuchFieldError: securityProtocol

而 HDP 2.5.0.0-1245 里面的 “定制版”。 pom 如下:

<dependency>
    <groupId>org.apache.storm</groupId>
    <artifactId>storm-kafka</artifactId>
    <version>1.0.1.2.5.0.0-1245</version>
</dependency>

当然,此版本号过于特殊, maven central 里面是找不到的。

在这 http://repo.spring.io/libs-release/org/apache/storm/storm-kafka/1.0.1.2.5.0.0-1245/

在 pom 里面配置一下就可以了,或者把这个地址加到 nexus 私服上。

    <repositories>
        <repository>
            <id>spring-lib-release</id>
            <url>http://repo.spring.io/libs-release/</url>
        </repository>
    </repositories>

 

其它的就简单了。

下面是整体的 dependency

<dependencies>
        <dependency>
            <groupId>org.apache.kafka</groupId>
            <artifactId>kafka-clients</artifactId>
            <version>0.10.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.kafka</groupId>
            <artifactId>kafka_2.10</artifactId>
            <version>0.10.0.1</version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.storm</groupId>
            <artifactId>storm-kafka</artifactId>
            <version>1.0.1.2.5.0.0-1245</version>
        </dependency>
        <dependency>
            <groupId>org.apache.storm</groupId>
            <artifactId>storm-core</artifactId>
            <version>1.1.0</version>
            <scope>${storm.scope}</scope>
        </dependency>
    </dependencies>

核心代码,2333:

 SpoutConfig spoutConfig = new SpoutConfig(hosts, topic, zkRoot, clientId);
        spoutConfig.securityProtocol = "SASL_PLAINTEXT";

 

storm-kafka 访问带 kerberos 权限的 kafka

标签:config   top   root   lib   logs   权限   5.0   kerberos   col   

原文地址:http://www.cnblogs.com/kischn/p/7448848.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!