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、下载地址:
    http://kafka.apache.org/downloads.html
    
    清华镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/
    
    如:
        https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.4.0/kafka_2.13-2.4.0.tgz
        http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.4.0/kafka_2.13-2.4.0.tgz

    
2、安装
    由于Kafka依赖于Java JDK和zookeeper环境,所以首先应先按照顺序安装二者。

2.1、安装Java JDK(略过)
        注意:需要设置JAVA_HOME和PATH的系统环境变量
            如系统变量中增加变量名JAVA_HOME的变量值为D:\Net_Program\Net_Java
            PATH中增加%JAVA_HOME%\bin和%JAVA_HOME%\jre\bin

    
    2.2、安装zookeeper
        2.2.1、下载地址:
            官网地址:https://www.apache.org/dyn/closer.cgi/zookeeper/
            清华镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
            
            如:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.0/apache-zookeeper-3.6.0-bin.tar.gz

        
        2.2.2、安装
            将下载下来的Zookeeper压缩包解压到某目录下,如:D:\Net_Program\Net_Zookeeper
            目录说明:
                bin:操作kafka的可执行脚本,还包含windows下脚本
                config:配置文件所在目录
                libs:依赖库目录
                site-docs:
                
        2.2.3、修改配置文件
            将解压目录conf中的zoo_sample.cfg复制一份,并重命名为zoo.cfg(什么要复制一份重命名为zoo.cfg?因为项目启动时默认去加载conf路径下的zoo.cfg作为启动的配置文件)
            修改dataDir配置和增加dataLogDir配置,dataDir用于存放数据,dataLogDir用于存放日志,如下配置所示:

# 存放数据
dataDir=D:/Net_Program/Net_Zookeeper/data-file
# 存放日志
dataLogDir=D:/Net_Program/Net_Zookeeper/data-log


            或者使用Kafka内置的Zookeeper

# 数据文件
dataDir=D:/Net_Program/Net_Kafka/data-zookeeper/data-file
# 日志文件,为了更好的性能,通常将日志文件挂载在单独的磁盘分区
dataLogDir=D:/Net_Program/Net_Kafka/data-zookeeper/data-log

2.2.4、启动zookeeper
            以管理员身份运行CMD,定位到安装目录下的bin目录,执行命令zkServer即可
            或者手动双击zkServer.cmd

            我们也可以将其设置到系统变量,添加系统变量名ZOOKEEPER_HOME变量值为D:\Net_Program\Net_Zookeeper
            Path中增加%ZOOKEEPER_HOME%\bin,接下来我们以管理员身份运行CMD,直接输入zkServer即可启动服务

            使用nc -vz 192.168.3.200 2181命令可验证Zookeeper服务是否开启(需要电脑上安装netcat工具)
        2.2.5、将Zookeeper设置为Windows系统服务
            在这里我们使用NSSM工具将其设置为系统服务
            打开NSSM的win64的文件夹,如D:\Net_业务软件\Net_NSSM\nssm-2.24\win64,然后按住Shift+鼠标右键点击文件夹空白处,选择“在此处打开Powershell窗口”

            然后输入.\nssm install调出设置窗体
            在弹出的窗体中,Application选项卡中,
                Path:选择zkServer.cmd所在的路径,如D:\Net_Program\Net_Zookeeper\bin\zkServer.cmd
                Startup directory:选择Path后,Startup directory选择会自动填充
                Argument:为启动服务的参数,此处为空即可
                Service name:服务名称,如Zookeeper-Service
            设置完成后点击Install service按钮即完成,此时去查看系统服务有多了一个叫Zookeeper-Service的服务了


        
        注:
            zookeeper3.5.4版本需要JDK1.8以上版本支持
            虽然最新版的Kafka中已经内置了zookeeper,但是不建议使用,最好全新部署一套

            
        Zookeeper安装配置参考:https://blog.csdn.net/skh2015java/article/details/85014859

Zookeeper配置参数:https://blog.csdn.net/liereli/article/details/80039124


        
    2.3、安装Kafka
        将下载下来的Kafka压缩包解压到某目录下,如:D:\Net_Program\Net_Kafka
        
3、配置Kafka
    3.1、修改server.properties
        3.1.1、找到安装目录config中的server.properties文件,用记事本等工具打开,根据实际情况配置相关信息,如下所示对常用的配置进行修改或说明

# broker的全局唯一编号,不能重复
broker.id=0# 用来监听链接的端口,producer或consumer将在此端口建立连接
port=9092# 处理网络请求的线程数量
num.network.threads=3# 用来处理磁盘IO的线程数量
num.io.threads=8# 发送套接字的缓冲区大小
socket.send.buffer.bytes=102400# 接受套接字的缓冲区大小
socket.receive.buffer.bytes=102400# 请求套接字的缓冲区大小
socket.request.max.bytes=104857600# kafka消息存放的路径
log.dirs=D:/Net_Program/Net_Kafka/kafka-data# topic在当前broker上的分片个数
num.partitions=1# 用来恢复和清理data下数据的线程数量
num.recovery.threads.per.data.dir=1# 默认消息的最大持久化时间,168小时,7天
log.retention.hours=168# 日志文件中每个segment的大小,默认为1G
log.segment.bytes=1073741824# 周期性检查文件大小的时间
log.retention.check.interval.ms=300000# 日志清理是否打开,一般不用启用,启用的话可以提高性能
log.cleaner.enable=false# zookeeper集群的地址,可以是多个,多个之间用逗号分割hostname1:port1,hostname2:port2,hostname3:port3
zookeeper.connect=localhost:2181# zookeeper链接超时时间
zookeeper.connection.timeout.ms=6000# partion buffer中,消息的条数达到阈值,将触发flush到磁盘
#log.flush.interval.messages=10000# 消息buffer的时间,达到阈值,将触发flush到磁盘
#log.flush.interval.ms=1000############################# 其他 ############################## 消息保存的最大值20M
message.max.byte=20971520# kafka保存消息的副本数,如果一个副本失效了,另一个还可以继续提供服务
default.replication.factor=2# 取消息的最大直接数
replica.fetch.max.bytes=5242880

3.1.2、详细配置说明
            参考:
                apache kafka系列之server.properties配置文件参数说明:https://blog.csdn.net/lizhitao/article/details/25667831
                Kafka安装教程(详细过程):https://blog.csdn.net/Poppy_Evan/article/details/79415460
                
    3.2、启动Kafka服务
        以管理员身份运行CMD,定位到安装目录,执行如下命令

.\bin\windows\kafka-server-start.bat .\config\server.properties

我们也可以将其设置到系统变量,添加系统变量名KAFKA_HOME变量值为D:\Net_Program\Net_Kafka
        Path中增加%KAFKA_HOME%\bin和%KAFKA_HOME%\bin\windows,接下来我们以管理员身份运行CMD,输入如下命令即可启动服务

kafka-server-start D:\Net_Program\Net_Kafka\config\server.properties

        使用nc -vz 192.168.3.200 9092命令可验证Kafka服务是否开启(需要电脑上安装netcat工具)

        将Kafka设置为Windows系统服务
            在这里我们使用NSSM工具将其设置为系统服务
            打开NSSM的win64的文件夹,如D:\Net_业务软件\Net_NSSM\nssm-2.24\win64,然后按住Shift+鼠标右键点击文件夹空白处,选择“在此处打开Powershell窗口”

            然后输入.\nssm install调出设置窗体
            在弹出的窗体中,Application选项卡中,
                Path:选择kafka-server-start.bat所在的路径,如D:\Net_Program\Net_Kafka\bin\windows\kafka-server-start.bat
                Startup directory:选择Path后,Startup directory选择会自动填充
                Argument:为启动服务的参数,此处填写D:\Net_Program\Net_Kafka\config\server.properties
                Service name:服务名称,如Kafka-Service
            设置完成后点击Install service按钮即完成,此时去查看系统服务有多了一个叫Kafka-Service的服务了


        
    3.3、Kafka命令
        3.3.1、创建主题
            以管理员身份运行CMD,定位到安装目录,执行如下命令来创建一个名称为TestTheme1的主题

.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic TestTopic1

kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic TestTopic1

3.3.2、查看主题
            以管理员身份运行CMD,定位到安装目录,执行如下命来查看创建的主题

.\bin\windows\kafka-topics.bat --zookeeper localhost:2181 --list

kafka-topics --zookeeper localhost:2181 --list


                
        3.3.3、启动生产者producer
            以管理员身份运行CMD(新开一个CMD窗体,即模拟生产者窗体),定位到安装目录,执行如下命

.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic TestTopic1

kafka-console-producer --broker-list localhost:9092 --topic TestTopic1


                
        3.3.4、启动消费者consumer
            以管理员身份运行CMD(新开一个CMD窗体,即模拟消费者窗体),定位到安装目录,执行如下命
                .\bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic TestTopic1  →  该命令可能会报错:zookeeper is not a recognized option
                改用如下命令即可:

.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic TestTopic1 --from-beginning

kafka-console-consumer --bootstrap-server localhost:9092 --topic TestTopic1 --from-beginning


            
        3.3.5、测试发送和接收
            切换到刚才创建的生产者窗体,输入内容回车,然后即可在消费者窗体看到生产者发送过来的消息内容

4、Kafka可视化工具
    下载地址:http://www.kafkatool.com/download.html
    
    如:http://www.kafkatool.com/download2/kafkatool_64bit.exe

    
    下载完成安装即可
    
    设置:
        安装完成后,打开软件,Tools→Settings→Topics,将右侧的Default Content Types中的Key和Message选择为String,点击OK按钮

        也可以鼠标点击具体的主题,右侧的属性(Properties)面板中,Content Types中的Key和Message选择为String,然后点击Update和Refresh即可

    
    参考文章:
        kafka可视化客户端工具(Kafka Tool)的基本使用:https://www.cnblogs.com/frankdeng/p/9452982.html
        Kafka 可视化工具(Kafka Tool):https://www.cnblogs.com/miracle-luna/p/11299345.html

5、相关文档    Kafka安装与配置:https://blog.csdn.net/twypx/article/details/81257715
    
    Kafka配置SSL认证:https://blog.csdn.net/justry_deng/article/details/88383707
    SSL认证之相关证书的生成:https://blog.csdn.net/justry_deng/article/details/88383081
    
    Kafka分布式消息系统(SSL客户端):http://www.tracefact.net/tech/109.html
    证书密钥转换P12,JKS,CER,RFX,PEM:https://www.jianshu.com/p/dff237d75516

Kafka配置1--Windows环境安装和配置Kafka相关推荐

  1. MongoDB Windows环境安装及配置

    MongoDB一般安装 1.首先到官网(http://www.mongodb.org/downloads )下载合适的安装包,目前的最新版本为2.6 安装包有zip和msi格式的,这里推荐下载zip格 ...

  2. linux 环境安装配置,Linux相关环境安装与配置

    最近买了一个腾讯云的服务器,简单安装了下环境并记录一下 Java: 1.查找java相关的列表 yum -y list java* 2.安装JDK(这里是1.8.0版本) yum install ja ...

  3. CentOS 6.5系统使用yum方式安装LAMP环境和phpMyAdmin,mysql8.0.1/mysql5.7.22+centos7,windows mysql安装、配置...

    介绍如何在CentOs6.2下面使用YUM配置安装LAMP环境,一些兄弟也很喜欢使用编译的安装方法,个人觉得如果不是对服务器做定制,用yum安装稳定简单,何必去download&make&am ...

  4. tomcat11、tomcat10 安装配置(Windows环境)(详细图文)

    Tomcat11.tomcat10 安装配置(Windows环境)(详细图文) 目录 [ 一 ].在Windows 11 系统上安装 一.检查Java在Windows上的存在 二.下载安装Java J ...

  5. 九七的Windows内核驱动开发 WIN10-2004+VS2019+WDK驱动开发环境安装及配置

    WIN10-2004+VS2019+WDK驱动开发环境安装及配置 一.定义介绍   本节介绍如何在Windows10系统(2004版本,操作步骤中有如何查看版本)中安装VS2019及WDK开发包,并进 ...

  6. git 安装配置(windows环境)

    git 安装配置(windows环境) 1.下载地址:https://git-scm.com/downloads 注意:安装路径中不要存在中文,安装过程中都选择默认选项即可. 2.双击运行git-ba ...

  7. windows下安装及配置 golang 的Web框架Beego环境

    1.首先需要安装配置 go and git,参考如下链接 https://www.cnblogs.com/zjwgo/p/9356280.html 2.安装配置 beego 前提: 安装并配置成功go ...

  8. Windows Server2016 安装及配置DFS实现数据复制

    Windows Server2016 安装及配置DFS实现数据复制 我们今天主要介绍的是Windows Server2016 安装及配置DFS实现数据复制,那什么是DFS呢?DFS就是Microsof ...

  9. RabbitMQ消息队列之一:RabbitMQ的环境安装及配置

    RabbitMQ简介: MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们 ...

  10. Windows环境下Nginx配置本地虚拟域名和Nginx代理

    Windows环境下Nginx配置本地虚拟域名和Nginx代理 一.准备 (1) 进入 Nginx 安装目录,如:E:\GreenSofts\Nginx-1.21.4 (2) 检查当前目录下是否存在 ...

最新文章

  1. 高校选课成绩管理系统
  2. CentOS下yum源epel扩展源
  3. java.lang.OutOfMemoryError​异常解决方法
  4. python encode gbk_[转]Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
  5. (五)SpringBoot 能挣钱的几个项目!!!
  6. android音频杂音问题_Android 音视频去回声、降噪(Android音频采集及回音消除)(转)...
  7. nginx+memcache实现页面缓存应用
  8. 如何保持MacBook电池健康并延长其使用寿命?
  9. IDEA 创建类注释模板
  10. 舆情分析系统技术解决方案及作用
  11. PLC的ST语言转义字符列表
  12. 百度云 不限速 | 2019 最好用下载工具
  13. 2018,AI旗舰启程出发!自动化所全球AI邀请函
  14. 短期突击面试攻略,收offer如砍瓜切菜!!!
  15. Java解决下载--文件名乱码
  16. Web Framworks 的决斗
  17. Git与代码托管平台
  18. Socket TCP协议解决粘包、半包问题的三种解决方案
  19. 今年的互联网“寒潮”你躲过去了吗?
  20. zedboard教程

热门文章

  1. 利用WebUtil删除Cookies
  2. Asp.Net SignalR 集群会遇到的问题
  3. openresty 前端开发序 1
  4. 记录最近的几个bug
  5. 使用DotNet以来一直都有出现这样的问题
  6. 13.深入分布式缓存:从原理到实践 --- 缓存在社交网络Feed系统中的架构实践
  7. 16.淘宝的架构演化案例
  8. 47.使用外部 JavaScript 和 CSS(8)
  9. 63. Event button 事件属性
  10. 16. Magento模板及布局文件中引用Static Block的方法