zoukankan      html  css  js  c++  java
  • kafka的安装到简单使用

    一.JDK和zookeeper的安装

    首先我们要知道:kafka依赖于zookeeper而zookeeper又依赖于jdk

    1.1.jdk的安装参考这里安装:https://www.cnblogs.com/KdeS/p/11526907.html
    1.2.zookeeper 的安装
    1.2.1.下载 zookeeper-3.4.12.tar.gz
    命令:wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz
    1.2.3 .解压:tar - zxvf zookeeper-3.4.12.tar.gz
    命令:tar - zxvf zookeeper-3.4.12.tar.gz  -C /home/zk/ zookeeper- 3.4.12
    1.2.4 .加入系统环境变量
    命令: vi ~/.bash_profile

    命令:source ~/.bash_profile

    1.2.5.把配置文件改名
    命令:cp zoo_sample.cfg zoo.cfg
    1.2.6.指定zookeeper的日志文件路径,指定的文件路径没有则需要自己创建
    命令:vi zoo.cfg

    日志路径:dataDir=/home/zk/tmp

    默认端口:clientPort=2181

    1.2.7.启动zookeeper,查看进程是否启动
    命令:bin/zkServer.sh start

    命令:jps -m

     

    二.zookeeper安装好的基础上我们接着安装kafka

    2.1.打开官方文档:kafka.apache.org
    2.2.进入下载

    2.3.找到需要下载的本版,这里就下载2.10-0.10.2.1

    2.4.新窗口中打开得到下载地址
    命令:wget https://archive.apache.org/dist/kafka/0.9.0.0/kafka_2.10-0.10.2.1.tgz
    2.5 解压
    命令: tar -zxvf kafka_2.10-0.10.2.1.tgz -C /app/
    2.6.加入系统环境变量
    命令: vi ~/.bash_profile
    export KAFKA_HOME=/app/kafka_2.10-0.10.2.1
    
    export PATH=PATH

    命令:source ~/.bash_profile

    2.7.进入config目录打开配置文件
    命令:vi server.properties
    broker.id=0 唯一的,kafka比喻成一个篮子,这个id就指篮子的id,不可重复的
    
    advertised.listeners=PLAINTEXT://192.168.95.4:9092 表示非kafka集群内的机器访问kafka 需要配置的ip加端口
    
    delete.topic.enable=true 是否启用主题删除,默认false
    
    log.dirs=/app/tmp/kafka-logs 以逗号分隔的存储日志文件的目录列表,需要自己指定,否则重启就清空了
    
    num.partitions=1 分区默认是1
    
    log.segment.bytes=1073741824 日志文件的大小达到此值时,将创建一个新的日志文件
    
    zookeeper.connect=localhost:2181 配置zk所在的主机加端口,因为在同一台,所以就localhost

    三.单节点单broker

    3.1 启动kafka
    命令:bin/kafka-server-start.sh config/server.properties
    后台方式启动:bin/kafka-server-start.sh -daemon config/server.properties

     3.2 创建 topic:指定zookeeeper ,一个分区一个副本系数

    命令:bin/kafka-topics.sh --create --zookeeper 192.168.95.4:2181 --replication-factor 1 --partitions 1 --topic test

     3.3查看所有主题

    命令:bin/kafka-topics.sh --list --zookeeper 127.0.0.1:2181

     3.4 启动生产者,发送消息:指定broker

    命令:bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic hello_topic

    3.5 启动消费者消费消息:指定zookeeper
    命令:bin/kafka-console-consumer.sh --zookeeper 127.0.0.1:2181 --topic hello_topic --from-beginning
    -from-beginning :从头开始消费

    3.6 查看所有topic的信息
    命令:bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181

    3.6 查看单个topic的信息(比如之前遇到过kafka重新启动之后,选举不出Leader导致生产者每次发送消息就报错,leader的值是-1)
    命令:bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topic hello_topic

    四.单节点多broker(一台机器配置多个broker)

    4.1 布置3个broker,命令如下:

    cp server.properties server-1.propertiesls

    cp server.properties server-2.propertiesls

    cp server.properties server-3.propertiesls

    4.2 配置server-1.propertiesls,server-2.propertiesls,server-3.propertiesls
    4.2.1 vi server-1.propertiesls

    broker.id=1

    advertised.listeners=PLAINTEXT://192.168.95.4:9093

    log.dirs=/app/tmp/kafka-logs-1

    4.2.2 vi server-1.propertiesls

    broker.id=2

    advertised.listeners=PLAINTEXT://192.168.95.4:9094

    log.dirs=/app/tmp/kafka-logs-2

    4.2.3 vi server-1.propertiesls

    broker.id=3

    advertised.listeners=PLAINTEXT://192.168.95.4:9095

    log.dirs=/app/tmp/kafka-logs-3

    4.3 启动kafka(后台启动)

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

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

    bin/kafka-server-start.sh -daemon config/server-3.properties &

    4.4 创建主题topic

    kafka-topics.sh --create --zookeeper 127.0.0.1: 2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic

    4.5.查看主题信息

    bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topic my-replicated-topic

     

    4.6 发送消息

    bin/kafka-console-producer.sh --broker-list 127.0.0.1:9093,127.0.0.1:9094,127.0.0.1:9095 --topic my-replicated-topic

    bin/kafka-console-producer.sh --broker-list test:9093 --topic my-replicated-topic

    4.7 消费消息

    bin/kafka-console-consumer.sh --zookeeper 127.0.0.1:2181 --topic my-replicated-topic --from-beginning

  • 相关阅读:
    学习BoolanC++笔记_03(C++面向对象高级编程(上)第三周)
    学习Lua笔记_02(第二章 类型与值)
    学习Lua笔记_01(第一章 开始)
    学习Lua笔记_00(预备)
    学习BoolanC++笔记_02(C++面向对象高级编程(上)第二周)
    web基础(上篇)
    使用Hexo搭建自己的博客网站
    JDK17安装
    安装并配置nodejs
    Linux 常用命令
  • 原文地址:https://www.cnblogs.com/KdeS/p/11936648.html
Copyright © 2011-2022 走看看