1.将kafka解压在/opt/kafka

2.配置kafka集群

1.修改config/server.properties文件

$ vi config/server.properties

1.增加host.name主机名(解析需要) broker 为当前集群id

    host.name=master

图片描述

2.配置zookeeper

将zookeeper.connect替换成具体的地址

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

图片描述

2.将kafka scp到slave0跟slave1 的/opt/kafka目录下

$scp kafka copy-master@slave0:/opt
$scp kafka copy-master@slave1:/opt

3.进入slave0跟slave1修改config/server.properties配置中的broker.id跟host.name

slave0:  borker.id=1
        host.name=slave0
slave1:  borker.id=2
        host.name=slave1
        

3.启动集群

分别在master,slave0,slave1启动集群

前台启动:

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

后台静默启动:

$bin/kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 & 

4.基本使用

创建主题

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

查看有哪些主题

$bin/kafka-topics.sh --list --zookeeper master:2181

创建生产者 (发出消息来源 入口)

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

创建消费者(接受消息的)

$bin/kafka-console-consumer.sh --zookeeper master:2181 --topic test --from-beginning

查看主题中的信息

$bin/kafka-topics.sh --describe --zookeeper master:2181 --topic test

延伸

同步数据可以使用工具采集数据 -》传到kafka-》通过kafka到收集处-》对数据进行操作
例如

1日志的处理
将日志存储到hdfs
Hadoop实战:使用Maxwell把MySQL数据实时同步到HDFS

测试MySQL->Maxwell->Kafka->Flume->HDFS
2.可以使用kafka作为mysql数据同步


司令
58 声望1 粉丝

« 上一篇
5.Sqoop