Kafka SCRAM 动态认证授权配置实践

Kafka 使用 JAAS(Java Authentication and Authorization Service)来实现 SASL 认证授权。我们这里通过使用 Kafka 提供的 SCRAM 方式实现动态认证授权的配置,动态认证授权的好处非常直接,不用根据实际需求修改各种配置文件添加账号及授权,可以像操作数据库服务器一样,通过命令行就能实现认证授权的管理。 准备工作 操作系统: 我们使用 CentOS 系统,系统版本是 CentOS-7.9。 我们使用默认的单机安装方式,ZooKeeper 是内置在 Kakfa 安装包里面的,所以不需要单独下载。如果希望单独安装,可以自行准备。 为了方便操作,保证使用 ZooKeeper 的可访问性,这里直接把防火墙关闭掉: systemctl stop firewalld 下载软件: wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz wget https://archive.apache.org/dist/kafka/3.3.1/kafka_2.13-3.3.1.tgz 解压缩包: tar xzvf jdk-17_linux-x64_bin.tar.gz tar kafka_2.13-3.3.1.tgz cd kafka_2.13-3.3.1 JDK 配置这里就不累述了。 SCRAM 动态认证授权配置 基于 SCRAM 的

Kafka+Storm+HDFS整合实践

在基于Hadoop平台的很多应用场景中,我们需要对数据进行离线和实时分析,离线分析可以很容易地借助于Hive来实现统计分析,但是对于实时的需求Hive就不合适了。实时应用场景可以使用Storm,它是一个实时处理系统,它为实时处理类应用提供了一个计算模型,可以很容易地进行编程处理。为了统一离线和实时计算,一般情况下,我们都希望将离线和实时计算的数据源的集合统一起来作为输入,然后将数据的流向分别经由实时系统和离线分析系统,分别进行分析处理,这时我们可以考虑将数据源(如使用Flume收集日志)直接连接一个消息中间件,如Kafka,可以整合Flume+Kafka,Flume作为消息的Producer,生产的消息数据(日志数据、业务请求数据等等)发布到Kafka中,然后通过订阅的方式,使用Storm的Topology作为消息的Consumer,在Storm集群中分别进行如下两个需求场景的处理: 直接使用Storm的Topology对数据进行实时分析处理 整合Storm+HDFS,将消息处理后写入HDFS进行离线分析处理 实时处理,只要开发满足业务需要的Topology即可,不做过多说明。这里,我们主要从安装配置K