kafka安装

5一. 安装zookeeper

docker run -d --name zookeeper -p 3181:3181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper
/etc/localtime:/etc/localtime:使容器与宿主机时间能够同步

查看es容器内部ip
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' zookeeper

测试zookeeper  

docker exec -it zookeeper bash
./bin/zkCli.sh
#查看节点 ls /
create /test 
#创建test节点 ;返回cteated /test表示成功
delete /test 删除节点
#查看节点下的节点
ls /kafka/brokers/topics

二 安装kafka

1.安装kafka

docker run -d --name kafka1 -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=47.97.2.36:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://47.97.2.36:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime wurstmeister/kafka
KAFKA_BROKER_ID:当前Kafka的唯一ID
KAFKA_ZOOKEEPER_CONNECT:当前Kafka使用的Zookeeper配置信息
KAFKA_ADVERTISED_LISTENERS:对外发布(暴露)的监听器,对外发布监听端口、地址,宿主机地址eg:192.168.85.xxx
KAFKA_LISTENERS:监听器,告诉外部连接者要通过什么协议访问指定主机名和端口开放的 Kafka 服务。

2 IP更改: 

IP更改:

外部程序如果想链接Kafka,需要根据IP链接,所以我们可以给Kafka一个IP名字,编辑:/opt/kafka_2.12-2.4.1/config/server.properties,在文件最末尾添加如下代码:

host.name=192.168.211.137
# 不用加 ,加了启动不起来

4.队列创建

docker exec -it kafka /bin/sh

cd /opt/kafka_2.12-2.4.1/bin

./kafka-topics.sh --create --zookeeper 172.17.0.3:2181/kafka --replication-factor 1 --partitions 1 --topic itemaccess
解释:使用kafka-topics.sh创建队列
        --create:执行创建一个新的队列操作
        --bootstrap-server:需要链接的kafka配置,必填。改为--zookeeper 172.17.0.3:2181/kafka
        --replication-factor 1:设置分区的副本数量
        --topic itemaccess:队列的名字叫itemaccess

 5 消息发布

./kafka-console-producer.sh --broker-list localhost:9092 --topic itemaccess
解释:使用kafka-console-producer.sh实现向kafka的test队列发送消息
        --broker-list:指定将消息发给指定的Kafka服务的链接列表配置  HOST1:Port1,HOST2:Port2
        --topic itemaccess:指定要发送消息的队列名字

我们发送的消息如下(输入信息,回车即可发送):

{"actime":"2020-4-10 9:50:10","uri":"http://www-seckill.itheima.net/items/333.html","IP":"119.123.33.231","Token":"Bearer itcast"}

 6 消息订阅,打开一个窗口

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic itemaccess --from-beginning
解释:使用kafka-console-consumer.sh从kafka中消费test队列的数据
        --bootstrap-server:从指定的kafka中读取消息
        --topic itemaccess:读取队列的名字
        --from-beginning:从最开始的数据读取,也就是读取所有数据的意思

 7 查看已经存在的主题:

./kafka-topics.sh --zookeeper 172.17.0.3:2181/kafka --list

删除主题 

./kafka-topics.sh --zookeeper localhost:2181 --delete --topic itemaccess

 8 查看主题信息:

/kafka-topics.sh --zookeeper localhost:2181 --describe --topic itemaccess
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值