Kafka配置5--Windows下配置Kafka的集群+SASL+SSL

        根据前4篇文章,我们可以从零开始搭建Kafka的环境,包括集群、SASL和SSL证书等配置,这篇文章就不做详细的说明了,详细说明请查看如下4篇文章,该文主要是以最简单的说明方式将这一套完整的配置展示给大家。

Kafka配置1--Windows环境安装和配置Kafka

Kafka配置2--Windows下配置Kafka的SASL-PLAIN身份验证

Kafka配置3--Windows下配置Kafka集群

Kafka配置4--Windows下配置Kafka的SSL证书

Kafka配置5--Windows下配置Kafka的集群+SASL+SSL

Kafka配置6--Windows下设置和增加SASL用户或用户权限

        完整的配置流程如下所示


1、Zookeeper
    1.1、修改zoo.cfg配置

authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jaasLoginRenew=3600000

# 存放数据
dataDir=D:/Net_Program/Net_Zookeeper/data-file
# 存放日志
dataLogDir=D:/Net_Program/Net_Zookeeper/data-log
# 监听端口
clientPort=2181
# 配置集群服务
server.1=192.168.2.200:2881:3881
server.2=192.168.2.200:2882:3882
server.3=192.168.2.200:2883:3883

    上述是针对一台机子的设置,如果是第二台、第三台……,依次修改dataDir、dataLogDir、clientPort这三个参数即可

    1.2、创建myid文件
        在D:\Net_Program\Net_Zookeeper\data-file中新建名称为myid的文件(没有后缀),内容为1
        在D:\Net_Program\Net_Zookeeper2\data-file中新建名称为myid的文件(没有后缀),内容为2
        在D:\Net_Program\Net_Zookeeper3\data-file中新建名称为myid的文件(没有后缀),内容为3

        如果有更多Zookeeper配置,按照以上规则依次创建即可

    1.3、新建zk_server_jaas.conf
        在D:\Net_Program\Net_KafkaConfig文件夹(用于存放Zookeeper和Kafka的账号和密码配置文件)新建zk_server_jaas.conf文件,内容如下:

KafkaServer {
	org.apache.kafka.common.security.plain.PlainLoginModule required
	username="admin"
	password="admin123456"
	user_admin="admin123456"
	user_quber="quber123456"
	user_quber1="quber123456"
	user_quber2="quber123456"
	user_scyjTestUser1="scyj&cdkx"
	user_scyjTestUser2="scyj&cdkx"
	user_scyjTestUser3="scyj&cdkx";
};

    1.4、修改zkEnv.cmd
        在Zookeeper安装目录bin中,打开zkEnv.cmd进行编辑,在该文件中set ZOO_LOG4J_PROP=INFO,CONSOLE下一行加入如下配置:

set SERVER_JVMFLAGS=-Djava.security.auth.login.config=D:/Net_Program/Net_KafkaConfig/zk_server_jaas.conf

        同理,如果有第二台、第三台……,都需要修改上述配置

    1.5、导入相关jar
        在Kafka安装目录libs中分别找到如下jar,复制它们到Zookeeper安装目录的lib中即可
            kafka-clients-2.4.0.jar
            lz4-java-1.6.0.jar
            slf4j-api-1.7.28.jar
            slf4j-log4j12-1.7.28.jar
            snappy-java-1.1.7.3.jar

2、Kafka
    2.1、修改server.properties配置

# kafka消息存放的路径
log.dirs=D:/Net_Program/Net_Kafka/kafka-data

listeners=SASL_SSL://192.168.2.200:9092
advertised.listeners=SASL_SSL://192.168.2.200:9092
# 使用的认证协议
security.inter.broker.protocol=SASL_SSL
# SASL机制
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
# 完成身份验证的类
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
# 如果没有找到ACL(访问控制列表)配置,则允许任何操作。
#allow.everyone.if.no.acl.found=true
super.users=User:admin

# 唯一标识
broker.id=0
host.name=192.168.2.200
# 监听端口
port=9092
# 对应着3台Zookeeper的IP地址和端口
zookeeper.connect=192.168.2.200:2181,192.168.2.200:2182,192.168.2.200:2183

ssl.keystore.location=D:/Net_Program/Net_KafkaSsl/kafka1.keystore.jks
ssl.keystore.password=qubernet
ssl.key.password=qubernet
ssl.truststore.location=D:/Net_Program/Net_KafkaSsl/ca.truststore.jks
ssl.truststore.password=qubernet
ssl.keystore.type=JKS
ssl.truststore.type=JKS
ssl.client.auth=required
ssl.secure.random.implementation=SHA1PRNG
security.inter.broker.protocol=SASL_SSL

        上述是针对一台机子的设置,如果是第二台、第三台……,依次修改log.dirs、listeners、advertised.listeners、broker.id、port这五个参数即可

    2.2、新建kafka_server_jaas.conf
        在D:\Net_Program\Net_KafkaConfig文件夹(用于存放Zookeeper和Kafka的账号和密码配置文件)新建kafka_server_jaas.conf文件,内容如下:

KafkaServer {
	org.apache.kafka.common.security.plain.PlainLoginModule required
	username="admin"
	password="admin123456"
	user_admin="admin123456"
	user_quber="quber123456"
	user_quber1="quber123456"
	user_quber2="quber123456"
	user_scyjTestUser1="scyj&cdkx"
	user_scyjTestUser2="scyj&cdkx"
	user_scyjTestUser3="scyj&cdkx";
};

    2.3、修改kafka-server-start.bat
        在Kafka安装目录bin\windows中,打开kafka-server-start.bat进行编辑,在该文件中SetLocal关键字下一行加入如下配置:

set KAFKA_OPTS=-Djava.security.auth.login.config=D:/Net_Program/Net_KafkaConfig/kafka_server_jaas.conf

        同理,如果有第二台、第三台……,都需要修改上述配置

猜你喜欢

转载自blog.csdn.net/qubernet/article/details/105295639