Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何通过Cloudera Manager为Kafka启用Kerberos及使用

如何通过Cloudera Manager为Kafka启用Kerberos及使用

作者头像
Fayson
修改于 2018-04-01 11:22:56
修改于 2018-04-01 11:22:56
3.3K0
举报
文章被收录于专栏:Hadoop实操Hadoop实操

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

1.文档编写目的


CDH集群中启用了Kerberos认证,那么我们的Kafka集群能否与Kerberos认证服务集成呢?本篇文章主要讲述如何通过Cloudera Manager为Kafka集群启用Kerberos认证及客户端配置使用。

  • 内容概述

1.修改Kafka配置

2.配置客户端

3.客户端测试Producer和Consumer

  • 测试环境

1.RedHat7.2

2.CM和CDH版本为5.11.2

3.采用sudo权限的ec2-user用户

4.Kafka2.2.0

  • 前置条件

1.Kafka2.0.x或更高版本

2.Cloudera Manager5.5.3或更高版本

3.Kafka集群安装且正常运行

4.集群已启用Kerberos认证

5.Kafka未与Sentry集成

2.修改Kafka配置


1.登录Cloudera Manager进入Kafka服务,修改ssl.client.auth配置为none

2.Kafka启用Kerberos

3.修改security.inter.broker.protocol配置为SASL_PLAINTEXT

4.保存以上修改的配置后,回到主页根据提示重启Kafka Server

完成以上配置就可以为Kafka集群启用Kerberos认证。

3.配置客户端


1.创建jaas.conf文件

如果你先使用kinit初始化Kerberos账号,则jaas.conf配置文件内容如下:

KafkaClient{

com.sun.security.auth.module.Krb5LoginModule required

useTicketCache=true;

};

如果使用keytab文件初始化Kerberos账号,则jaas-keytab.conf配置文件内容如下:

root@ip-172-31-21-45ec2-user# vim jaas-keytab.conf

KafkaClient{

com.sun.security.auth.module.Krb5LoginModule required

useKeyTab=true

keyTab="/home/ec2-user/fayson.keytab"

principal="fayson@CLOUDERA.COM";

};

2.创建client.properties文件,内容如下

root@ip-172-31-21-45ec2-user# vim client.properties

security.protocol=SASL_PLAINTEXT

sasl.kerberos.service.name=kafka

4.客户端测试Producer和Consumer


1.设置KAFKA_OPTS环境变量

root@ip-172-31-21-45ec2-user# export KAFKA_OPTS="-Djava.security.auth.login.config=/home/ec2-user/jaas.conf"

或者

root@ip-172-31-21-45ec2-user# export KAFKA_OPTS="-Djava.security.auth.login.config=/home/ec2-user/jaas-keytab.conf"

如果使用jaas.conf文件设置环境变量则需要先使用kinit初始化Kerberos账号。

2.运行Kafka的Producer

root@ip-172-31-21-45ec2-user# kafka-console-producer--broker-list 172.31.21.45:9092 --topic test3 --producer.config client.properties

...

hello

world

3.运行Kafka的Consumer

root@ip-172-31-26-80ec2-user# export KAFKA_OPTS="-Djava.security.auth.login.config=/home/ec2-user/jaas.conf"

root@ip-172-31-26-80ec2-user# kafka-console-consumer--topic test3 --from-beginning --bootstrap-server 172.31.26.102:9092,172.31.21.45:9092,172.31.26.80:9092 --consumer.config client.properties

...

hello

world

5.总结


Kafka与CDH集群中的其它组件集成Kerberos稍有不同,需要做一些额外的配置。本篇文章主要讲述了如何启用Kerberos身份认证及客户配置使用,那么在代码开发中如何向已启用Kerberos认证的Kafka集群中生产和消费数据,Fayson在接下来的文章会做详细讲述。

参考文档:

https://www.cloudera.com/documentation/kafka/latest/topics/kafka_security.html#concept_lcn_4mm_s5

醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩的花! 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。


推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-10-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Kafka 服务器 PLAINTEXT 和 SASL_PLAINTEXT 配置 及 consumer/producer 脚本连接配置
更多安全配置,参见 https://kafka.apache.org/documentation/#security
rabbit_lei
2024/06/03
8250
0915-7.1.7-Kafka Connectors for SAP HANA测试
Kafka原生没有提供SAP HANA的Connector,GitHub开源项目Kafka Connectors for SAP提供了kafka与SAP之间的Connector,可实现定时全量或增量的拉取SAP HANA数据发送到Kafka。详细信息,参考GitHub:https://github.com/SAP/kafka-connect-sap/tree/master
Fayson
2024/04/10
4390
0915-7.1.7-Kafka Connectors for SAP HANA测试
0501-使用Python访问Kerberos环境下的Kafka(二)
在前面的文章Fayson介绍了一种Python访问Kerberos环境下Kafka的文章,参考《0500-使用Python2访问Kerberos环境下的Kafka》,本篇文章主要介绍另一种方式访问Kerberos环境下的Kafka。
Fayson
2019/11/28
1.8K0
如何通过CM升级Kafka0.11及Spark2.2
在前面的文章《CDH5.13和CM5.13的新功能》中Fayson介绍过Cloudera发布CDH5.13时,同时也发布了Kafka3.0版本(即社区0.11版),目前社区最新版本为1.0。由于Kafka3.0和Spark2.2需要JDK8的支持,所以在升级Kafka3.0和Spark2.2版本时必须先升级JDK版本,可以参考《如何将CDH集群JAVA升级至JDK8》和《如何将Kerberos环境下CDH集群JAVA升级至JDK8》,本文Fayson主要介绍在CDH集群中如何升级Kakfa3.0和Spark2.2。
Fayson
2018/03/29
1.8K0
如何通过CM升级Kafka0.11及Spark2.2
0502-CDSW中访问Kerberos环境下的Kafka
Fayson在前面的文章《0500-使用Python2访问Kerberos环境下的Kafka》和《0501-使用Python访问Kerberos环境下的Kafka(二)》中介绍了两种方式访问Kerberos环境下的Kafka。在前面文章的基础上Fayson介绍在CDSW访问Kerberos环境下的Kafka。
Fayson
2019/11/27
6940
Kerberos环境下删除ZooKeeper服务注册信息问题分析
在CDH集群中启用了Kerberos服务后,通过zookeeper-client登录Kerberos删除服务的注册信息时报“Authentication isnot valid”,具体操作及异常信息如下。Fayson这里已经使用fayson用户kinit后操作的,当然即使用hive的keytab文件kinit后也会报同样的错。
Fayson
2018/03/29
4.2K0
Kerberos环境下删除ZooKeeper服务注册信息问题分析
如何在Kerberos环境使用Flume采集Kafka数据并写入HDFS
注意:Fayson的github调整为:https://github.com/fayson/cdhproject,本文的代码在github中也能找到。
Fayson
2018/03/29
6.1K0
如何在Kerberos环境使用Flume采集Kafka数据并写入HDFS
0500-使用Python2访问Kerberos环境下的Kafka
Kafka支持多种客户端语言(C/C++、Go、Java、JMS、.NET、Python)。Fayson在前面多篇文章介绍了Java访问Kerberos和非Kerberos环境下的Kafka,参考《如何使用Java连接Kerberos的Kafka》。本篇文章Fayson主要介绍使用Python2访问Kerberos环境下的Kafka。在学习本篇文章内容前你还需要知道《如何通过Cloudera Manager为Kafka启用Kerberos及使用》。
Fayson
2019/11/27
1K0
Kafka SASL集群部署
在Kafka中,SASL机制包含三种,它们分别是Kerberos、PLAIN、SCRAM。以PLAIN认证为示例
857技术社区
2022/05/17
8370
0887-7.1.4-如何在CDP中为Kafka启用Kerberos认证及使用
1.文档编写目的 在CDP集群中启用了Kerberos认证,那么Kafka集群能否与Kerberos认证服务集成呢?本文主要讲述如何通过Cloudera Manager为Kafka集群启用Kerberos认证及客户端配置使用。 内容概述 1.修改Kafka配置 2.配置客户端 3.客户端测试Producer和Consumer 测试环境 1.RedHat7.6 2.CM版本7.3.1和CDP版本7.1.4 3.采用root用户 4.Kafka2.4.1 2.修改Kafka配置 1.登录Cloudera Man
Fayson
2022/08/26
1.2K0
0887-7.1.4-如何在CDP中为Kafka启用Kerberos认证及使用
Spark2Streaming读Kerberos环境的Kafka并写数据到Hive
在前面的文章Fayson介绍了一些关于Spark2Streaming的示例如《Spark2Streaming读Kerberos环境的Kafka并写数据到HBase》和《Spark2Streaming读Kerberos环境的Kafka并写数据到Kudu》,本篇文章Fayson主要介绍如何使用Spark2Streaming访问Kerberos环境的Kafka并将接收到的Kafka数据写入Hive.
Fayson
2018/08/03
3.8K1
Spark2Streaming读Kerberos环境的Kafka并写数据到Hive
0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用
Fayson在前面的文章介绍了《如何在CDH集群安装Kafka Manager》和《0542-6.1.0-非安全环境下Kafka管理工具Kafka Eagle安装使用》。Kafka-eagle支持Kerberos环境下的Kafka集群管理,本篇文章Fayson主要介绍在Kerberos环境下Kafka管理工具Kafka Eagle安装使用。
Fayson
2019/03/07
1.6K1
Spark2Streaming读Kerberos环境的Kafka并写数据到Kudu
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了一些关于SparkStreaming的示例《如何使用Spark Streaming读取HBase的数据并写入到HDFS》、《SparkStreaming读Kafka数据写HBase》和《SparkStreaming读Kafka数据写Kudu》以上文章
Fayson
2018/07/12
2.6K0
Spark2Streaming读Kerberos环境的Kafka并写数据到HBase
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了在Kerberos环境下《Spark2Streaming读Kerberos环境的Kafka并写数据到Kudu》,本篇文章Fayson主要介绍如何使用Spark2Streaming访问Kerberos环境的Kafka并将接收到的Kafka数据写入HBa
Fayson
2018/07/12
2.3K0
0766-6.3.3-如何实现Kafka跨网络访问
在使用Kafka时会遇到内外网的场景,即Kafka集群使用内网搭建,在内网和外网均有客户端需要消费Kafka的消息,同时在集群内由于使用内网环境通信,因此不必太过考虑通信的加密,所以在内网使用非安全的协议也能够通信,但对于外网环境出于安全考虑,只允许通过安全的协议访问Kafka集群,本文档介绍如何基于双网卡来配置Kafka。
Fayson
2020/05/16
3.6K0
配置客户端以安全连接到Kafka集群- Kerberos
这是有关Apache Kafka安全性的简短博客文章系列的第一部分。在本文中,我们将说明如何配置客户端以使用不同的身份验证机制对集群进行身份验证。
大数据杂货铺
2021/02/07
6K0
【Kafka SASL/SCRAM动态认证集群部署
目的:配置 SASL/PLAIN 验证,实现了对 Kafka 的权限控制。但 SASL/PLAIN 验证有一个问题:只能在 JAAS 文件 KafkaServer 中配置用户,一旦 Kafka 启动,无法动态新增用户。SASL/SCRAM 验证可以动态新增用户并分配权限。
857技术社区
2022/05/17
1.1K0
如何使用Sentry为Kafka赋权
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Sentry在CDH平台中定位为统一的授权框架,即所有的组件都要受Sentry的管理,当然也是为了方便用户的操作,一个入口为所有数据相关进行授权。Fayson在前面的文章中介绍了大量Sentry与Hive/Impala的集成文章,其实Sentry除了可以给Hive/Impala
Fayson
2018/07/12
3.8K1
第一章 Kafka 配置部署及SASL_PLAINTEXT安全认证
2.4、Zookeeper 修改启动脚本 bin/zookeeper-server-start.sh
用户5061135
2024/01/13
1.9K0
如何在Kerberos环境下使用Flume采集Kafka数据写入HBase
在前面的文章Fayson也介绍了一些关于Flume的文章《非Kerberos环境下Kafka数据到Flume进Hive表》、《如何使用Flume准实时建立Solr的全文索引》、《如何在Kerberos环境使用Flume采集Kafka数据并写入HDFS》、《如何使用Flume采集Kafka数据写入Kudu》和《如何使用Flume采集Kafka数据写入HBase》。本篇文章Fayson主要介绍在Kerberos的CDH集群中使用Flume采集Kafka数据写入HBase。 内容概述 1.环境准备 2.配置Fl
Fayson
2018/07/12
1.1K0
推荐阅读
相关推荐
Kafka 服务器 PLAINTEXT 和 SASL_PLAINTEXT 配置 及 consumer/producer 脚本连接配置
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档