主机的IP地址:

主机IP地址 zookeeper kafka
10.19.85.149 myid=1 broker.id=1
10.19.15.103 myid=2 broker.id=2
10.19.189.221 myid=3 broker.id=3
配置文件:
# cat zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
dataLogDir=/data/zookeeper/log
clientPort=2181
server.1=10.19.85.149:2888:3888
server.2=10.19.15.103:2888:3888
server.3=10.19.189.221:2888:3888
#maxClientCnxns=60
#autopurge.snapRetainCount=3
#autopurge.purgeInterval=1
注释:2888表示zookeeper程序监听端口,3888表示zookeeper选举通信端口。

按照上述指定:
echo 1 > /data/zookeeper/data/myid

echo 2 > /data/zookeeper/data/myid

echo 3 > /data/zookeeper/data/myid

报错信息:
Error contacting service. It is probably not running.
一次启动三个节点:
# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

报错信息查案zookeeper.out

# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: leader

zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

--以下为单节点的状态:
#zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: standalone

--zookeeper关闭:
# zkServer.sh start

--查看zookeeper的信息:
zkCli.sh -server 127.0.0.1:2181

安装kafka:

--配置信息:
# cd /usr/local/kafka/config
# cat server.properties | grep -v ^#|uniq | tr -s '\n'

broker.id=1
host.name=10.19.85.149
auto.create.topics.enable=true
delete.topic.enable = true
message.max.bytes=200000000
replica.fetch.max.bytes=204857600
fetch.message.max.bytes=204857600
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=1048576000
log.dirs=/data/kafka/log
num.partitions=3
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=10.19.85.149:2181,10.19.15.103:2181,10.19.189.221:2181
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0

--设置环境变量:

--启动kafka:
# /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties &
-- 启动:
# /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties &
注意:kafka的broker_id的值要和zookeeper的ID值一样。

--启动之后可以查看jps进程:
# jps
22851 Kafka
22884 Jps
22151 QuorumPeerMain
QuorumPeerMain为zookeeper的进程,kafka为kafka的进程。

--kafka常用的操作命令:

注释以下命令需要设置环境变量:
# cat /etc/profile.d/kafka.sh
export PATH=$PATH:/usr/local/kafka/bin

--关闭kafka:
kafka-server-stop.sh
--启动kafka:
kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties

--创建topic:
说明:创建一个主题名为topic_tidb的主题,有2个复制3个分区
kafka-topics.sh --create --zookeeper 10.19.85.149,10.19.15.103,10.19.189.221 --replication-factor 2 --partitions 3 --topic topic_tidb
WARNING: Due to limitations in metric names, topics with a period ('.') or underscore ('_') could collide. To avoid issues it is best to use either, but not both.
Created topic "topic_tidb".
--查看topic是否创建成功:
kafka-topics.sh --list --zookeeper 10.19.85.149,10.19.15.103,10.19.189.221

topic_tidb
--查看topic_tidb的详细信息:

# kafka-topics.sh --describe --zookeeper 10.19.85.149,10.19.15.103,10.19.189.221 --topic topic_tidb
Topic:topic_tidbPartitionCount:3ReplicationFactor:2Configs:
Topic: topic_tidbPartition: 0Leader: 2Replicas: 2,3Isr: 2,3
Topic: topic_tidbPartition: 1Leader: 3Replicas: 3,1Isr: 3,1
Topic: topic_tidbPartition: 2Leader: 1Replicas: 1,2Isr: 1,2
--删除Topic:
#kafka-topics.sh --delete --zookeeper 10.19.85.149,10.19.15.103,10.19.189.221 --topic topic_tidb

--创建消息生产者发送消息:
kafka-console-producer.sh --broker-list 10.19.85.149:9092,10.19.15.103:9092,10.19.189.221:9092 --topic topic_tidb
kafka-console-producer.sh --broker-list 10.19.85.149:9092,10.19.15.103:9092,10.19.189.221:9092 --topic topic_tidb
>
>wuhan
>I Love Java!

--创建消息消费者接收消息:
kafka-console-consumer.sh --zookeeper 10.19.85.149:2181,10.19.15.103:2181,10.19.189.221:2181 --from-beginning --topic topic_tidb

Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper].

wuhan
I Love Java!

Linux 下kafka集群搭建的更多相关文章

  1. Linux下kafka集群搭建过程记录

    环境准备 zookeeper集群环境kafka是依赖于zookeeper注册中心的一款分布式消息对列,所以需要有zookeeper单机或者集群环境. 三台服务器: 172.16.18.198 k8s- ...

  2. Linux下kafka集群搭建

    环境准备 zookeeper集群环境 kafka是依赖于zookeeper注册中心的一款分布式消息对列,所以需要有zookeeper单机或者集群环境. 三台服务器: 172.16.18.198 k8s ...

  3. Linux下zookeeper集群搭建

    Linux下zookeeper集群搭建 部署前准备 下载zookeeper的安装包 http://zookeeper.apache.org/releases.html 我下载的版本是zookeeper ...

  4. Linux下kafka集群的搭建

    上一篇日志已经搭建好了zookeeper集群,详细请查看:http://www.cnblogs.com/lianliang/p/6533670.html,接下来继续搭建kafka的集群 1.首先下载k ...

  5. Linux 下redis 集群搭建练习

    Redis集群 学习参考:https://blog.csdn.net/jeffleo/article/details/54848428https://my.oschina.net/iyinghui/b ...

  6. Linux下solr集群搭建

    第一步:创建四个tomcat实例.每个tomcat运行在不同的端口.8180.8280.8380.8480 第二步:部署solr的war包.把单机版的solr工程复制到集群中的tomcat中. 第三步 ...

  7. linux下Mongodb集群搭建:分片+副本集

    三台服务器 192.168.1.40/41/42 安装包 mongodb-linux-x86_64-amazon2-4.0.1.tgz 服务规划  服务器40  服务器41  服务器42  mongo ...

  8. 消息队列kafka集群搭建

    linux系统kafka集群搭建(3个节点192.168.204.128.192.168.204.129.192.168.204.130)    本篇文章kafka集群采用外部zookeeper,没采 ...

  9. kafka集群搭建及结合springboot使用

    1.场景描述 因kafka以前用的不多,只往topic中写入和读取过数据,这次刚好又要用到,记录下kafka集群搭建及结合springboot使用. 2. 解决方案 2.1 简单介绍 (一)关于kaf ...

随机推荐

  1. 【蜂窝】at+qcfg="band"的计算和使用

    查询附件 Quectel_EC25_LTE_模块产品规格书_V1.6 可知当前的蜂窝模块所对应的band频带是什么? eg.1 EC25-AU 当前选择4G 优先, FDD LTE 可看手册QCFG命 ...

  2. TCP/IP结构图

    IP: TCP: UDP:

  3. 必须知道的String知识点

    1.String 类型的概述 Java中String就是Unicode字符序列,例如,字符串"Java\u2122"由5个Unicode字符J.a.v.a和 ™ 组成.不像C/C+ ...

  4. 复杂json后端解析出现第二层无数据的问题

    自从使用了lombok之后写代码更加爽了 但是突然遇到前端小姐姐传的对象中的数组后端接收不到,查了好长时间无果后就搁置了. 今天突然想找找什么原因.自己写了一个测试的案例,经过测试过后发现是lombo ...

  5. NodeJS 开发博客(四) 日志及安全攻击

    node 操作文件: const fs = require('fs'); const path = require('path'); const filename = path.resolve(__d ...

  6. jquery判断input选中事件

    需求是默认第一个是选中状态,点第二个选中,第一个取消然后点支付时,跳转新页面 $(function(){ $(".nl_zhifutj a").click(function(){ ...

  7. Vue中使用matomo进行访问流量统计的实现

    Vue中使用matomo进行访问流量统计 原文链接 前言 之前做到了一个页面及接口访问流量统计的需求, 然后在网上找了很多帖子,发现有些有的但是写的都不是很详细,所以今天就整理了一下 正文 第一步 首 ...

  8. YARN构建--解决cypress下载慢问题

      背景 注意:      此方案仅适合已经自行搭建私有仓库的用户使用      如非必要,尽可能使用软件开发云或其他服务提供的镜像站,避免此类特殊处理(会导致仓库维护成本增加) 场景描述 YARN构 ...

  9. divisors 数学

    divisors 数学 给定\(m\)个不同的正整数\(a_1, a_2,\cdots, a_m\),请对\(0\)到\(m\)每一个\(k\)计算,在区间\([1, n]\)里有多少正整数是\(a\ ...

  10. 前端代码规范-Javascript

    命名规范 ECMAScript 规范中标识符采用驼峰大小写格式,驼峰命名法由小(大)写字母开始,后续每个单词首字母都大写.根据首字母是否大写,分为两种方式: Pascal Case 大驼峰式命名法:首 ...