Kafka环境搭建
上传压缩包至任意一节点
rz //上传压缩包命令
tar -zxvf kafka_2.11-0.10.1.0.tgz -C /opt/programs/kafka/ 解压
需要提前创建一个kafka目录。kafka中再创建一个logs目录,用来存放kafka的处理日志
mkdir /opt/programs/kafka/logs
配置环境变量 vi /etc/profile
export KAFKA_HOME=/opt/programs/kafka/kafka_2.11-0.10.1.0
export PATH=$PATH:$KAFKA_HOME/bin
修改kafka配置 vi /opt/programs/kafka/kafka_2.11-0.10.1.0/config/server.properties
#broker是全局唯一编号,不能重复
broker.id=1
#被监听节点的地址
listeners=PLAINTEXT://192.168.1.32:9092
#处理网络请求的线程数量
num.network.threads=3
#kafka以日志的形式存放数据的目录
log.dirs=/opt/programs/kafka/logs
#配置连接zookeeper集群地址
zookeeper.connect=hadoop1:2181,hadoop2:2181,hadoop3:2181
#客户端连接zookeeper的超时时间
zookeeper.connection.timeout.ms=6000
这时候就配置完成了,将配置好的kafka以及/etc/profile发送到各个节点上,并修改server.properties文件中的broker.id和listeners。profile传完后,需要 source /etc/profile
scp /etc/profile hadoop2:/etc/
scp /etc/profile hadoop3:/etc/
scp -rp /opt/programs/kafka hadoop2:/opt/programs/
scp -rp /opt/programs/kafka hadoop3:/opt/programs/
hadoop2:broker.id=2 listeners=PLAINTEXT://192.168.1.33:9092
hadoop3:broker.id=3 listeners=PLAINTEXT://192.168.1.34:9092
启动kafka之前需启动zookeeper,然后启动kafka,各个节点需单独启动
zkServer.sh start zookeeper启动
kafka-server-start.sh server.properties & 打印日志启动
kafka-server-start.sh -daemon server.properties & 不打印日志启动
两种启动kafka区别就是:是否打印日志
输入jps查看kafka是否启动成功,并测试
随意一个节点
kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test 创建一个topic,名为test
kafka-topics.sh --list -zookeeper localhost:2181 展示所有topic,存在test,则配置环境成功
关于topic
创建topic:kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
列出topic:kafka-topics.sh --list -zookeeper localhost:2181
以生产身份对topic进行广播:kafka-console-producer.sh --broker-list localhost:9092 --topic test
集群其他节点以顾客身份进行访问:kafka-console-consumer.sh --zookeeper localhost:2181 --from-beginning --topic test