zoukankan      html  css  js  c++  java
  • Kafka 集群部署

    • 环境准备

    hadoop102                    hadoop103                hadoop104
    zk                            zk                        zk
    kafka                        kafka                    kafka
    • jar包下载

    http://kafka.apache.org/downloads.html

    •  Kafka集群部署

    • 解压安装包
    [atguigu@hadoop102 software]$ tar -zxvf kafka_2.11-0.11.0.0.tgz -C /opt/module/
    • 修改解压后的文件名称
    [atguigu@hadoop102 module]$ mv kafka_2.11-0.11.0.0/ kafka
    • 在/opt/module/kafka目录下创建logs文件夹
    [atguigu@hadoop102 kafka]$ mkdir logs
    • 修改配置文件
    [atguigu@hadoop102 kafka]$ cd config/
    [atguigu@hadoop102 config]$ vi server.properties
    #broker的全局唯一编号,不能重复
    broker.id=0
    #删除topic功能使能
    delete.topic.enable=true
    #处理网络请求的线程数量
    num.network.threads=3
    #用来处理磁盘IO的现成数量
    num.io.threads=8
    #发送套接字的缓冲区大小
    socket.send.buffer.bytes=102400
    #接收套接字的缓冲区大小
    socket.receive.buffer.bytes=102400
    #请求套接字的缓冲区大小
    socket.request.max.bytes=104857600
    #kafka运行日志存放的路径    
    log.dirs=/opt/module/kafka/logs
    #topic在当前broker上的分区个数
    num.partitions=1
    #用来恢复和清理data下数据的线程数量
    num.recovery.threads.per.data.dir=1
    #segment文件保留的最长时间,超时将被删除
    log.retention.hours=168
    #配置连接Zookeeper集群地址
    zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181
    • 配置环境变量
    [atguigu@hadoop102 module]$ sudo vi /etc/profile
    
    #KAFKA_HOME
    export KAFKA_HOME=/opt/module/kafka
    export PATH=$PATH:$KAFKA_HOME/bin
    
    [atguigu@hadoop102 module]$ source /etc/profile

    分别在hadoop103和hadoop104上修改配置文件/opt/module/kafka/config/server.properties中的  broker.id=1、broker.id=2

           注:broker.id不得重复

    启动集群

    依次在hadoop102、hadoop103、hadoop104节点上启动kafka

    [atguigu@hadoop102 kafka]$ bin/kafka-server-start.sh config/server.properties &
    [atguigu@hadoop103 kafka]$ bin/kafka-server-start.sh config/server.properties &
    [atguigu@hadoop104 kafka]$ bin/kafka-server-start.sh config/server.properties &

    关闭集群

    [atguigu@hadoop102 kafka]$ bin/kafka-server-stop.sh stop
    [atguigu@hadoop103 kafka]$ bin/kafka-server-stop.sh stop
    [atguigu@hadoop104 kafka]$ bin/kafka-server-stop.sh stop

    Kafka命令行操作

    查看当前服务器中的所有topic

    [atguigu@hadoop102 kafka]$ bin/kafka-topics.sh --zookeeper hadoop102:2181 --list

    创建topic

    [atguigu@hadoop102 kafka]$ bin/kafka-topics.sh --zookeeper hadoop102:2181 --create --replication-factor 3 --partitions 1 --topic first

    选项说明:

    --topic 定义topic名

    --replication-factor  定义副本数

    --partitions  定义分区数

    删除topic

    [atguigu@hadoop102 kafka]$ bin/kafka-topics.sh --zookeeper hadoop102:2181 --delete --topic first

    需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。

    发送消息

    [atguigu@hadoop102 kafka]$ bin/kafka-console-producer.sh --broker-list hadoop102:9092 --topic first
    >hello world
    >atguigu  atguigu

    消费消息

    [atguigu@hadoop103 kafka]$ bin/kafka-console-consumer.sh --zookeeper hadoop102:2181 --from-beginning --topic first

    --from-beginning:会把first主题中以往所有的数据都读取出来。根据业务场景选择是否增加该配置。

    查看某个Topic的详情

    [atguigu@hadoop102 kafka]$ bin/kafka-topics.sh --zookeeper hadoop102:2181 --describe --topic first

     https://www.cnblogs.com/bmxm/p/14627182.html

    故乡明
  • 相关阅读:
    C# CSV文件读写
    C# 串口通信
    VS项目平台的x86,x64,Any CPU区分
    TcpClient 简单通讯示例
    大龄屌丝自学笔记Java零基础到菜鸟015
    大龄屌丝自学笔记Java零基础到菜鸟011
    大龄屌丝自学笔记Java零基础到菜鸟018
    大龄屌丝自学笔记Java零基础到菜鸟019
    大龄屌丝自学笔记Java零基础到菜鸟017
    大龄屌丝自学笔记Java零基础到菜鸟013
  • 原文地址:https://www.cnblogs.com/luweiweicode/p/14788852.html
Copyright © 2011-2022 走看看