kafka

    xiaoxiao2022-07-05  204

    kafka是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统

     

    一、下载&安装&配置&启动:

    1、下载:

    https://kafka.apache.org/downloads

    注意:Kafka的版需要与对应的java版本适配,比如本人下载的kafka_2.11-2.2.0.tgz,这个kafka需要依赖Java8

     

    2、安装

    tar -zxvf kafka_2.11-2.2.0.tgz

     

    3、配置

    cd kafka_2.11-2.2.0

    mkdir kafka-*-logs   # 后面需要配置对config/server-*.properties中,注意:其中的meta.properties文件,每一个broker都需要对应一个上述的logs

    cd config

    cp server.properties server-1.properties

    cp server.properties server-2.properties 

    vi server-1.properties:  # 修改对应的broker、port、logs、zookeeper

    broker.id=1 listeners=PLAINTEXT://:19093 zookeeper.connect=ip:12181,ip:12182,ip:12183 log.dirs=/home/work/huangshouxi/hsx/elk/install/kafka_2.11-2.2.0/kafka-1-logs # 其他配置不用修改

    同样:server-2.properties 也要做对应的修改

    broker.id=2 listeners=PLAINTEXT://:19094 zookeeper.connect=ip:12181,ip:12182,ip:12183 log.dirs=/home/work/huangshouxi/hsx/elk/install/kafka_2.11-2.2.0/kafka-2-logs # 其他配置不用修改

    上述一个kafka集群(伪集群)就搭建好了,其实应该搭建在不同的机器上,同时最少由3台机器组成

     

    4、启动&停止:

    启动:

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

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

    停止:

    ./bin/kafka-server-stop.sh ./config/server-1.properties &

    ./bin/kafka-server-stop.sh ./config/server-2.properties &

    注意:停止也可可以直接kill掉进程

     

    二、运行

    1、创建一个topic,备份设置为2

    ./bin/kafka-topics.sh --create --zookeeper ip:12181 --replication-factor 2 --partitions 1 --topic my-replicated-topic Created topic my-replicated-topic.

    注意:上述只有两个broker组成的kafka集群,备份时不能超过2个。

    2、查看所有的topic

    ./bin/kafka-topics.sh --zookeeper ip:12181 --list __consumer_offsets my-replicated-topic test

    3、删除某个topic

    ./bin/kafka-topics.sh -delete -zookeeper ip:12181 -topic my-replicated-topic Topic my-replicated-topic is marked for deletion. Note: This will have no impact if delete.topic.enable is not set to true. ./bin/kafka-topics.sh --zookeeper ip:12181 --list __consumer_offsets test

    4、发送消息

    ./bin/kafka-console-producer.sh --broker-list ip:19093 --topic my-replicated-topic >test >Hello >World

    5、消费消息

    ./bin/kafka-console-consumer.sh --bootstrap-server ip:19093 --topic my-replicated-topic --from-beginning

    6、查看集群在做什么

    bin/kafka-topics.sh --describe --zookeeper ip:12181 --topic my-replicated-topic

     

    最新回复(0)