zoukankan      html  css  js  c++  java
  • kafka能做什么?kafka集群配置 (卡夫卡 大数据)

    什么是Kafka

    官网介绍:

    ApacheKafka®是一个分布式流媒体平台。这到底是什么意思呢?

    我们认为流媒体平台具有三个关键功能:

    1. 它可以让你发布和订阅记录流。在这方面,它类似于消​​息队列或企业消息传递系统。
    2. 它允许您以容错方式存储记录流。
    3. 它可以让您在发生记录时处理记录流。

    几个概念:

    1. Kafka作为一个或多个服务器上的集群运行。
    2. Kafka集群以称为主题的类别存储记录流。
    3. 每个记录由一个键,一个值和一个时间戳组成。

    详细介绍 :

    这篇博客写的很详细

    • 下载安装
      官网下载地址: https://www.apache.org/dyn/closer.cgi?path=/kafka/2.5.0/kafka-2.5.0-src.tgz
    • 解压:tar zxf kafka_2.11-1.0.0
    • 启动Zookeeper:测试可以采用kafka自带zookeeper
    	./bin/zookeeper-server-start.sh config/zookeeper.properties 
    
    • 启动kafka:
      ./bin/kafka-server-start.sh config/server.properties

    在默认的 kafka_2.11-1.0.0/config 目录下的server.properties文件中
    默认端口为9092

    操作kafka:

    • 创建名为test的topic
    ./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
    
    • 创建生产者(生产消息):
    ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
    

    • 创建消费者(消费消息):
    ./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
    

    kafka集群

    • 创建配置文件 server.properties拷贝到其他机器

    • 修改server.properties配置,修改为:

        broker.id=1
        listeners=PLAINTEXT://:9093
        log.dir=/tmp/kafka-logs-1
    

    broker.id:当前机器在集群中的唯一标识,每台服务器的broker.id都不能相同

    log.dirs:是kafka接收消息存放路径

    • 启动
    ./bin/kafka-server-start.sh config/server.properties & 
    
    • 创建topic
    ./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic test2
    
    • 查看topic
    ./bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test2
    
    Topic:test2	PartitionCount:1	ReplicationFactor:3	Configs:
    	Topic: zhh-replicated-topic	Partition: 0	Leader: 2	Replicas: 2,0,1	Isr: 2,0,1
    

    第一行表示汇总信息. 有1个分区, 3份备份

    第二行表示每个分区的信息,对分区0,领导节点id是2, 备份到2,0,1.

    leader 表示负责某分区全部读写的节点. 每个分区都会有随机选择的leader.

    Replicas 表示需要复制到的节点, 不管是否活着.

    Isr 表示(“in-sync” replicas), 正在同步的备份, 表示可用的活着的节点

    消息测试

    • 创建生产者
    ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test2
    
    • 创建消费者
    ./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test2 --from-beginning
    

    问题检测

    • 节点崩溃
    ps aux | grep server.properties    #查看节点(73370)是否已启用
    kill -9 73370					   #杀死此节点
    
    • zookeeper
      zookeeper打开后要打开新的连接操作kafka。

    有帮助请留言...

    更多文章:点击这里

    扫码关注公众号《ipoo》
    ipoo

  • 相关阅读:
    jQuery 之 serialize() serializeArray()
    浅析JavaScript中Function对象(二) 之 详解call&apply
    详解JavaScript作用域及作用域链
    浅析JavaScript中Function对象(一)之 arguments对象
    浅析jQuery基本结构($实现原理)
    浅析伪数组
    jQuery版本差异简要分析
    白话解释:控制反转与依赖注入
    为什么开发移动端web不使用jQuery
    浅析meta标签用处
  • 原文地址:https://www.cnblogs.com/ipoo/p/ipoo.html
Copyright © 2011-2022 走看看