kafka单机部署


一.环境准备

当前环境:centos7.3一台
软件版本:kafka_2.12
部署目录:/usr/local/kafka
启动端口:9092
配置文件:/usr/local/kafka/config/server.properties

yum依赖
yum install java-1.8.0-openjdk

需要部署zookeeper单点

二.安装

1.下载kafka包
wget http://mirrors.hust.edu.cn/apache/kafka/2.1.0/kafka_2.12-2.1.0.tgz

2.解压并移动,然后创建日志目录
tar zxvf kafka_2.12-0.10.2.1.tgz
mv kafka_2.12-0.10.2.1 /usr/local/kafka
mkdir /var/log/kafka

3.修改配置文件,将最后面的zookeeper地址修改
vim /usr/local/kafka/config/server.properties

  1. #连接zookeeper地址端口
  2. zookeeper.connect=127.0.0.1:2181

三.使用验证

启动
/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties

检查
netstat -unltp | grep 9092


一.环境准备

当前环境:centos7.3三台
软件版本:kafka_2.12
部署目录:/usr/local/kafka
启动端口:9092
配置文件:/usr/local/kafka/config/server.properties

yum依赖(3台同时操作)
yum install java-1.8.0-openjdk

需要部署zookeeper集群

二.安装

1.下载kafka包(3台节点都执行)
wget http://mirror.bit.edu.cn/apache/kafka/0.10.2.1/kafka_2.12-0.10.2.1.tgz

2.解压并移动,然后创建日志目录(3台节点都执行)
tar zxvf kafka_2.12-0.10.2.1.tgz
mv kafka_2.12-0.10.2.1 /usr/local/kafka
mkdir /var/log/kafka

3.修改配置文件(3台同时操作,需要更改的地方不一样)
vim /usr/local/kafka/config/server.properties

  1. #此为第一台,第二台为2 第三台为3
  2. broker.id=1
  3. # Switch to enable topic deletion or not, default value is false
  4. delete.topic.enable=true
  5. #本机开启端口和监听端口
  6. advertised.host.name=192.168.1.189
  7. # The number of threads handling network requests
  8. num.network.threads=3
  9. # The number of threads doing disk I/O
  10. num.io.threads=8
  11. # The send buffer (SO_SNDBUF) used by the socket server
  12. socket.send.buffer.bytes=102400
  13. # The receive buffer (SO_RCVBUF) used by the socket server
  14. socket.receive.buffer.bytes=102400
  15. # The maximum size of a request that the socket server will accept (protection against OOM)
  16. socket.request.max.bytes=104857600
  17. #日志目录
  18. log.dirs=/var/log/kafka
  19. #开启10个分区
  20. num.partitions=10
  21. #kafka保存消息的副本数
  22. default.replication.factor=3
  23. # The number of threads per data directory to be used for log recovery at startup and flushing at shutdown.
  24. # This value is recommended to be increased for installations with data dirs located in RAID array.
  25. num.recovery.threads.per.data.dir=1
  26. #持久化时间
  27. log.retention.hours=48
  28. # The maximum size of a log segment file. When this size is reached a new log segment will be created.
  29. log.segment.bytes=1073741824
  30. # to the retention policies
  31. log.retention.check.interval.ms=300000
  32. #连接zookeeper地址端口
  33. zookeeper.connect=192.168.1.189:2181,192.168.1.190:2181,192.168.1.191:2181
  34. # Timeout in ms for connecting to zookeeper
  35. zookeeper.connection.timeout.ms=6000

三.使用验证

启动(3台都需要启动)
/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties

检查
netstat -unltp | grep 9092

一.基本操作

1.启动kafka
bin/kafka-server-start.sh -daemon config/server.properties

2.关闭kafka
bin/kafka-server-stop.sh

3.查看kafka topic是否支持集群,没反应就是正确
bin/kafka-topics.sh --describe --zookeeper 1.1.1.1:2181,1.1.1.2:2181,1.1.1.3:2181 --topic MyTopic

4.查看当前zookerrper下的kafka集群所有的topic
bin/kafka-topics.sh --list --zookeeper 1.1.1.1:2181

5.详细查看topic
bin/kafka-topics.sh --describe --zookeeper 1.1.1.1:2181 --topic topic名字

6.创建一个topic,副本备份数1个,分区数1个
bin/kafka-topics.sh --create --zookeeper 1.1.1.1:2181 --replication-factor 1 --partitions 1 --topic topic名字

7.删除一个topic
bin/kafka-topics.sh --zookeeper 1.1.1.1:2181 --delete --topic topic名字

8.改变集群模式为主主,切换主从到主主模式,解决主从模式下,从从选举时间问题
bin/kafka-preferred-replica-election.sh --zookeeper 1.1.1.1:2181

二.生产消费测试

以 sync 模式启动一个producer,info.test是topic名
bin/kafka-console-producer.sh --broker-list 1.1.1.1:9092,1.1.1.2:9093,1.1.1.3:9094 --sync --topic info.test

然后,输入以下内容:
Hello, world!

启动一个 consumer,在另一个终端运行:
bin/kafka-console-consumer.sh --zookeeper 1.1.1.1:2181 --topic info.test --from-beginning

观察输出,你会看到下面内容:
Hello, world!

kafka集群部署以及单机部署的更多相关文章

  1. kafka集群监控之kafka-manager部署(kafka-manager的进程为:ProdServerStart)

    kafka集群监控之kafka-manager部署(ProdServerStart) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 雅虎官网GitHub项目:https://git ...

  2. 即将上线的Kafka 集群(用CM部署的)无法使用“--bootstrap-server”进行消费,怎么破?

    即将上线的Kafka 集群(用CM部署的)无法使用“--bootstrap-server”进行消费,怎么破? 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.报错:org.a ...

  3. kafka集群管理工具kafka-manager部署安装

    一.kafka-manager 简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很 ...

  4. Kafka集群的安装和部署

    一.Kafka的下载与解压 http://kafka.apache.org/downloads.html下载kafka_2.11-1.1.1.tgz.gz并解压到/home/jun下 [jun@mas ...

  5. CentOS 7部署Kafka和Kafka集群

    CentOS 7部署Kafka和Kafka集群 注意事项 需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止. 准备工作: 安装java并设置java环境变量,在`/etc/prof ...

  6. 4 kafka集群部署及kafka生产者java客户端编程 + kafka消费者java客户端编程

    本博文的主要内容有   kafka的单机模式部署 kafka的分布式模式部署 生产者java客户端编程 消费者java客户端编程 运行kafka ,需要依赖 zookeeper,你可以使用已有的 zo ...

  7. Docker部署zookeeper集群和kafka集群,实现互联

    本文介绍在单机上通过docker部署zookeeper集群和kafka集群的可操作方案. 0.准备工作 创建zk目录,在该目录下创建生成zookeeper集群和kafka集群的yml文件,以及用于在该 ...

  8. Kafka集群部署

    一. 关于kafka Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键 ...

  9. kafka集群和zookeeper集群的部署,kafka的java代码示例

    来自:http://doc.okbase.net/QING____/archive/19447.html 也可参考: http://blog.csdn.net/21aspnet/article/det ...

随机推荐

  1. Hive使用过程中踩过的坑

    hive启动时错误1 Cannot execute statement:impossible to write to binary long since BINLOG_FORMAT = STATEME ...

  2. Seata 动态配置订阅与降级实现原理

    Seata 的动态降级需要结合配置中心的动态配置订阅功能.动态配置订阅,即通过配置中心监听订阅,根据需要读取已更新的缓存值,ZK.Apollo.Nacos 等第三方配置中心都有现成的监听器可实现动态刷 ...

  3. MySQL/MariaDB数据库的函数

      MySQL/MariaDB数据库的函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. MySQL/MariaDB数据库的函数分为系统函数和用户自定义函数(user-define ...

  4. 正则爬取京东商品信息并打包成.exe可执行程序。

    本文爬取内容,输入要搜索的关键字可自动爬取京东网站上相关商品的店铺名称,商品名称,价格,爬取100页(共100页) 代码如下: import requests import re # 请求头 head ...

  5. 本地电脑视频播放器推荐PotPlayer、KMPlayer

    链接:https://pan.baidu.com/s/1aSfBFUtEm_XzDU2HGKDkQw 提取码:7z0d  

  6. js数组操作 求最大值,最小值,正序、倒叙大小值排序,去重复

    var arr = [1,5,2,56,12,34,21,3,5] Math.min.apply({},arr) Math.max.apply({},arr) arr.sort((m,n)=>m ...

  7. cors劫持用户凭证任意登陆

    漏洞作者:rcoil 挖洞过程无意中看到一个数据包,响应包中包含有Access-Control-Allow-Origin这个字段,然后就随手尝试看看有没有CORS漏洞!结果如图 再尝试 发现如下图! ...

  8. SpringCloud微服务

    SpringCloud SpringCloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.负载均衡.微代理.事件总线.全局锁.决策竞选.分布式会话等等.它运行 ...

  9. 用 ThreadPoolExecutor/ThreadPoolTaskExecutor 线程池技术提高系统吞吐量(附带线程池参数详解和使用注意事项)

    1.概述 在Java中,我们一般通过集成Thread类和实现Runnnable接口,调用线程的start()方法实现线程的启动.但如果并发的数量很多,而且每个线程都是执行很短的时间便结束了,那样频繁的 ...

  10. learing java NIO 之 ReadFile

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...