Kafka集群部署

一、集群部署的基本流程

  下载安装包、解压安装包、修改配置文件、分发安装包、启动集群

二、集群部署的基础环境准备  

安装前的准备工作(zk集群已经部署完毕)

  关闭防火墙

chkconfig iptables off  && setenforce 0

   创建用户

groupadd realtime && useradd realtime && usermod -a -G realtime realtime

创建工作目录并赋权

mkdir /export

mkdir /export/servers

       chmod 755 -R /export

切换到realtime用户下

    su realtime

PS :测试环境下可以都用ROOT用户,省去配置用户权限问题。

三、Kafka集群部署

      1、下载安装包

http://kafka.apache.org/downloads.html

在linux中使用wget命令下载安装包

        wget http://mirrors.hust.edu.cn/apache/kafka/0.8.2.2/kafka_2.11-0.8.2.2.tg

2、解压安装包

tar -zxvf /export/software/kafka_2.11-0.8.2.2.tgz -C /export/servers/

       cd /export/servers/

cp   /export/servers/kafka/config/server.properties

/export/servers/kafka/config/server.properties.bak

vi  /export/servers/kafka/config/server.properties

输入以下内容:Kafka集群部署

4、分发安装包  

scp -r /export/servers/kafka_2.11-0.8.2.2 kafka02:/export/servers

然后分别在各机器上创建软连

cd /export/servers/

ln -s kafka_2.11-0.8.2.2 kafka

5、再次修改配置文件(重要)

     依次修改各服务器上配置文件的的broker.id,分别是0,1,2不得重复

6、启动集群 

依次在各节点上启动kafka

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

四、Kafka常用操作命令

    查看当前服务器中的所有topic
bin/kafka-topics.sh --list --zookeeper  zk01:2181
    创建topic
./kafka-topics.sh --create --zookeeper mini1:2181 --replication-factor 1 --partitions 3 --topic first
    删除topic
sh bin/kafka-topics.sh --delete --zookeeper zk01:2181 --topic test
需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。
    通过shell命令发送消息
kafka-console-producer.sh --broker-list kafka01:9092 --topic itheima
    通过shell消费消息
sh bin/kafka-console-consumer.sh --zookeeper zk01:2181 --from-beginning --topic test1
    查看消费位置
sh kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper zk01:2181 --group testGroup
    查看某个Topic的详情
sh kafka-topics.sh --topic test --describe --zookeeper zk01:2181

五、Java  API

      1、生产者

      

Kafka集群部署

    2、消费者

       

Kafka集群部署