系统:centos 7.4

要求:jdk :1.8.x

kafka_2.11-1.1.0

1、绑定/etc/hosts

10.10.10.xxx      online-ops-xxx-01
10.10.10.xxx      online-ops-xxx-02
10.10.10.xxx      online-ops-xxx-03

2、下载软件包

kafka_2.11-1.1.0

3、配置文件kafka

mkdir /data/kafka

#vim /usr/local/kafka/config/server.properties

broker.id=1   #每台机器不一样
listeners=PLAINTEXT://10.30.30.253:9092  #本机ip
host.name=online-ops-elk-01   #本机主机名
num.network.threads=18
num.io.threads=24
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/data/kafka  #本机路径,需要创建
num.partitions=3
num.recovery.threads.per.data.dir=1
log.flush.interval.messages=10000
log.flush.interval.ms=1000
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=online-ops-xxx-01:2181,online-ops-xxx-02:2181,online-ops-xxx-03:2181
zookeeper.connection.timeout.ms=6000
default.replication.factor = 2
delete.topic.enable=true
unclean.leader.election.enable=false 
min.insync.replicas=2

4、配置文件zookeeper

mkdir -p  /data/zookeeper  /data/logs/zookeeper

#vim /usr/local/kafka/config/zookeeper.properties

maxClientCnxns=100
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/data/zookeeper   #本机路径,需要创建
# the port at which the clients will connect
clientPort=2181
# the directory where the transaction logs are stored.
dataLogDir=/data/logs/zookeeper    #本机路径,需要创建
autopurge.purgeInterval=6
autopurge.snapRetainCount=20
server.1=online-ops-xxx-01:2888:3888    #服务器主机名
server.2=online-ops-xxx-02:2888:3888   #服务器主机名
server.3=online-ops-xxx-03:2888:3888   #服务器主机名

5、写入id

echo 1 >/data/zookeeper/myid  #和配置文件id对应 ,每台机器 都 不一样,集群内唯一id

三台都要配置:

6、启动

kafka:

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

zookeeper:

/usr/local/kafka/bin/zookeeper-server-start.sh  /usr/local/kafka/config/zookeeper.properties

7、supervisord管理启动:

安装见其它的文档:ansible-安装supervisor

#cat /etc/supervisord.d/kafka.ini 
[supervisord]
minfds=65536
minprocs=32768

[program:kafka]
command=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
user=root
process_name=kafka
numprocs=1
stopsignal=INT
redirect_stderr=true
stdout_logfile=/data/logs/kafka/kafka.log
stdout_logfile_maxbytes=300MB
stdout_logfile_backups=10
stopasgroup=true
killasgroup=true

# cat /etc/supervisord.d/zookeeper.ini 
[supervisord]
minfds=65536
minprocs=32768

[program:zookeeper]
command=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties
user=root
process_name=zookeeper
numprocs=1
stopsignal=INT
redirect_stderr=true
stdout_logfile=/data/logs/zookeeper/zookeeper.log
stdout_logfile_maxbytes=300MB
stdout_logfile_backups=10
stopasgroup=true
killasgroup=true

重启supervisord

supervisorctl update zookeeper

supervisorctl restart zookeeper

维护:

新建topic:

bin/kafka-topics.sh --create --zookeeper online-ops-xxx-01:2181,online-ops-xxx-02:2181,online-ops-xxx-03:2181 --replication-factor 2 --partitions 6 --topic test

删除topic

/usr/local/kafka/bin/kafka-topics.sh --zookeeper online-ops-xxx-01:2181,online-ops-xxx-02:2181,online-ops-xxx-03:2181  --delete --topic "online-algo-kafka"

列出哪些topic:

/usr/local/kafka/bin/kafka-topics.sh --list --zookeeper localhost:2181

测试kafka集群
(此处使用的zookeeper ip不同上所示,改成自己创建的即可)
1-进入kafka根目录,创建topic--test
bin/kafka-topics.sh --create --zookeeper online-ops-xxx-01:2181,online-ops-xxx-02:2181,online-ops-xxx-03:2181 --replication-factor 1 --partitions 1 --topic test

2-列出已创建的topic列表
bin/kafka-topics.sh --list --zookeeper localhost:2181
3-模拟客户端去发送消息
bin/kafka-console-producer.sh --broker-list online-ops-xxx-01:9092,online-ops-xxx-02:9092,online-ops-xxx-03:9092 --topic test

4-模拟客户端去接受消息
bin/kafka-console-consumer.sh --zookeeper online-ops-xxx-01:2181,online-ops-xxx-02:2181,online-ops-xxx-03:2181 --from-beginning --topic test

安装kafka + zookeeper集群的更多相关文章

  1. kafka+zookeeper集群

    参考:  kafka中文文档   快速搭建kafka+zookeeper高可用集群   kafka+zookeeper集群搭建 kafka+zookeeper集群部署 kafka集群部署   kafk ...

  2. Kafka+Zookeeper集群搭建

    上次介绍了ES集群搭建的方法,希望能帮助大家,这儿我再接着介绍kafka集群,接着上次搭建的效果. 首先我们来简单了解下什么是kafka和zookeeper? Apache kafka 是一个分布式的 ...

  3. 消息中间件kafka+zookeeper集群部署、测试与应用

    业务系统中,通常会遇到这些场景:A系统向B系统主动推送一个处理请求:A系统向B系统发送一个业务处理请求,因为某些原因(断电.宕机..),B业务系统挂机了,A系统发起的请求处理失败:前端应用并发量过大, ...

  4. Kafka/Zookeeper集群的实现(二)

    [root@kafkazk1 ~]# wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12. ...

  5. 安装部署zookeeper集群

    实验说明: 三台虚拟机做zookeeper集群,集群个数最好是奇数个,原理详见zookeeper 详解  安装zookeeper 请确保jdk 已安装好,否则无法启动  三台虚拟机IP分别为:192. ...

  6. KAFKA && zookeeper 集群安装

    服务器:#vim /etc/hosts10.16.166.90 sh-xxx-xxx-xxx-online-0110.16.168.220 sh-xx-xxx-xxx-online-0210.16.1 ...

  7. docker-搭建 kafka+zookeeper集群

    拉取容器           docker pull wurstmeister/zookeeper           docker pull wurstmeister/kafka     这里演示使 ...

  8. Dubbo管控台安装(zookeeper集群)

    Dubbo管控台可以对注册到zookeeper注册中心的服务或服务消费者进行管理,但管控台是否正常对Dubbo服务没有影响,管控台也不需要高可用,因此节点部署   环境:Centos6.6.IP:10 ...

  9. 【转】kafka&zookeeper集群搭建指南

    [转自]:http://www.cnblogs.com/luotianshuai/p/5206662.html 待续...

随机推荐

  1. 前端学习:HTML的学习总结

    html简介 1 html是什么:超文本标记语言 超文本:文字/图片/音频/视频 标签/标记:<body></body> 怎么做:使用标签来创建网页 2 HTML的用途:是用来 ...

  2. golang --os系统包

    环境变量 Environ 获取所有环境变量, 返回变量列表 func Environ() []string package main import ( "fmt" "os ...

  3. mysql时间戳转日期

    -- 日期字符串转时间戳,10位,数据库存储的是13位 select UNIX_TIMESTAMP('2019-09-01 00:00:00'); -- 时间戳转日期 ,'%Y-%m-%d %H:%i ...

  4. SQL IN 一定走索引吗?

    摘要 IN 一定走索引吗?那当然了,不走索引还能全部扫描吗?好像之前有看到过什么Exist,IN走不走索引的讨论.但是好像看的太久了,又忘记了.哈哈,如果你也忘记了MySQL中IN是如何查询的,就来复 ...

  5. 一种小型后台管理系统通用开发框架中的Cache缓存设计

    本篇博客记录一下我在实习的公司的后台管理系统开发框架中学习到的一种关于网站的缓存(Cache)的实现方法,我会在弄懂的基础上,将该方法在.net core上进行实现.因为公司开发都是基于.net fr ...

  6. Django的视图系统:View

    一.CBV和FBV FBV:functoin based view,基于函数的view 我们之前写过的都是基于函数的view CBV:class based view,基于类的view 定义CBV: ...

  7. .htaccess文件配置理解

    0x00前言.htaccess文件是用于apache服务器下的控制文件访问的配置文件,因此Nginx下是不会生效的 .htaccess可以控制错误重定向,初始页面设置,文件夹的访问权限,文件的跳转等 ...

  8. 5种处理Vue异常的方法

    原文: Handling Errors in Vue.js 译者: Fundebug 本文采用意译,版权归原作者所有 去年一整年,我都在使用最爱的-Vue.js- 来做项目.最近突然意识到,我竟然从来 ...

  9. Spring项目配置多数据源

    项目中有用到多数据源,并进行动态切换,使用的是阿里的druid.看网上有一篇大致一样的就偷偷懒 import java.sql.SQLFeatureNotSupportedException; imp ...

  10. JavaScript 弹出框

    JavaScript 有三种类型的弹出框:警告框.确认框和提示框. 警告框 如果要确保信息传递给用户,通常会使用警告框. 当警告框弹出时,用户将需要单击“确定”来继续. 语法 window.alert ...