Kafka依赖Zookeeper,虽然Kafka自带zookeeper,但是建议单独部署,所以先部署Zookeeper。

测试环境

citus1,citus2,citus3三台机器。对主机名和ip在/etc/hosts文件中进行映射自行完成。

部署zookeeper

Zookeeper版本:zookeeper-3.4.6

1.解压缩,修改配置

cp zookeeper-3.4.6/conf/zoo_sample.cfg zookeeper-3.4.6/conf/zoo.cfg

vi zoo.cfg中修改配置,没有的添加:

tickTime=
dataDir=/var/lib/zookeeper
clientPort=
initLimit=
syncLimit=
server.=citus1::
server.=citus2::
server.=citus3::

2.分发其他机器

scp -r zookeeper-3.4. citus2:/opt/
scp -r zookeeper-3.4. citus3:/opt/

3.设置myid

[root@citus1 opt]# mkdir /var/lib/zookeeper
[root@citus1 opt]# echo "" > /var/lib/zookeeper/myid
[root@citus2 opt]# mkdir /var/lib/zookeeper
[root@citus2 opt]# echo "" > /var/lib/zookeeper/myid
[root@citus3 opt]# mkdir /var/lib/zookeeper
[root@citus3 opt]# echo "" > /var/lib/zookeeper/myid

4.启动zookeeper

[root@citus1 zookeeper-3.4.]# bin/zkServer.sh start
JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@citus2 zookeeper-3.4.]# bin/zkServer.sh start
JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@citus3 zookeeper-3.4.]# bin/zkServer.sh start
JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

5.查看状态

[root@citus1 zookeeper-3.4.]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Mode: follower
[root@citus1 zookeeper-3.4.]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Mode: leader
[root@citus1 zookeeper-3.4.]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Mode: follower

部署kafka

1.解压缩,修改配置

tar -xzvf kafka_2.-0.10.2.1.tgz -C /opt
vi /opt/kafka_2.-0.10.2.1/config/server.properties

修改zookeeper配置如下:

Broker.id为当前机器在集群中的唯一标识,每台服务器的broker.id都不能相同。

2.从citus1上分发其他机器

scp -r kafka_2.-0.10.2.1/ citus2:/opt
scp -r kafka_2.-0.10.2.1/ citus3:/opt

3.修改配置

citus2上修改broker.id为1

citus3上修改broker.id为2

4.启动kafka

每台机器都执行:

bin/kafka-server-start.sh config/server.properties &

5.测试

新建一个topic:

./bin/kafka-topics.sh --zookeeper citus1:,citus2:,citus3: --topic test --replication-factor  --partitions  --create

查看当前topic:

./bin/kafka-topics.sh --zookeeper citus1:,citus2:,citus3: --list

在一个节点创建一个producer:

./bin/kafka-console-producer.sh --broker-list citus1:,citus2:,citus3: --topic test

在另外一个节点创建consumer:

./bin/kafka-console-consumer.sh --zookeeper citus1:,citus2:,citus3: --from-beginning -topic test

在producer端输入信息,在consumer端能接收到信息。

Kafka部署的更多相关文章

  1. 大并发量订单处理的 KafKa部署

    大并发量订单处理的 KafKa部署总结 今天要介绍的是消息中间件KafKa,应该说是一个很牛的中间件吧,背靠Apache 与很多有名的中间件搭配起来用效果更好哦 ,为什么不用RabbitMQ,因为公司 ...

  2. 处理大并发量订单处理的 KafKa部署总结

    处理大并发量订单处理的 KafKa部署总结 今天要介绍的是消息中间件KafKa,应该说是一个很牛的中间件吧,背靠Apache 与很多有名的中间件搭配起来用效果更好哦 ,为什么不用RabbitMQ,因为 ...

  3. 基于Docker的Kafka部署

    一 准备 1.1 安装docker-dompose #部署 sudo curl -L "https://github.com/docker/compose/releases/download ...

  4. Kafka 部署完在服务器端可以访问,而在外部其它电脑访问不了

    Kafka 部署完在服务器端可以访问,而在外部其它电脑访问不了 原因:config/server.properties的listeners和advertised.listeners 不配置的话默认的l ...

  5. Kafka部署与代码实例(转)

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

  6. Linux中kafka部署和集群

    1.下载kafka安装包kafka_2.12-1.1.0. tar -xzvf kafka_2.11-0.8.2.1.tgz #解压 mv kafka_2.11-0.8.2.1 /usr/local/ ...

  7. Kafka 部署指南-好久没有更新博客了

    最近到了一家新公司,很多全新技术栈要理解.每天都在看各类 English Offcial Document,我的宗旨是我既然看懂了,就写下来分享,这是第一篇. 基本需求: 1.已有 zookeeper ...

  8. Kafka部署篇

    目录 安装 下载与安装 配置 启停操作 验证 基本操作 创建topic 列出现有的topic 查看topic的详细信息 增加topic的partition数量 修改一个topic的副本数 删除一个to ...

  9. Kafka部署安装

    一.环境准备 1.jdk 8+ 2.zookeeper 3.kafka 说明:在kafka较新版本中已经集成了zookeeper,所以不用单独安装zookeeper,只需要在kafka文件目录中启动z ...

随机推荐

  1. 匹配中文字符的正则表达式: [/u4e00-/u9fa5]

    原文:匹配中文字符的正则表达式: [/u4e00-/u9fa5] 这里是几个主要非英文语系字符范围(google上找到的): 2E80-33FFh:中日韩符号区.收容康熙字典部首.中日韩辅助部首.注音 ...

  2. SQL SERVER中UPDLOCK ,READPAST使用

    原文:SQL SERVER中UPDLOCK ,READPAST使用 SQL SERVER中中获取不重复数据: select top 1 * from orders with(UPDLOCK ,READ ...

  3. 中国2017 Google 开发者大会第一天简单回顾

    昨天有幸参加了中国2017 Google 开发者大会,在这第一天就收获满满,昨天太忙了,今天早晨来一起简单回顾一下,可以让没有参加的童鞋们感受一下现场的温度. 早早就来到了会议现场,外面看不出什么特别 ...

  4. C# mysql set和enum属性字段的读取和添加

    1.使用Navicat for Mysql设置set和enum属性字段: a.enum类型 b.set类型 enum类型在创建表时需要设置初始值,在如图所示的位置设置. 2.C#读取和添加数据 a.e ...

  5. matplotlib简介

    python的matplotlib包可以帮助我们绘制丰富的图表,有助于我们的数据分析. matplotlib官方文档:matplotlib 本博客所有代码默认导入matplotlib.pyplot和n ...

  6. 将QT开发的界面程序封装成DLL,在VC中成功调用(必须有消息循环,所以使用了QTWinmigrate,附CSDN可下载的Demo)

    最近手头的一个项目需要做一个QT界面,并且封装成DLL,然后再动态调用DLL给出的接口函数,使封装在DLL内部的QT界面跑起来,在网上查了很多资料,今天终于成功了,经验不敢独享,因为CSDN给了我很多 ...

  7. 【转】简单的jQuery插件开发方法

    在实际开发工作中,总会碰到像滚动,分页,日历等展示效果的业务需求,对于接触过jQuery以及熟悉jQuery使用的人来说,首先想到的肯定是寻找现有的jQuery插件来满足相应的展示需求.目前页面中常用 ...

  8. SYN1621型 定位定向授时设备

    SYN1621型 定位定向授时设备 定位定向授时设备使用说明视频链接: http://www.syn029.com/h-pd-274-0_310_39_-1.html 请将此链接复制到浏览器打开观看 ...

  9. python下SQLAlchemy的使用

    SQLAlchemy是python中orm常用的框架.支持各种主流的数据库,如SQLite.MySQL.Postgres.Oracle.MS-SQL.SQLServer 和 Firebird. 在安装 ...

  10. hgoi#20190519

    更好的阅读体验 来我的博客观看 T1-求余问题 Abu Tahun很喜欢回文. 一个数组若是回文的,那么它从前往后读和从后往前读都是一样的,比如数组{1},{1,1,1},{1,2,1},{1,3,2 ...