kafka安装

来源:互联网 发布:编程c图形库砖块金字塔 编辑:程序博客网 时间:2024/05/16 09:01

1.下载安装

  wget http://mirrors.cnnic.cn/apache/kafka/0.8.1.1/kafka_2.9.2-0.8.1.1.tgz

  解压tar -xzvf kafka_2.9.2-0.8.1.1.tgz  之后,查看路径下的文件

  [root@master intalldir]# cd kafka_2.9.2-0.8.1.1/

  [root@master kafka_2.9.2-0.8.1.1]# ll

  total 28

  drwxr-xr-x. 3 root root  4096 Apr 22  2014 bin

  drwxr-xr-x. 2 root root  4096 Apr 22  2014 config

  drwxr-xr-x. 2 root root  4096 Apr 22  2014 libs

  -rw-rw-r--. 1 root root 11358 Apr 22  2014 LICENSE

  -rw-rw-r--. 1 root root   162 Apr 22  2014 NOTICE

  配置环境变量

    vim   /etc/profile

   然后 运行 source /etc/profile使之生效

2.配置kafka

  配置以及启动测试

  (1)首先可以启动kafka自带的ZooKeeper 

  bin/zookeeper-server-start.sh config/zookeeper.properties &(注意要后台启动)

    但是最好使用自己安装的ZooKeeper修改配置文件config/server.properties,修改如下内容:

   查看server.properties

 # Zookeeper connection string (see zookeeper docs for details).

  # This is a comma separated host:port pairs, each corresponding to a zk

  # server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".

  # You can also append an optional chroot string to the urls to specify the

  # root directory for all kafka znodes.

   zookeeper.connect=localhost:2181   

   利用逗号zookeeper集群

  配置如下

   zookeeper.connect=master:2181,slave1:2181,slave2:2181

(2)kafka分别复制到slave1slave2

 并修改配置文件config/server.properties内容如下所示:

broker.id=1  # slave1修改broker.id=2  # slave2修改

因为Kafka集群需要保证各个Brokerid在整个集群中必须唯一,需要调整这个配置项的值(如果在单机上,可以通过建立多个Broker进程来模拟分布式的Kafka集群,也需要Brokerid唯一,还需要修改一些配置目录的信息)。 

(3)在集群中的master、slave1、slave2这三个节点上分别启动Kafka,分别执行如下命令:启动前保证zooKeeper已经启动

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

 

(4)可以通过查看日志,或者检查进程状态,保证Kafka集群启动成功。 我们创建一个名称为my-replicated-topic5Topic5个分区,并且复制因子为3,执行如下命令:

bin/kafka-topics.sh --create --zookeeper h1:2181,h2:2181,h3:2181 --replication-factor 3 --partitions 5 --topic my-replicated-topic5

查看创建的Topic,执行如下命令:

bin/kafka-topics.sh --describe --zookeeper h1:2181,h2:2181,h3:2181 --topic my-replicated-topic5

结果信息如下所示:

 

上面LeaderReplicasIsr的含义如下:

Partition: 分区Leader   : 负责读写指定分区的节点Replicas : 复制该分区log的节点列表Isr      : "in-sync" replicas,当前活跃的副本列表(是一个子集),并且可能成为Leader

(5)测试生产和消费

我们可以通过Kafka自带的bin/kafka-console-producer.shbin/kafka-console-consumer.sh脚本,来验证演示如果发布消息、消费消息。 在一个终端,启动Producer,并向我们上面创建的名称为my-replicated-topic5Topic中生产消息,执行如下脚本:

bin/kafka-console-producer.sh --broker-list h1:9092,h2:9092,h3:9092 --topic my-replicated-topic5

在另一个终端,启动Consumer,并订阅我们上面创建的名称为my-replicated-topic5Topic中生产的消息,执行如下脚本:

bin/kafka-console-consumer.sh --zookeeper h1:2181,h2:2181,h3:2181 --from-beginning --topic my-replicated-topic5

可以在Producer终端上输入字符串消息行,然后回车,就可以在Consumer终端上看到消费者消费的消息内容。 也可以参考KafkaProducerConsumerJava API通过API编码的方式来实现消息生产和消费的处理逻辑

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 吃了个西瓜不停拉肚子怎么办 例假完了又来了怎么办 肾上面有个肿瘤怎么办 膀胱壁毛糙增厚怎么办 痔疮手术后尿不出来怎么办 小牛肚一天不尿怎么办 小孩拉肚一直不好怎么办 尿涨但是尿很少怎么办 十四岁尿血医生说是肾炎怎么办 吃肉反胃想吐怎么办 母牛排尿带血尿发烧怎么办 4岁发烧40度怎么办 狗狗拉肚子咳漱哮喘怎么办 拉肚子拉脱水人无力怎么办 孕中期拉稀拉水怎么办 吃坏肚子拉稀水怎么办 手上起小疙瘩疼怎么办 手上长东西很痛怎么办 七八十斤猪拉稀怎么办 宝宝扁桃体化脓反复发烧怎么办 骑单车后膝盖痛怎么办 孩子一运动就喘怎么办 小孩晚上咳嗽很厉害怎么办 1岁宝宝夜里咳嗽怎么办 咳嗽咳的胸疼怎么办 儿童又咳又喘怎么办 咳嗽咳到胸口痛怎么办 咳嗽咳得肋骨疼怎么办 孕妇咳嗽咳得胸口疼怎么办 怀孕偏左侧宫腔怎么办 晨起活动后咳嗽怎么办 运动后乳房坠痛怎么办 嗓子痒咳嗽怎么办夜间最为难受 小孩鼻炎引起的咳嗽怎么办 跑完800米喉咙痒怎么办 过敏源总ige高怎么办 一岁宝宝咳嗽喘怎么办 宝宝又咳又喘怎么办 3岁宝宝有痰怎么办 小孩又咳又喘怎么办 宝宝有点吼和喘怎么办