安装包下载
下载安装包
wget https://archive.apache.org/dist/kafka/2.2.0/kafka_2.12-2.2.0.tgz
# 解压
tar -zxf kafka_2.12-2.2.0.tgz
# 复制kafka
cp -rp kafka_2.12-2.2.0 kafka-broker-1
新建数据和日志路径
新建kafka目录
cd /usr/local/kafka
mkdir -p kafka/001/log
mkdir -p kafka/002/log
mkdir -p kafka/003/log
新建zookeeper目录
cd /usr/local/kafka
mkdir -p zookeeper/001/log
mkdir -p zookeeper/002/log
mkdir -p zookeeper/003/log
mkdir -p zookeeper/001/data
mkdir -p zookeeper/002/data
mkdir -p zookeeper/003/data
# 新建myid
cat 1 > zookeeper/001/data/myid
cat 2 > zookeeper/002/data/myid
cat 3 > zookeeper/003/data/myid
修改配置文件
第一个broker(路径:/usr/local/kafka/kafka-broker-1/config)
新增jaas.conf
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="admin"
password="admin"
user_admin="admin";
};
新增zk_jaas.conf
Server {
org.apache.zookeeper.server.auth.DigestLoginModule required
username="admin"
password="admin"
user_admin="admin";
};
Client {
org.apache.zookeeper.server.auth.DigestLoginModule required
username="admin"
password="admin";
};
修改zookeeper配置文件
zookeeper.properties
# 数据文件与日志文件
dataDir=/usr/local/kafka/zookeeper/001/data
dataLogDir=/usr/local/kafka/zookeeper/001/log
# 端口
clientPort=2181
# 服务端口,第一个是给客户端提供服务端口,后面一个是内部通讯端口,例如选举leader
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889
# SASL认证
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
jaasLoginRenew=3600000
requireClientAuthScheme=sasl
zookeeper.sasl.client=true
修改zookeeper启动命令
zookeeper-server-start.sh
# 加入export这一行
export KAFKA_OPTS="-Djava.security.auth.login.config=/usr/local/kafka/kafka-broker-1/config/zk_jaas.conf ${KAFKA_OPTS}"
exec $base_dir/kafka-run-class.sh $EXTRA_ARGS org.apache.zookeeper.server.quoru