原创

kafka学习笔记——安装配置(单例-linux)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lyhkmm/article/details/79525238

Linux安装环境

kafka入门原理:http://blog.csdn.net/lyhkmm/article/details/79528367

安装jdk

可以参考:http://blog.csdn.net/lyhkmm/article/details/79524712 已安装请忽略

安装zookeeper(可选)

       kafka启动需要使用注册中心zookeeper,实际项目情况会使用单独zookeeper(集群)。当然本地测试可以使用kafka自带的zookeeper。如果使用kafka自带的zookeeper,可以跳过此步骤,不用安装zookeeper。
1、创建zookeeper的安装目录
mkdir -p /usr/local/zookpper
2、进入到zookeeper的安装目录
cd /usr/local/zookpper
3、下载zookeeper的安装文件
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz
4、解压安装文件到当前目录下
tar -vzxf zookeeper-3.3.6.tar.gz
5、添加zookeeper的环境变量
vi /etc/profile
在文件最下方添加
export zookeeper_home=/usr/local/zookeeper/zookeeper-3.3.6
重新加载配置文件
source /etc/profile
6、进入zookeeper脚本目录,测试是否安装成功
cd /usr/local/zookeeper/zookeeper-3.3.6/bin/
执行脚本
./zkServer.sh start
7、出现如下表示安装成功

JMX enabled by default
Using config: /usr/local/zookeeper/zookeeper-3.3.6/bin/../conf/zoo.cfg
grep: /usr/local/zookeeper/zookeeper-3.3.6/bin/../conf/zoo.cfg: No such file or directory
Starting zookeeper ... STARTED

安装kafka

1、创建kafka的安装目录
mkdir -p /usr/local/kafka
2、进入到kafka的安装目录
cd /usr/local/kafka
3、下载安装文件
wget https://archive.apache.org/dist/kafka/0.8.0/kafka_2.8.0-0.8.0.tar.gz
4、解压
tar -zxvf kafka_2.8.0-0.8.0.tar.gz
5、配置kafka,进入配置文件目录
cd /usr/local/kafka/kafka_2.8.0-0.8.0/config
修改文件server.properties
vi server.properties
找到host.name,修改host.name为本地服务器地址,如下

# from java.net.InetAddress.getCanonicalHostName().
host.name=localhost

修改日志文件的目录(可以根据自己实际情况配置),如下

# A comma seperated list of directories under which to store log files
log.dirs=/usr/local/kafka/log/kafka

其他配置视情况修改
6、配置kafka下自带的zookeeper,如果使用单独的zookeeper,忽略此步骤
创建zookeeper目录
mkdir /usr/local/kafka/zookeeper
创建zookeeper日志目录
mkdir /usr/local/kafka/log/zookeeper
配置zookeeper,进入配置目录
cd /usr/local/kafka/kafka_2.8.0-0.8.0/config
vi zookeeper.properties

# the directory where the snapshot is stored.
dataDir=/usr/local/kafka/zookeeper
dataLogDir=/usr/local/kafka/log/zookeeper
# the port at which the clients will connect
clientPort=2181
# disable the per-ip limit on the number of connections since this is a non-production config
maxClientCnxns=0
tickTime=5000
initLimit=10

dataDir和dataLogDir可以依据自己建立的文件夹路径填写。
7、创建启动和关闭kafka脚本
创建kafka脚本
进入kafka的安装目录
cd /usr/local/kafka
新建启动脚本
vi kafkastart.sh

#启动kafka自带zookeeper后暂停3秒,如果使用单独的zookeeper,忽略此启动命令
/usr/local/kafka/kafka_2.8.0-0.8.0/bin/zookeeper-server-start.sh /usr/local/kafka/kafka_2.8.0-0.8.0/config/zookeeper.properties & sleep 3
#暂停3秒后再启动kafka
/usr/local/kafka/kafka_2.8.0-0.8.0/bin/kafka-server-start.sh /usr/local/kafka/kafka_2.8.0-0.8.0/config/server.properties &

创建关闭kafka脚本
vi kafkastop.sh

#关闭kafka自带zookeeper后暂停3秒,如果使用单独的zookeeper,忽略此启动命令
/usr/local/kafka/kafka_2.8.0-0.8.0/bin/zookeeper-server-stop.sh /usr/local/kafka/kafka_2.8.0-0.8.0/config & sleep 3
#关闭kafka
/usr/local/kafka/kafka_2.8.0-0.8.0/bin/kafka-server-stop.sh /usr/local/kafka/kafka_2.8.0-0.8.0/config/server.propertics &

添加脚本执行权限
chmod +x kafkastart.sh
chmod +x kafkastop.sh
8、测试kafka
创建主题
进入kafka的bin目录
cd /usr/local/kafka/kafka_2.8.0-0.8.0/bin
执行命令:
./kafka-create-topic.sh --partition 1 --replica 1 --zookeeper localhost:2181 --topic test
查看主题
./kafka-list-topic.sh --zookeeper localhost:2181
topic: test partition: 0 leader: 0 replicas: 0 isr: 0
启动producer
在/usr/local/kafka/kafka_2.8.0-0.8.0/bin目录下执行
./kafka-console-producer.sh broker-list localhost:9092 --topic test
开启另一个终端
也是在/usr/local/kafka/kafka_2.8.0-0.8.0/bin目录下执行
./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test
回到之前的终端,输入想发送的文字后按回车:
这里写图片描述
另一个终端就能输出之前发送的文字
这里写图片描述
终端1生产者下所输入的my kafka,在终端2下的消费者下显现,至此kafka的单机安装部署完成。
关闭kafka
进入kafka目录
cd /usr/local/kafka
执行关闭脚本
./kafkastop.sh
也可以用jps(Java Virtual Machine Process Status Too)查看kafka的进程pid,用kill -9 的方式杀死

Windows环境下

1、安装JDK参考:http://blog.csdn.net/lyhkmm/article/details/79524712 已安装请忽略
2、下载解压安装包文件 http://kafka.apache.org/downloads 这里解压至F:\kafka\kafka_2.12-2.1.0
3、运行zookeeper(kafka自带的)
       打开命令行,执行

F:\kafka\kafka_2.12-2.1.0\bin\windows\zookeeper-server-start.bat F:\kafka\kafka_2.12-2.1.0\config\zookeeper.properties

       这时大概率报错“找不到或无法加载主类 Files\Java\jdk1.8.0_171\lib\dt.jar;C:\Program”,不要紧张。修改kafka-run-class.bat中的179行,给%CLASSPATH%加上双引号即可,结果如下:

set COMMAND=%JAVA% %KAFKA_HEAP_OPTS% %KAFKA_JVM_PERFORMANCE_OPTS% %KAFKA_JMX_OPTS% 
%KAFKA_LOG4J_OPTS% -cp "%CLASSPATH%" %KAFKA_OPTS% %*

       再次执行运行命令,不要关闭这个窗口在这里插入图片描述
4、运行kafka,再打开新CMD窗口执行运行命令

F:\kafka\kafka_2.12-2.1.0\bin\windows\kafka-server-start.bat F:\kafka\kafka_2.12-2.1.0\config\server.properties

在这里插入图片描述

正文到此结束
Loading...