1:安装JDK、html
2:安装Zookeeperjava
下载地址:https://zookeeper.apache.org/releases.html
apache
下载后,解压放在目录D:\bigdata(本文所用的目录)下,关于zookeeper以及kafka的目录,路径中最好不要出现空格,好比D:\Program Files,尽可能别用,运行脚本时会有问题。windows
①进入zookeeper的相关设置所在的文件目录,例如本文的:D:\bigdata\zookeeper-3.4.10\conf服务器
②将"zoo_sample.cfg"重命名为"zoo.cfg"编辑器
③打开zoo.cfg(至于使用什么编辑器,根据本身喜爱选便可),找到并编辑:ide
dataDir=/tmp/zookeeper to D:/bigdata/zookeeper-3.4.10/data或 D:\\bigdata\\zookeeper-3.4.10\\data(路径仅为示例,具体可根据须要配置)
ui
这里注意,路径要么是"/"分割,要么是转义字符"\\",这样会生成正确的路径(层级,子目录)。this
④与配置jre相似,在系统环境变量中添加:spa
a.系统变量中添加ZOOKEEPER_HOME=D:\bigdata\zookeeper-3.4.10
b.编辑系统变量中的path变量,增长%ZOOKEEPER_HOME%\bin
⑤在zoo.cfg文件中修改默认的Zookeeper端口(默认端口2181)
这是本文最终的zoo.cfg文件的内容:
⑥打开cmd窗口,输入zkserver,运行Zookeeper,运行结果以下:
Zookeeper已经安装完成,已在2181端口运行。
下载地址:http://kafka.apache.org/downloads
要下载Binary downloads这个类型,不要下载源文件,这种方便使用。下载后,解压放在D:\bigdata目录下。
①进入kafka配置文件所在目录,D:\bigdata\kafka_2.11-0.9.0.1\config
②编辑文件"server.properties",找到并编辑:
log.dirs=/tmp/kafka-logs to log.dirs=D:/bigdata/kafka_2.11-0.9.0.1/kafka-logs 或者 D:\\bigdata\\kafka_2.11-0.9.0.1\\kafka-logs
一样注意:路径要么是"/"分割,要么是转义字符"\\",这样会生成正确的路径(层级,子目录)。错误路径状况可自行尝试,文件夹名为这种形式:bigdatakafka_2.11-0.9.0.1kafka-logs
③在server.properties文件中,zookeeper.connect=localhost:2181表明kafka所链接的zookeeper所在的服务器IP以及端口,可根据须要更改。本文在同一台机器上使用,故不用修改。
④启动kafka:
在命令行中输入:.\bin\windows\kafka-server-start.bat .\config\server.properties 回车。
kafka会按照默认配置,在9092端口上运行,并链接zookeeper的默认端口2181。
(1)
# 添加下面的配置 ip和端口改为本身须要
listeners=SASL_PLAINTEXT://xx.xx.xx.xx:8123
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
(2)
在config目录添加kafka_server_jaas.conf 文件 此文件是服务端 设置用户名 和密码
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="kafka"
password="kafkapswd"
user_kafka="kafkapswd"
user_mooc="moocpswd";
};
其中 Kafka 定义了关键字KafkaServer字段用于指定服务端登陆配置。该配置经过org.apache.
org.apache.kafka.common.security.plain.PlainLoginModule由指定采用PLAIN 机制, 定义了两个用户, 用户通
过usemame 和password 指定该代理与集群其余代理初始化链接的用户名和密码, 经过“ user_ "
为前缀后接用户名方式建立链接代理的用户名和密码,例如, user_mooc = "moocpswd” 是指
用户名为mooc, 密码为moocpswd
(3)
在config目录添加kafka_client_jaas.conf
KafkaClient {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="mooc"
password="moocpswd";
};
(4)
修改目录/usr/local/kafka_2.12-1.1.1/bin 下的 kafka-server-start.sh文件 。 个人作法也是复制出来一份 ,而后进行修改
kafka-server-start-saal.sh 添加如下文件
if [ "x$KAFKA_OPTS" ]; then
export KAFKA_OPTS="-Djava.security.auth.login.config=/usr/local/kafka_2.12-1.1.1/config/kafka_server_jaas.conf"
fi
(5)
修改目录/usr/local/kafka_2.12-1.1.1/bin 下的 kafka-console-producer.sh 和 kafka-console-consumer.sh 文件
也是 都各自复制一份 在复制上面进行修改
if [ "x$KAFKA_OPTS" ]; then export KAFKA_OPTS="-Djava.security.auth.login.config=/usr/local/kafka_2.12-1.1.1/config/kafka_client_jaas.conf"fi