1. KAFKA下载地址:http://kafka.apache.org/downloads

KAFKA-快速上手-官方网站:http://kafka.apache.org/quickstart

2. 下载完成后解压,修改config目录下的配置文件:server.properties 、zookeeper.properties

1)修改server.properties:

------------------------------------------------- Server Basics -------------------------------------------------

设置broker.id,确保每个broker的id是唯一的,可以默认master节点的为0,其他依次为1、2...

------------------------------------------------- Socket Server Settings -------------------------------------------------

设置listeners,listeners = PLAINTEXT://172.16.106.153:9092

------------------------------------------------- Log Basics -------------------------------------------------

设置num.partitions,分区数量与broker数量一致

------------------------------------------------- Zookeeper -------------------------------------------------

设置zookeeper集群地址,zookeeper.connect = xxx.xxx.xxx.xxx:2181,xxx.xxx.xxx.xxx2181    (最重要的)

2)修改zookeeper.properties:

  设置连接参数,在最后添加配置

  tickTime=2000
  initLimit=8
  syncLimit=3

设置broker.id的服务器地址,server.X和IP要与broker.id所在的服务器地址一致

  server.0=xxx.xxx.xxx.xxx:2888:3888
  server.1=xxx.xxx.xxx.xxx:2889:3889

3)添加zookeeper数据目录的ID文件,在zookeeper数据目录(默认dataDir=/tmp/zookeeper)添加myid文件,写入broker.id的值。到/tmp/zookeeper目录下执行:

第一台机器:echo 0 > myid

第二台机器:echo 1 > myid

3. 启动kafka

  启动时,先启动zookeeper,再启动kafka;关闭反之,先关闭kafka,再关闭zookeeper

  启动zookeeper:  bin/zookeeper-server-start.sh config/zookeeper.properties &

  启动kafka:     bin/kafka-server-start.sh config/server.properties &

4. 测试kafka集群是否部署成功

1)第一台机器上创建一个TOPIC

  bin/kafka-topics.sh --create --zookeeper xxx.xxx.xxx.xxx:2181 --replication-factor 1 --partitions 1 --topic test

2)查看TOPIC列表,确认是否创建成功

  bin/kafka-topics.sh --list --zookeeper xxx.xxx.xxx.xxx:2181

3)创建生成者

  bin/kafka-console-producer.sh --broker-list xxx.xxx.xxx.xxx:9092 --topic test

4)在所有服务器上创建消费者

  bin/kafka-console-consumer.sh --bootstrap-server xxx.xxx.xxx.xxx:9092 --from-beginning --topic test

5)在第一台机器上输入消息,回车发送,CTRL+C终止,查看其他机器的消费者是否能接受到消息

###那些年踩过的坑.....

1. WARN: Connection to node 1 could not be established. Broker may not be available.

  创建消费者时出的错,重启zookeeper和kafka

2. ERROR org.apache.kafka.common.errors.InvalidReplicationFactorException: replication factor: 1 larger than available brokers: 0

  kafka未启动,先停止kafka和zookeeper,确保进程关闭,然后再重新启动。

  bin/kafka-server-stop.sh      

  bin/zookeeper-server-stop.sh

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

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

3. WARN Error while fetching metadata with correlation id 0

  启动生产者进程报错,没有绑定Kafka启动监听的host信息

  vim  config/server.properties

  listeners=PLAINTEXT://localhost:9092  ,若此处配置的IP,则在执行命令时使用IP:bin/kafka-console-consumer.sh --bootstrap-server xxx.xxx.xxx.xxx:9092 --from-beginning --topic test

4. UnknowHostException:主机名:主机名

  linux无法解析域名导致,可以将主机名对应的ip写入到hosts文件中保存,或者直接删除 /etc/Hostname 文件

  vim /tec/hosts

  IP    主机名  (如:172.10.1.1      name)

  

KAFKA集群搭建(自带zookeeper)的更多相关文章

  1. Zookeeper + Kafka 集群搭建

    第一步:准备 1. 操作系统 CentOS-7-x86_64-Everything-1511 2. 安装包 kafka_2.12-0.10.2.0.tgz zookeeper-3.4.9.tar.gz ...

  2. zookeeper与Kafka集群搭建及python代码测试

    Kafka初识 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户 ...

  3. zookeeper及kafka集群搭建

    zookeeper及kafka集群搭建 1.有关zookeeper的介绍可参考:http://www.cnblogs.com/wuxl360/p/5817471.html 2.zookeeper安装 ...

  4. CentOS 7 Zookeeper 和 Kafka 集群搭建

    环境 CentOS 7.4 Zookeeper-3.6.1 Kafka_2.13-2.4.1 Kafka-manager-2.0.0.2 本次安装的软件全部在 /home/javateam 目录下. ...

  5. zookeeper集群及kafka集群搭建

    1.zookeeper集群搭建 1.1 上传安装包 官网推荐至少3个节点,我们这里也用三个节点192.169.2.18  192.169.1.82  192.169.1.95 准备好安装包,zooke ...

  6. Kafka【第一篇】Kafka集群搭建

    Kafka初识 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户 ...

  7. 消息队列kafka集群搭建

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

  8. [Golang] kafka集群搭建和golang版生产者和消费者

    一.kafka集群搭建 至于kafka是什么我都不多做介绍了,网上写的已经非常详尽了. 1. 下载zookeeper  https://zookeeper.apache.org/releases.ht ...

  9. 【转】kafka集群搭建

    转:http://www.cnblogs.com/luotianshuai/p/5206662.html Kafka初识 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候,是否 ...

随机推荐

  1. Spring Data JPA 梳理 - 使用方法

    1.下载需要的包. 需要先 下载Spring Data JPA 的发布包(需要同时下载 Spring Data Commons 和 Spring Data JPA 两个发布包,Commons 是 Sp ...

  2. 读《深入理解Elasticsearch》点滴-改正用户拼写错误

    1.使用“建议”的方法:在query body的json结构体中,增加suggest节点:或者使用特殊的REST端点 2.es自带有多个不同的suggest实现,用来纠正用户的拼写错误及创建自动补全等 ...

  3. profile文件的错误加载与基本命令间的映射

    一.绪论 [因为这篇心得是原创的,所以如果有哪处总结或者意见不足的地方,欢迎各位大神的批评和意见,共同学习,谢谢了!] 早些时候,需要在centos6.4系统中配置单机版和集群版单节点的hadoop ...

  4. Chrome浏览器启动报错:应用程序无法启动,因为应用程序的并行配置不正确。

    因为国庆节了,难得关一次机(可能搞IT的习惯吧),结果给祖国庆祝完70寿辰之后归来,启动电脑,就打不开Chrome浏览器了,报错如下: 应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请 ...

  5. CSS技巧 (2) · 多列等高布局

    前言  最近,面试的时候都碰到一些关于利用CSS实现多列等高布局或者一侧宽度固定,另一侧宽度自适应的问题,下面稍微总结一下: 先看一道题目 巧妙的多列等高布局 规定下面的布局,实现多列等高布局,要求两 ...

  6. linux下安装Elasticsearch

    一.简单介绍: Elasticsearch提供了近乎实时的数据操作和搜索功能,es集群中所有节点可以一起提供索引和搜索功能,能够相互发现彼此和自动地加入到集群中 二.基础概念: 1.索引: 表征的文档 ...

  7. Scala 多继承顺序

    Trait多继承顺序: 准则: 如果有超类,则先调用超类的函数. 如果混入的trait有父trait,它会按照继承层次先调用父trait的构造函数. 如果有多个父trait,则按顺序从左到右执行. 所 ...

  8. 创建一个 Laravel 项目

    创建一个 Laravel 项目,首先需要安装 Composer ,如果没有安装的参考 https://docs.phpcomposer.com/00-intro.html 一.安装 Laravel 安 ...

  9. 项目一:ssm超市订单管理系统

    声明:项目参考于课程教材,学习使用,仅在此记录 项目介绍 ssm超市订单管理系统,功能模块有订单管理,供应商管理,用户管理,密码修改,退出系统,管理模块中包括基本的增删改查 集成工具使用idea,基于 ...

  10. Java读源码之LockSupport

    前言 JDK版本: 1.8 作用 LockSupport类主要提供了park和unpark两个native方法,用于阻塞和唤醒线程.注释中有这么一段: 这个类是为拥有更高级别抽象的并发类服务的,开发中 ...